@nielspeter/eess-ts 0.6.0 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/builders/class-rule-builder.d.ts +0 -7
- package/dist/builders/class-rule-builder.d.ts.map +1 -1
- package/dist/builders/class-rule-builder.js +27 -1
- package/dist/builders/class-rule-builder.js.map +1 -1
- package/dist/conditions/body-analysis-module.d.ts.map +1 -1
- package/dist/conditions/body-analysis-module.js +37 -4
- package/dist/conditions/body-analysis-module.js.map +1 -1
- package/dist/conditions/call.d.ts +4 -3
- package/dist/conditions/call.d.ts.map +1 -1
- package/dist/conditions/call.js +40 -17
- package/dist/conditions/call.js.map +1 -1
- package/dist/core/object-literal-functions.d.ts +4 -1
- package/dist/core/object-literal-functions.d.ts.map +1 -1
- package/dist/core/object-literal-functions.js +27 -5
- package/dist/core/object-literal-functions.js.map +1 -1
- package/dist/core/through-wrappers.d.ts +24 -0
- package/dist/core/through-wrappers.d.ts.map +1 -0
- package/dist/core/through-wrappers.js +36 -0
- package/dist/core/through-wrappers.js.map +1 -0
- package/dist/core/vacuity-diagnosis.d.ts.map +1 -1
- package/dist/core/vacuity-diagnosis.js +11 -3
- package/dist/core/vacuity-diagnosis.js.map +1 -1
- package/dist/helpers/body-traversal.d.ts +14 -14
- package/dist/helpers/body-traversal.d.ts.map +1 -1
- package/dist/helpers/body-traversal.js +111 -35
- package/dist/helpers/body-traversal.js.map +1 -1
- package/dist/helpers/callback-extractor.d.ts +6 -1
- package/dist/helpers/callback-extractor.d.ts.map +1 -1
- package/dist/helpers/callback-extractor.js +45 -10
- package/dist/helpers/callback-extractor.js.map +1 -1
- package/dist/helpers/global-binding.d.ts +11 -0
- package/dist/helpers/global-binding.d.ts.map +1 -0
- package/dist/helpers/global-binding.js +232 -0
- package/dist/helpers/global-binding.js.map +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/models/arch-function.d.ts +2 -2
- package/dist/models/arch-function.d.ts.map +1 -1
- package/dist/models/arch-function.js +138 -41
- package/dist/models/arch-function.js.map +1 -1
- package/dist/presets/recommended.d.ts +14 -6
- package/dist/presets/recommended.d.ts.map +1 -1
- package/dist/presets/recommended.js +30 -11
- package/dist/presets/recommended.js.map +1 -1
- package/dist/rules/errors.d.ts.map +1 -1
- package/dist/rules/errors.js +27 -8
- package/dist/rules/errors.js.map +1 -1
- package/dist/rules/security.d.ts +6 -0
- package/dist/rules/security.d.ts.map +1 -1
- package/dist/rules/security.js +59 -5
- package/dist/rules/security.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"arch-function.js","sourceRoot":"","sources":["../../src/models/arch-function.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"arch-function.js","sourceRoot":"","sources":["../../src/models/arch-function.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@ import type { CollectResult } from '@nielspeter/eess';
|
|
|
2
2
|
import type { ArchProject } from '../core/project.js';
|
|
3
3
|
import type { Condition } from '@nielspeter/eess';
|
|
4
4
|
import type { ArchFunction } from '../models/arch-function.js';
|
|
5
|
+
import type { SourceFile } from 'ts-morph';
|
|
5
6
|
import type { RuleBuilderLike } from '@nielspeter/eess';
|
|
6
7
|
import type { PresetBaseOptions } from './shared.js';
|
|
7
8
|
export interface RecommendedOptions extends PresetBaseOptions<RecommendedRuleId> {
|
|
@@ -23,7 +24,8 @@ export interface RecommendedOptions extends PresetBaseOptions<RecommendedRuleId>
|
|
|
23
24
|
* needs updating.
|
|
24
25
|
*/
|
|
25
26
|
declare const SPECS: readonly [{
|
|
26
|
-
readonly condition: Condition<
|
|
27
|
+
readonly condition: Condition<SourceFile>;
|
|
28
|
+
readonly subject: "module";
|
|
27
29
|
readonly meta: {
|
|
28
30
|
readonly id: "preset/recommended/no-eval";
|
|
29
31
|
readonly because: "eval() executes arbitrary code — a code-injection risk";
|
|
@@ -32,7 +34,8 @@ declare const SPECS: readonly [{
|
|
|
32
34
|
};
|
|
33
35
|
readonly default: "error";
|
|
34
36
|
}, {
|
|
35
|
-
readonly condition: Condition<
|
|
37
|
+
readonly condition: Condition<SourceFile>;
|
|
38
|
+
readonly subject: "module";
|
|
36
39
|
readonly meta: {
|
|
37
40
|
readonly id: "preset/recommended/no-function-constructor";
|
|
38
41
|
readonly because: "the Function constructor is eval() in disguise";
|
|
@@ -41,7 +44,8 @@ declare const SPECS: readonly [{
|
|
|
41
44
|
};
|
|
42
45
|
readonly default: "error";
|
|
43
46
|
}, {
|
|
44
|
-
readonly condition: Condition<
|
|
47
|
+
readonly condition: Condition<SourceFile>;
|
|
48
|
+
readonly subject: "module";
|
|
45
49
|
readonly meta: {
|
|
46
50
|
readonly id: "preset/recommended/no-silent-catch";
|
|
47
51
|
readonly because: "a silent catch hides failures";
|
|
@@ -51,6 +55,7 @@ declare const SPECS: readonly [{
|
|
|
51
55
|
readonly default: "warn";
|
|
52
56
|
}, {
|
|
53
57
|
readonly condition: Condition<ArchFunction>;
|
|
58
|
+
readonly subject: "function";
|
|
54
59
|
readonly meta: {
|
|
55
60
|
readonly id: "preset/recommended/no-empty-bodies";
|
|
56
61
|
readonly because: "an empty function body is usually an unfinished stub";
|
|
@@ -80,9 +85,12 @@ type RecommendedRuleId = (typeof SPECS)[number]['meta']['id'];
|
|
|
80
85
|
* glob is dead) is `error` regardless of severity and fails the build: `'warn'`
|
|
81
86
|
* grades violations, not a rule that cannot enforce anything.
|
|
82
87
|
*
|
|
83
|
-
* Overlaps `agentGuardrails` on empty bodies and `eval
|
|
84
|
-
*
|
|
85
|
-
* `'
|
|
88
|
+
* Overlaps `agentGuardrails` on empty bodies and `eval`, and the two no longer READ the same code:
|
|
89
|
+
* since bug 0333 this preset's `eval` rule reads the whole file, while `agentGuardrails` still
|
|
90
|
+
* reads function bodies — measured, its `noInlineLogic: ['eval']` reports nothing for a bare
|
|
91
|
+
* top-level `eval` or one in a static block (bug 0337). So "prefer `agentGuardrails` alone", which
|
|
92
|
+
* this comment used to advise, now means less coverage; run both and override a duplicated id to
|
|
93
|
+
* `'off'` in one of them if the doubled finding is noise.
|
|
86
94
|
*/
|
|
87
95
|
/**
|
|
88
96
|
* `report` names a delivery mode; omitting it returns the un-executed builders.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recommended.d.ts","sourceRoot":"","sources":["../../src/presets/recommended.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAErD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;
|
|
1
|
+
{"version":3,"file":"recommended.d.ts","sourceRoot":"","sources":["../../src/presets/recommended.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAErD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAQ1C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAUpD,MAAM,WAAW,kBAAmB,SAAQ,iBAAiB,CAAC,iBAAiB,CAAC;IAC9E;;;;;;;;;OASG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AA0BD;;;;GAIG;AACH,QAAA,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6C6B,CAAA;AAwBxC;;;;;GAKG;AACH,KAAK,iBAAiB,GAAG,CAAC,OAAO,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAA;AAI7D;;;;;;;;;;;;;;;;;;;;GAoBG;AACH;;;;;;;;;;;GAWG;AACH,wBAAgB,WAAW,CACzB,CAAC,EAAE,WAAW,EACd,OAAO,EAAE,kBAAkB,GAAG;IAAE,MAAM,EAAE,UAAU,CAAA;CAAE,GACnD,eAAe,EAAE,CAAA;AACpB,wBAAgB,WAAW,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,aAAa,CAAA"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { functions } from '../builders/function-rule-builder.js';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { modules } from '../builders/module-rule-builder.js';
|
|
3
|
+
import { moduleNoEval, moduleNoFunctionConstructor } from '../rules/security.js';
|
|
4
|
+
import { moduleNoSilentCatch } from '../rules/errors.js';
|
|
4
5
|
import { noEmptyBodies } from '../rules/hygiene.js';
|
|
5
6
|
import { overrideFindings, validateOverrides, declareEmptyIfListed, presetDeclarationSpelling, declaredEmptyFindings, deliver, } from './shared.js';
|
|
6
7
|
/**
|
|
@@ -10,7 +11,8 @@ import { overrideFindings, validateOverrides, declareEmptyIfListed, presetDeclar
|
|
|
10
11
|
*/
|
|
11
12
|
const SPECS = [
|
|
12
13
|
{
|
|
13
|
-
condition:
|
|
14
|
+
condition: moduleNoEval(),
|
|
15
|
+
subject: 'module',
|
|
14
16
|
meta: {
|
|
15
17
|
id: 'preset/recommended/no-eval',
|
|
16
18
|
because: 'eval() executes arbitrary code — a code-injection risk',
|
|
@@ -20,7 +22,8 @@ const SPECS = [
|
|
|
20
22
|
default: 'error',
|
|
21
23
|
},
|
|
22
24
|
{
|
|
23
|
-
condition:
|
|
25
|
+
condition: moduleNoFunctionConstructor(),
|
|
26
|
+
subject: 'module',
|
|
24
27
|
meta: {
|
|
25
28
|
id: 'preset/recommended/no-function-constructor',
|
|
26
29
|
because: 'the Function constructor is eval() in disguise',
|
|
@@ -30,7 +33,8 @@ const SPECS = [
|
|
|
30
33
|
default: 'error',
|
|
31
34
|
},
|
|
32
35
|
{
|
|
33
|
-
condition:
|
|
36
|
+
condition: moduleNoSilentCatch(),
|
|
37
|
+
subject: 'module',
|
|
34
38
|
meta: {
|
|
35
39
|
id: 'preset/recommended/no-silent-catch',
|
|
36
40
|
because: 'a silent catch hides failures',
|
|
@@ -41,6 +45,7 @@ const SPECS = [
|
|
|
41
45
|
},
|
|
42
46
|
{
|
|
43
47
|
condition: noEmptyBodies(),
|
|
48
|
+
subject: 'function',
|
|
44
49
|
meta: {
|
|
45
50
|
id: 'preset/recommended/no-empty-bodies',
|
|
46
51
|
because: 'an empty function body is usually an unfinished stub',
|
|
@@ -50,6 +55,23 @@ const SPECS = [
|
|
|
50
55
|
default: 'warn',
|
|
51
56
|
},
|
|
52
57
|
];
|
|
58
|
+
/**
|
|
59
|
+
* The builder a spec reads its subject with (bug 0333), selected and narrowed in one place so the
|
|
60
|
+
* loop below cannot pair a condition with the wrong one.
|
|
61
|
+
*
|
|
62
|
+
* `satisfy` is called on the concrete builder while its element type is still known — a single
|
|
63
|
+
* `satisfy` after the branch would need the union, which no condition accepts.
|
|
64
|
+
*/
|
|
65
|
+
function builderFor(p, spec, include) {
|
|
66
|
+
if (spec.subject === 'module') {
|
|
67
|
+
return modules(p).that().resideInFile(include).should().satisfy(spec.condition);
|
|
68
|
+
}
|
|
69
|
+
return functions(p, { includeObjectLiteralFunctions: true })
|
|
70
|
+
.that()
|
|
71
|
+
.resideInFile(include)
|
|
72
|
+
.should()
|
|
73
|
+
.satisfy(spec.condition);
|
|
74
|
+
}
|
|
53
75
|
const RULE_IDS = SPECS.map((s) => s.meta.id);
|
|
54
76
|
export function recommended(p, options = {}) {
|
|
55
77
|
const include = options.include ?? '**/src/**';
|
|
@@ -57,7 +79,8 @@ export function recommended(p, options = {}) {
|
|
|
57
79
|
const overrideProblems = overrideFindings(options.overrides, RULE_IDS);
|
|
58
80
|
const builders = [];
|
|
59
81
|
const constructed = [];
|
|
60
|
-
for (const
|
|
82
|
+
for (const spec of SPECS) {
|
|
83
|
+
const { meta, default: def } = spec;
|
|
61
84
|
const sev = options.overrides?.[meta.id] ?? def;
|
|
62
85
|
if (sev === 'off')
|
|
63
86
|
continue;
|
|
@@ -65,11 +88,7 @@ export function recommended(p, options = {}) {
|
|
|
65
88
|
builders.push(
|
|
66
89
|
// Plan 0089's carrier. Applied at construction so it reaches every rule
|
|
67
90
|
// this preset builds, not only the ones routed through `collectRule`.
|
|
68
|
-
declareEmptyIfListed(
|
|
69
|
-
.that()
|
|
70
|
-
.resideInFile(include)
|
|
71
|
-
.should()
|
|
72
|
-
.satisfy(condition)
|
|
91
|
+
declareEmptyIfListed(builderFor(p, spec, include)
|
|
73
92
|
.rule({ ...meta, declarationSpelling: presetDeclarationSpelling(meta.id) })
|
|
74
93
|
.asSeverity(sev), meta.id, options));
|
|
75
94
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recommended.js","sourceRoot":"","sources":["../../src/presets/recommended.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"recommended.js","sourceRoot":"","sources":["../../src/presets/recommended.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/rules/errors.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAC5D,OAAO,KAAK,EAAE,SAAS,EAAoB,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/rules/errors.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAC5D,OAAO,KAAK,EAAE,SAAS,EAAoB,MAAM,kBAAkB,CAAA;AAInE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AAO9D;;;;;;;;GAQG;AACH,wBAAgB,eAAe,IAAI,SAAS,CAAC,gBAAgB,CAAC,CAE7D;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,SAAS,CAAC,gBAAgB,CAAC,CAE1D;AAID,wBAAgB,uBAAuB,IAAI,SAAS,CAAC,YAAY,CAAC,CAEjE;AAED,wBAAgB,oBAAoB,IAAI,SAAS,CAAC,YAAY,CAAC,CAE9D;AAWD;;;;;;;;;GASG;AACH,wBAAgB,aAAa,IAAI,SAAS,CAAC,gBAAgB,CAAC,CAe3D;AAED,wBAAgB,qBAAqB,IAAI,SAAS,CAAC,YAAY,CAAC,CAmB/D;AAED,wBAAgB,mBAAmB,IAAI,SAAS,CAAC,UAAU,CAAC,CAgC3D"}
|
package/dist/rules/errors.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { Node, SyntaxKind } from 'ts-morph';
|
|
2
|
-
import { createViolation } from '../core/violation.js';
|
|
2
|
+
import { createViolation, enclosingScopeName } from '../core/violation.js';
|
|
3
|
+
import { identifyMatches } from '../conditions/match-identity.js';
|
|
3
4
|
import { newExpr } from '../helpers/matchers.js';
|
|
4
|
-
import { searchClassBody } from '../helpers/body-traversal.js';
|
|
5
|
+
import { codeOfParameters, searchClassBody } from '../helpers/body-traversal.js';
|
|
5
6
|
import { classNotContain } from '../conditions/body-analysis.js';
|
|
6
7
|
import { functionNotContain } from '../conditions/body-analysis-function.js';
|
|
7
8
|
import { findSilentCatches, silentCatchMessage } from '../conditions/catch-analysis.js';
|
|
@@ -72,10 +73,14 @@ export function functionNoSilentCatch() {
|
|
|
72
73
|
const violations = [];
|
|
73
74
|
for (const fn of elements) {
|
|
74
75
|
const body = fn.getBody();
|
|
75
|
-
if (!body
|
|
76
|
+
if (!body)
|
|
76
77
|
continue;
|
|
77
|
-
|
|
78
|
-
|
|
78
|
+
// The body whatever its kind — a concise arrow's too — then what the parameters run at each
|
|
79
|
+
// call (bug 0314). A catch clause is never the root of either, so walking below it is enough.
|
|
80
|
+
for (const code of [body, ...codeOfParameters(fn.getParameters())]) {
|
|
81
|
+
for (const result of findSilentCatches(code)) {
|
|
82
|
+
violations.push(createViolation(result.node, result.message, context));
|
|
83
|
+
}
|
|
79
84
|
}
|
|
80
85
|
}
|
|
81
86
|
return violations;
|
|
@@ -88,9 +93,23 @@ export function moduleNoSilentCatch() {
|
|
|
88
93
|
evaluate(elements, context) {
|
|
89
94
|
const violations = [];
|
|
90
95
|
for (const sf of elements) {
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
96
|
+
const found = [...findSilentCatches(sf)];
|
|
97
|
+
// Named and identified as the other module conditions do (bug 0333). `createViolation`
|
|
98
|
+
// alone gave every module-scope catch `element = 'CatchClause'` — a KIND name, not a
|
|
99
|
+
// subject — and no producer identity, so a baseline keyed on `element::message` collapsed
|
|
100
|
+
// every top-level silent catch in a project into ONE bucket separated by a positional
|
|
101
|
+
// suffix. Measured on an adopter project by the customer review of this fix: accepting one
|
|
102
|
+
// catch accepted a different catch in a different file, and a delete-plus-add went green.
|
|
103
|
+
// A catch inside a function was never affected — its element is the function's name — which
|
|
104
|
+
// is why this surfaced only when the floor started reading module scope.
|
|
105
|
+
const identities = identifyMatches('module-body', sf.getFilePath(), found.map((result) => result.node), 'silent catch');
|
|
106
|
+
found.forEach((result, index) => {
|
|
107
|
+
violations.push({
|
|
108
|
+
...createViolation(result.node, result.message, context),
|
|
109
|
+
element: enclosingScopeName(result.node) ?? sf.getBaseName(),
|
|
110
|
+
identity: identities[index],
|
|
111
|
+
});
|
|
112
|
+
});
|
|
94
113
|
}
|
|
95
114
|
return violations;
|
|
96
115
|
},
|
package/dist/rules/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/rules/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAI3C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/rules/errors.ts"],"names":[],"mappings":"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"}
|
package/dist/rules/security.d.ts
CHANGED
|
@@ -62,6 +62,12 @@ export declare function functionNoConsoleLog(): Condition<ArchFunction>;
|
|
|
62
62
|
export declare function functionNoConsole(): Condition<ArchFunction>;
|
|
63
63
|
export declare function functionNoJsonParse(): Condition<ArchFunction>;
|
|
64
64
|
export declare function moduleNoEval(): Condition<SourceFile>;
|
|
65
|
+
/**
|
|
66
|
+
* No Function constructor anywhere in a file — the module counterpart of
|
|
67
|
+
* {@link noFunctionConstructor}, added for bug 0333 so the `recommended` floor can read a rule over
|
|
68
|
+
* the broadest subject it has a variant for.
|
|
69
|
+
*/
|
|
70
|
+
export declare function moduleNoFunctionConstructor(): Condition<SourceFile>;
|
|
65
71
|
export declare function moduleNoProcessEnv(): Condition<SourceFile>;
|
|
66
72
|
export declare function moduleNoConsoleLog(): Condition<SourceFile>;
|
|
67
73
|
//# sourceMappingURL=security.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"security.d.ts","sourceRoot":"","sources":["../../src/rules/security.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAC5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;
|
|
1
|
+
{"version":3,"file":"security.d.ts","sourceRoot":"","sources":["../../src/rules/security.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAC5D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AA4K9D;;;;;;;GAOG;AACH,wBAAgB,MAAM,IAAI,SAAS,CAAC,gBAAgB,CAAC,CAEpD;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,IAAI,SAAS,CAAC,gBAAgB,CAAC,CAEnE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,IAAI,SAAS,CAAC,gBAAgB,CAAC,CAE1D;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,IAAI,SAAS,CAAC,gBAAgB,CAAC,CAE1D;AAED;;;;GAIG;AACH,wBAAgB,SAAS,IAAI,SAAS,CAAC,gBAAgB,CAAC,CAEvD;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,SAAS,CAAC,gBAAgB,CAAC,CAEzD;AAID,wBAAgB,cAAc,IAAI,SAAS,CAAC,YAAY,CAAC,CAExD;AAED,wBAAgB,6BAA6B,IAAI,SAAS,CAAC,YAAY,CAAC,CAEvE;AAED,wBAAgB,oBAAoB,IAAI,SAAS,CAAC,YAAY,CAAC,CAE9D;AAED,wBAAgB,oBAAoB,IAAI,SAAS,CAAC,YAAY,CAAC,CAE9D;AAED,wBAAgB,iBAAiB,IAAI,SAAS,CAAC,YAAY,CAAC,CAE3D;AAED,wBAAgB,mBAAmB,IAAI,SAAS,CAAC,YAAY,CAAC,CAE7D;AAID,wBAAgB,YAAY,IAAI,SAAS,CAAC,UAAU,CAAC,CAEpD;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,IAAI,SAAS,CAAC,UAAU,CAAC,CAEnE;AAED,wBAAgB,kBAAkB,IAAI,SAAS,CAAC,UAAU,CAAC,CAE1D;AAED,wBAAgB,kBAAkB,IAAI,SAAS,CAAC,UAAU,CAAC,CAE1D"}
|
package/dist/rules/security.js
CHANGED
|
@@ -3,6 +3,7 @@ import { call } from '../helpers/matchers.js';
|
|
|
3
3
|
import { classNotContain } from '../conditions/body-analysis.js';
|
|
4
4
|
import { functionNotContain } from '../conditions/body-analysis-function.js';
|
|
5
5
|
import { moduleNotContain } from '../conditions/body-analysis-module.js';
|
|
6
|
+
import { globalChainOf } from '../helpers/global-binding.js';
|
|
6
7
|
// ─── Reading a global however its name is spelled (bugs 0301, 0297, 0308) ──────
|
|
7
8
|
//
|
|
8
9
|
// `call('eval')` compared the callee's text, so `globalThis.eval(…)`, `(0, eval)(…)`
|
|
@@ -67,7 +68,9 @@ function chainOf(node) {
|
|
|
67
68
|
* not the global.
|
|
68
69
|
*/
|
|
69
70
|
function globalNameOf(node) {
|
|
70
|
-
|
|
71
|
+
// Through the binding first (bug 0305), then the leading global objects (bug 0308): a name bound
|
|
72
|
+
// to `globalThis.eval` has to lose the `globalThis.` after the binding is followed, not before.
|
|
73
|
+
let chain = globalChainOf(node, chainOf);
|
|
71
74
|
if (chain === undefined)
|
|
72
75
|
return undefined;
|
|
73
76
|
let dot = chain.indexOf('.');
|
|
@@ -104,8 +107,14 @@ function functionConstructor() {
|
|
|
104
107
|
function consoleAccess() {
|
|
105
108
|
return {
|
|
106
109
|
description: 'access matching /^console\\./',
|
|
107
|
-
syntaxKinds: [
|
|
108
|
-
|
|
110
|
+
syntaxKinds: [
|
|
111
|
+
SyntaxKind.PropertyAccessExpression,
|
|
112
|
+
SyntaxKind.ElementAccessExpression,
|
|
113
|
+
// A member destructured out of `console` is reached by a bare NAME — `const { log } =
|
|
114
|
+
// console; log(1)` — so the identifier itself has to be asked (bug 0305).
|
|
115
|
+
SyntaxKind.Identifier,
|
|
116
|
+
],
|
|
117
|
+
matches: (node) => readsAName(node) && globalNameOf(node)?.startsWith('console.') === true,
|
|
109
118
|
};
|
|
110
119
|
}
|
|
111
120
|
/**
|
|
@@ -115,10 +124,47 @@ function consoleAccess() {
|
|
|
115
124
|
function processEnvAccess() {
|
|
116
125
|
return {
|
|
117
126
|
description: "access to 'process.env'",
|
|
118
|
-
syntaxKinds: [
|
|
119
|
-
|
|
127
|
+
syntaxKinds: [
|
|
128
|
+
SyntaxKind.PropertyAccessExpression,
|
|
129
|
+
SyntaxKind.ElementAccessExpression,
|
|
130
|
+
// `const { env } = process; env.B` and `import { env } from 'node:process'` reach the
|
|
131
|
+
// environment through a bare name (bug 0305).
|
|
132
|
+
SyntaxKind.Identifier,
|
|
133
|
+
],
|
|
134
|
+
matches: (node) => readsAName(node) && globalNameOf(node) === 'process.env',
|
|
120
135
|
};
|
|
121
136
|
}
|
|
137
|
+
/**
|
|
138
|
+
* Whether a node reads a name, rather than writing one down (bug 0305).
|
|
139
|
+
*
|
|
140
|
+
* With `Identifier` in a matcher's kinds, every occurrence of a name is a candidate — including the
|
|
141
|
+
* name being DECLARED (`const { log } = console`) and the property part of an access
|
|
142
|
+
* (`console.log`, whose `log` is not the root of its own chain). Reading those would report a
|
|
143
|
+
* finding at the declaration beside the one at the use, and report `console.log` twice.
|
|
144
|
+
*/
|
|
145
|
+
function readsAName(node) {
|
|
146
|
+
if (!Node.isIdentifier(node))
|
|
147
|
+
return true;
|
|
148
|
+
const parent = node.getParent();
|
|
149
|
+
if (parent === undefined)
|
|
150
|
+
return false;
|
|
151
|
+
if (Node.isPropertyAccessExpression(parent))
|
|
152
|
+
return parent.getExpression() === node;
|
|
153
|
+
if (Node.isBindingElement(parent) || Node.isVariableDeclaration(parent)) {
|
|
154
|
+
return parent.getNameNode() !== node;
|
|
155
|
+
}
|
|
156
|
+
if (Node.isImportSpecifier(parent) || Node.isParameterDeclaration(parent))
|
|
157
|
+
return false;
|
|
158
|
+
// A shorthand property's name IS its value — `const o = { console }` reads the global, where
|
|
159
|
+
// `{ console: x }` writes the key and reads `x`. It changes no verdict today, because these
|
|
160
|
+
// matchers read a MEMBER access (`console.log`, `process.env`) and a bare `console` handed on as
|
|
161
|
+
// a value is not one; it is here so the predicate answers its own question truthfully.
|
|
162
|
+
if (Node.isShorthandPropertyAssignment(parent))
|
|
163
|
+
return true;
|
|
164
|
+
if (Node.isPropertyAssignment(parent))
|
|
165
|
+
return parent.getNameNode() !== node;
|
|
166
|
+
return true;
|
|
167
|
+
}
|
|
122
168
|
/**
|
|
123
169
|
* No eval() calls in any code a class runs — `eval(…)`, through a global object
|
|
124
170
|
* (`globalThis`, `window`, `self`, `global`), a string-keyed bracket, or the indirect
|
|
@@ -208,6 +254,14 @@ export function functionNoJsonParse() {
|
|
|
208
254
|
export function moduleNoEval() {
|
|
209
255
|
return moduleNotContain(globalCall('eval'));
|
|
210
256
|
}
|
|
257
|
+
/**
|
|
258
|
+
* No Function constructor anywhere in a file — the module counterpart of
|
|
259
|
+
* {@link noFunctionConstructor}, added for bug 0333 so the `recommended` floor can read a rule over
|
|
260
|
+
* the broadest subject it has a variant for.
|
|
261
|
+
*/
|
|
262
|
+
export function moduleNoFunctionConstructor() {
|
|
263
|
+
return moduleNotContain(functionConstructor());
|
|
264
|
+
}
|
|
211
265
|
export function moduleNoProcessEnv() {
|
|
212
266
|
return moduleNotContain(processEnvAccess());
|
|
213
267
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"security.js","sourceRoot":"","sources":["../../src/rules/security.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AAI3C,OAAO,EAAE,IAAI,EAA0B,MAAM,wBAAwB,CAAA;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAA;AAC5E,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAA;
|
|
1
|
+
{"version":3,"file":"security.js","sourceRoot":"","sources":["../../src/rules/security.ts"],"names":[],"mappings":"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"}
|