Add 9 dangerous extensions and ignore trailing dot
This commit is contained in:
parent
0fee1f9935
commit
4df52c5349
2 changed files with 15 additions and 1 deletions
|
@ -18,6 +18,20 @@ describe('isFileDangerous', () => {
|
||||||
assert.strictEqual(isFileDangerous('install.pif'), true);
|
assert.strictEqual(isFileDangerous('install.pif'), true);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('returns true for Microsoft settings files', () => {
|
||||||
|
assert.strictEqual(isFileDangerous('downl.SettingContent-ms'), true);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('returns false for non-dangerous files that end in ".", which can happen on Windows', () => {
|
||||||
|
assert.strictEqual(isFileDangerous('dog.png.'), false);
|
||||||
|
assert.strictEqual(isFileDangerous('resume.docx.'), false);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('returns true for dangerous files that end in ".", which can happen on Windows', () => {
|
||||||
|
assert.strictEqual(isFileDangerous('run.exe.'), true);
|
||||||
|
assert.strictEqual(isFileDangerous('install.pif.'), true);
|
||||||
|
});
|
||||||
|
|
||||||
it('returns false for empty filename', () => {
|
it('returns false for empty filename', () => {
|
||||||
assert.strictEqual(isFileDangerous(''), false);
|
assert.strictEqual(isFileDangerous(''), false);
|
||||||
});
|
});
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// tslint:disable-next-line max-line-length
|
// tslint:disable-next-line max-line-length
|
||||||
const DANGEROUS_FILE_TYPES = /\.(ADE|ADP|APK|BAT|CHM|CMD|COM|CPL|DLL|DMG|EXE|HTA|INS|ISP|JAR|JS|JSE|LIB|LNK|MDE|MSC|MSI|MSP|MST|NSH|PIF|SCR|SCT|SHB|SYS|VB|VBE|VBS|VXD|WSC|WSF|WSH|CAB)$/i;
|
const DANGEROUS_FILE_TYPES = /\.(ADE|ADP|APK|BAT|CAB|CHM|CMD|COM|CPL|DIAGCAB|DLL|DMG|EXE|HTA|INF|INS|ISP|JAR|JS|JSE|LIB|LNK|MDE|MHT|MSC|MSI|MSP|MST|NSH|PIF|PS1|PSC1|PSM1|PSRC|REG|SCR|SCT|SETTINGCONTENT-MS|SHB|SYS|VB|VBE|VBS|VXD|WSC|WSF|WSH)\.?$/i;
|
||||||
|
|
||||||
export function isFileDangerous(fileName: string): boolean {
|
export function isFileDangerous(fileName: string): boolean {
|
||||||
return DANGEROUS_FILE_TYPES.test(fileName);
|
return DANGEROUS_FILE_TYPES.test(fileName);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue