circle-ir 3.155.0 → 3.156.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/dist/analysis/passes/mybatis-annotation-sql-sink-pass.d.ts +49 -0
- package/dist/analysis/passes/mybatis-annotation-sql-sink-pass.d.ts.map +1 -0
- package/dist/analysis/passes/mybatis-annotation-sql-sink-pass.js +329 -0
- package/dist/analysis/passes/mybatis-annotation-sql-sink-pass.js.map +1 -0
- package/dist/analysis/taint-matcher.d.ts.map +1 -1
- package/dist/analysis/taint-matcher.js +30 -0
- package/dist/analysis/taint-matcher.js.map +1 -1
- package/dist/analyzer.d.ts.map +1 -1
- package/dist/analyzer.js +8 -0
- package/dist/analyzer.js.map +1 -1
- package/dist/browser/circle-ir.js +337 -0
- package/dist/core/circle-ir-core.cjs +3 -0
- package/dist/core/circle-ir-core.js +3 -0
- package/dist/resolution/type-hierarchy.d.ts +15 -0
- package/dist/resolution/type-hierarchy.d.ts.map +1 -1
- package/dist/resolution/type-hierarchy.js +159 -0
- package/dist/resolution/type-hierarchy.js.map +1 -1
- package/package.json +1 -1
|
@@ -14185,8 +14185,11 @@ function matchesSinkPattern(call, pattern, typeHierarchy, language) {
|
|
|
14185
14185
|
if (pattern.class === "constructor") {
|
|
14186
14186
|
return true;
|
|
14187
14187
|
}
|
|
14188
|
+
const subtypeArgArityOk = !pattern.arg_positions || pattern.arg_positions.length === 0 || pattern.arg_positions.every((pos) => pos < (call.arguments?.length ?? 0));
|
|
14188
14189
|
if (call.receiver_type && call.receiver_type === pattern.class) {
|
|
14190
|
+
} else if (call.receiver_type && typeHierarchy && subtypeArgArityOk && typeHierarchy.isSubtypeOf(call.receiver_type, pattern.class)) {
|
|
14189
14191
|
} else if (call.receiver_type_fqn && call.receiver_type_fqn.endsWith("." + pattern.class)) {
|
|
14192
|
+
} else if (call.receiver_type_fqn && typeHierarchy && subtypeArgArityOk && typeHierarchy.isSubtypeOf(call.receiver_type_fqn, pattern.class)) {
|
|
14190
14193
|
} else if (call.receiver && !receiverMightBeClass(call.receiver, pattern.class)) {
|
|
14191
14194
|
if (typeHierarchy && typeHierarchy.couldBeType(call.receiver, pattern.class)) {
|
|
14192
14195
|
return true;
|
|
@@ -15688,8 +15691,150 @@ function createWithJdkTypes() {
|
|
|
15688
15691
|
for (const type of [...jdbcTypes, ...ioTypes, ...servletTypes]) {
|
|
15689
15692
|
resolver.addType(type, "jdk", type.package);
|
|
15690
15693
|
}
|
|
15694
|
+
registerCommonLibraries(resolver);
|
|
15691
15695
|
return resolver;
|
|
15692
15696
|
}
|
|
15697
|
+
function registerCommonLibraries(resolver) {
|
|
15698
|
+
const apacheHttpClient4x = [
|
|
15699
|
+
{
|
|
15700
|
+
name: "HttpClient",
|
|
15701
|
+
kind: "interface",
|
|
15702
|
+
package: "org.apache.http.client",
|
|
15703
|
+
extends: null,
|
|
15704
|
+
implements: [],
|
|
15705
|
+
annotations: [],
|
|
15706
|
+
methods: [],
|
|
15707
|
+
fields: [],
|
|
15708
|
+
start_line: 0,
|
|
15709
|
+
end_line: 0
|
|
15710
|
+
},
|
|
15711
|
+
{
|
|
15712
|
+
name: "AbstractHttpClient",
|
|
15713
|
+
kind: "class",
|
|
15714
|
+
package: "org.apache.http.impl.client",
|
|
15715
|
+
extends: null,
|
|
15716
|
+
implements: ["org.apache.http.client.HttpClient"],
|
|
15717
|
+
annotations: [],
|
|
15718
|
+
methods: [],
|
|
15719
|
+
fields: [],
|
|
15720
|
+
start_line: 0,
|
|
15721
|
+
end_line: 0
|
|
15722
|
+
},
|
|
15723
|
+
{
|
|
15724
|
+
name: "CloseableHttpClient",
|
|
15725
|
+
kind: "class",
|
|
15726
|
+
package: "org.apache.http.impl.client",
|
|
15727
|
+
extends: null,
|
|
15728
|
+
implements: ["org.apache.http.client.HttpClient"],
|
|
15729
|
+
annotations: [],
|
|
15730
|
+
methods: [],
|
|
15731
|
+
fields: [],
|
|
15732
|
+
start_line: 0,
|
|
15733
|
+
end_line: 0
|
|
15734
|
+
},
|
|
15735
|
+
{
|
|
15736
|
+
name: "InternalHttpClient",
|
|
15737
|
+
kind: "class",
|
|
15738
|
+
package: "org.apache.http.impl.client",
|
|
15739
|
+
extends: "org.apache.http.impl.client.CloseableHttpClient",
|
|
15740
|
+
implements: [],
|
|
15741
|
+
annotations: [],
|
|
15742
|
+
methods: [],
|
|
15743
|
+
fields: [],
|
|
15744
|
+
start_line: 0,
|
|
15745
|
+
end_line: 0
|
|
15746
|
+
},
|
|
15747
|
+
{
|
|
15748
|
+
name: "MinimalHttpClient",
|
|
15749
|
+
kind: "class",
|
|
15750
|
+
package: "org.apache.http.impl.client",
|
|
15751
|
+
extends: "org.apache.http.impl.client.CloseableHttpClient",
|
|
15752
|
+
implements: [],
|
|
15753
|
+
annotations: [],
|
|
15754
|
+
methods: [],
|
|
15755
|
+
fields: [],
|
|
15756
|
+
start_line: 0,
|
|
15757
|
+
end_line: 0
|
|
15758
|
+
},
|
|
15759
|
+
{
|
|
15760
|
+
name: "DefaultHttpClient",
|
|
15761
|
+
kind: "class",
|
|
15762
|
+
package: "org.apache.http.impl.client",
|
|
15763
|
+
extends: "org.apache.http.impl.client.AbstractHttpClient",
|
|
15764
|
+
implements: [],
|
|
15765
|
+
annotations: [],
|
|
15766
|
+
methods: [],
|
|
15767
|
+
fields: [],
|
|
15768
|
+
start_line: 0,
|
|
15769
|
+
end_line: 0
|
|
15770
|
+
},
|
|
15771
|
+
{
|
|
15772
|
+
name: "SystemDefaultHttpClient",
|
|
15773
|
+
kind: "class",
|
|
15774
|
+
package: "org.apache.http.impl.client",
|
|
15775
|
+
extends: "org.apache.http.impl.client.DefaultHttpClient",
|
|
15776
|
+
implements: [],
|
|
15777
|
+
annotations: [],
|
|
15778
|
+
methods: [],
|
|
15779
|
+
fields: [],
|
|
15780
|
+
start_line: 0,
|
|
15781
|
+
end_line: 0
|
|
15782
|
+
}
|
|
15783
|
+
];
|
|
15784
|
+
const apacheHttpClient5x = [
|
|
15785
|
+
{
|
|
15786
|
+
name: "HttpClient",
|
|
15787
|
+
kind: "interface",
|
|
15788
|
+
package: "org.apache.hc.client5.http.classic",
|
|
15789
|
+
extends: null,
|
|
15790
|
+
implements: [],
|
|
15791
|
+
annotations: [],
|
|
15792
|
+
methods: [],
|
|
15793
|
+
fields: [],
|
|
15794
|
+
start_line: 0,
|
|
15795
|
+
end_line: 0
|
|
15796
|
+
},
|
|
15797
|
+
{
|
|
15798
|
+
name: "CloseableHttpClient",
|
|
15799
|
+
kind: "class",
|
|
15800
|
+
package: "org.apache.hc.client5.http.impl.classic",
|
|
15801
|
+
extends: null,
|
|
15802
|
+
implements: ["org.apache.hc.client5.http.classic.HttpClient"],
|
|
15803
|
+
annotations: [],
|
|
15804
|
+
methods: [],
|
|
15805
|
+
fields: [],
|
|
15806
|
+
start_line: 0,
|
|
15807
|
+
end_line: 0
|
|
15808
|
+
},
|
|
15809
|
+
{
|
|
15810
|
+
name: "InternalHttpClient",
|
|
15811
|
+
kind: "class",
|
|
15812
|
+
package: "org.apache.hc.client5.http.impl.classic",
|
|
15813
|
+
extends: "org.apache.hc.client5.http.impl.classic.CloseableHttpClient",
|
|
15814
|
+
implements: [],
|
|
15815
|
+
annotations: [],
|
|
15816
|
+
methods: [],
|
|
15817
|
+
fields: [],
|
|
15818
|
+
start_line: 0,
|
|
15819
|
+
end_line: 0
|
|
15820
|
+
},
|
|
15821
|
+
{
|
|
15822
|
+
name: "MinimalHttpClient",
|
|
15823
|
+
kind: "class",
|
|
15824
|
+
package: "org.apache.hc.client5.http.impl.classic",
|
|
15825
|
+
extends: "org.apache.hc.client5.http.impl.classic.CloseableHttpClient",
|
|
15826
|
+
implements: [],
|
|
15827
|
+
annotations: [],
|
|
15828
|
+
methods: [],
|
|
15829
|
+
fields: [],
|
|
15830
|
+
start_line: 0,
|
|
15831
|
+
end_line: 0
|
|
15832
|
+
}
|
|
15833
|
+
];
|
|
15834
|
+
for (const type of [...apacheHttpClient4x, ...apacheHttpClient5x]) {
|
|
15835
|
+
resolver.addType(type, "common-libraries", type.package);
|
|
15836
|
+
}
|
|
15837
|
+
}
|
|
15693
15838
|
|
|
15694
15839
|
// src/graph/dominator-graph.ts
|
|
15695
15840
|
function computeRPO(cfg, entryId) {
|
|
@@ -29800,6 +29945,196 @@ var LibraryProfileSourceGatePass = class {
|
|
|
29800
29945
|
}
|
|
29801
29946
|
};
|
|
29802
29947
|
|
|
29948
|
+
// src/analysis/passes/mybatis-annotation-sql-sink-pass.ts
|
|
29949
|
+
var MYBATIS_SQL_ANNOTATIONS = /* @__PURE__ */ new Set([
|
|
29950
|
+
"Select",
|
|
29951
|
+
"Update",
|
|
29952
|
+
"Insert",
|
|
29953
|
+
"Delete",
|
|
29954
|
+
"SelectProvider",
|
|
29955
|
+
"UpdateProvider",
|
|
29956
|
+
"InsertProvider",
|
|
29957
|
+
"DeleteProvider"
|
|
29958
|
+
]);
|
|
29959
|
+
var DOLLAR_BRACE_RE = /\$\{([A-Za-z_][A-Za-z0-9_]*)(?:\.[A-Za-z0-9_.]+)?\}/g;
|
|
29960
|
+
function parsePositionalRef(name2) {
|
|
29961
|
+
const paramMatch = /^param(\d+)$/.exec(name2);
|
|
29962
|
+
if (paramMatch) {
|
|
29963
|
+
const oneBased = Number.parseInt(paramMatch[1], 10);
|
|
29964
|
+
if (Number.isFinite(oneBased) && oneBased >= 1) return oneBased - 1;
|
|
29965
|
+
}
|
|
29966
|
+
const zeroMatch = /^(\d+)$/.exec(name2);
|
|
29967
|
+
if (zeroMatch) {
|
|
29968
|
+
const zeroBased = Number.parseInt(zeroMatch[1], 10);
|
|
29969
|
+
if (Number.isFinite(zeroBased) && zeroBased >= 0) return zeroBased;
|
|
29970
|
+
}
|
|
29971
|
+
return null;
|
|
29972
|
+
}
|
|
29973
|
+
function extractAnnotationBody(annotation) {
|
|
29974
|
+
const openIdx = annotation.indexOf("(");
|
|
29975
|
+
if (openIdx < 0) return null;
|
|
29976
|
+
const closeIdx = annotation.lastIndexOf(")");
|
|
29977
|
+
if (closeIdx <= openIdx) return null;
|
|
29978
|
+
return annotation.substring(openIdx + 1, closeIdx);
|
|
29979
|
+
}
|
|
29980
|
+
function annotationName(annotation) {
|
|
29981
|
+
const openIdx = annotation.indexOf("(");
|
|
29982
|
+
return openIdx < 0 ? annotation : annotation.substring(0, openIdx);
|
|
29983
|
+
}
|
|
29984
|
+
function extractParamName(annotation) {
|
|
29985
|
+
if (annotationName(annotation) !== "Param") return null;
|
|
29986
|
+
const body2 = extractAnnotationBody(annotation);
|
|
29987
|
+
if (body2 === null) return null;
|
|
29988
|
+
const strMatch = /^\s*["']([^"']*)["']/.exec(body2);
|
|
29989
|
+
return strMatch ? strMatch[1] : null;
|
|
29990
|
+
}
|
|
29991
|
+
function extractDollarBraceRefs(annotationBody) {
|
|
29992
|
+
const seen = /* @__PURE__ */ new Set();
|
|
29993
|
+
const out2 = [];
|
|
29994
|
+
DOLLAR_BRACE_RE.lastIndex = 0;
|
|
29995
|
+
let m;
|
|
29996
|
+
while ((m = DOLLAR_BRACE_RE.exec(annotationBody)) !== null) {
|
|
29997
|
+
const name2 = m[1];
|
|
29998
|
+
if (!seen.has(name2)) {
|
|
29999
|
+
seen.add(name2);
|
|
30000
|
+
out2.push(name2);
|
|
30001
|
+
}
|
|
30002
|
+
}
|
|
30003
|
+
return out2;
|
|
30004
|
+
}
|
|
30005
|
+
function fileImportsMyBatis(imports) {
|
|
30006
|
+
for (const imp of imports) {
|
|
30007
|
+
const pkg = imp.from_package;
|
|
30008
|
+
if (!pkg) continue;
|
|
30009
|
+
if (pkg === "org.apache.ibatis.annotations" || pkg.startsWith("org.apache.ibatis.annotations.") || pkg === "org.apache.ibatis" || pkg.startsWith("org.apache.ibatis.")) {
|
|
30010
|
+
return true;
|
|
30011
|
+
}
|
|
30012
|
+
}
|
|
30013
|
+
return false;
|
|
30014
|
+
}
|
|
30015
|
+
function correlateDollarBraceToArgPositions(method, refs) {
|
|
30016
|
+
const paramNameToIndex = /* @__PURE__ */ new Map();
|
|
30017
|
+
method.parameters.forEach((param, idx) => {
|
|
30018
|
+
for (const ann of param.annotations) {
|
|
30019
|
+
const paramName = extractParamName(ann);
|
|
30020
|
+
if (paramName !== null) {
|
|
30021
|
+
paramNameToIndex.set(paramName, idx);
|
|
30022
|
+
}
|
|
30023
|
+
}
|
|
30024
|
+
});
|
|
30025
|
+
const positions = /* @__PURE__ */ new Set();
|
|
30026
|
+
for (const ref of refs) {
|
|
30027
|
+
const namedIdx = paramNameToIndex.get(ref);
|
|
30028
|
+
if (namedIdx !== void 0) {
|
|
30029
|
+
positions.add(namedIdx);
|
|
30030
|
+
continue;
|
|
30031
|
+
}
|
|
30032
|
+
const positionalIdx = parsePositionalRef(ref);
|
|
30033
|
+
if (positionalIdx !== null && positionalIdx < method.parameters.length) {
|
|
30034
|
+
positions.add(positionalIdx);
|
|
30035
|
+
}
|
|
30036
|
+
}
|
|
30037
|
+
return Array.from(positions).sort((a, b) => a - b);
|
|
30038
|
+
}
|
|
30039
|
+
function isMapperMethodCall(call, interfaceSimpleName, interfaceFqn, methodName) {
|
|
30040
|
+
const target = call.resolution?.target;
|
|
30041
|
+
if (target) {
|
|
30042
|
+
const suffix = `${interfaceSimpleName}.${methodName}`;
|
|
30043
|
+
const suffixFqn = `${interfaceFqn}.${methodName}`;
|
|
30044
|
+
if (target === suffix || target === suffixFqn || target.endsWith("." + suffix) || target.endsWith("." + suffixFqn)) {
|
|
30045
|
+
return true;
|
|
30046
|
+
}
|
|
30047
|
+
}
|
|
30048
|
+
if (call.method_name !== methodName) return false;
|
|
30049
|
+
if (call.receiver_type === interfaceSimpleName) return true;
|
|
30050
|
+
if (call.receiver_type_fqn === interfaceFqn) return true;
|
|
30051
|
+
return false;
|
|
30052
|
+
}
|
|
30053
|
+
var MyBatisAnnotationSqlSinkPass = class {
|
|
30054
|
+
name = "mybatis-annotation-sql-sink";
|
|
30055
|
+
category = "security";
|
|
30056
|
+
run(ctx) {
|
|
30057
|
+
if (ctx.language !== "java") {
|
|
30058
|
+
return { annotatedMethodCount: 0, addedSinkCount: 0 };
|
|
30059
|
+
}
|
|
30060
|
+
const { types, imports, calls } = ctx.graph.ir;
|
|
30061
|
+
if (!fileImportsMyBatis(imports)) {
|
|
30062
|
+
return { annotatedMethodCount: 0, addedSinkCount: 0 };
|
|
30063
|
+
}
|
|
30064
|
+
const mapperMethods = [];
|
|
30065
|
+
for (const type of types) {
|
|
30066
|
+
if (type.kind !== "interface") continue;
|
|
30067
|
+
for (const method of type.methods) {
|
|
30068
|
+
let matchedRefs = [];
|
|
30069
|
+
for (const ann of method.annotations) {
|
|
30070
|
+
if (!MYBATIS_SQL_ANNOTATIONS.has(annotationName(ann))) continue;
|
|
30071
|
+
const body2 = extractAnnotationBody(ann);
|
|
30072
|
+
if (body2 === null) continue;
|
|
30073
|
+
const refs = extractDollarBraceRefs(body2);
|
|
30074
|
+
if (refs.length > 0) {
|
|
30075
|
+
matchedRefs = [...matchedRefs, ...refs];
|
|
30076
|
+
}
|
|
30077
|
+
}
|
|
30078
|
+
if (matchedRefs.length === 0) continue;
|
|
30079
|
+
const positions = correlateDollarBraceToArgPositions(
|
|
30080
|
+
method,
|
|
30081
|
+
matchedRefs
|
|
30082
|
+
);
|
|
30083
|
+
if (positions.length === 0) continue;
|
|
30084
|
+
const interfaceFqn = type.package ? `${type.package}.${type.name}` : type.name;
|
|
30085
|
+
mapperMethods.push({
|
|
30086
|
+
interfaceSimpleName: type.name,
|
|
30087
|
+
interfaceFqn,
|
|
30088
|
+
methodName: method.name,
|
|
30089
|
+
taintedArgPositions: positions
|
|
30090
|
+
});
|
|
30091
|
+
}
|
|
30092
|
+
}
|
|
30093
|
+
if (mapperMethods.length === 0) {
|
|
30094
|
+
return {
|
|
30095
|
+
annotatedMethodCount: 0,
|
|
30096
|
+
addedSinkCount: 0
|
|
30097
|
+
};
|
|
30098
|
+
}
|
|
30099
|
+
const sinks = ctx.hasResult("taint-matcher") ? ctx.getResult("taint-matcher").sinks : ctx.graph.ir.taint.sinks;
|
|
30100
|
+
let addedSinkCount = 0;
|
|
30101
|
+
for (const call of calls) {
|
|
30102
|
+
for (const rec of mapperMethods) {
|
|
30103
|
+
if (!isMapperMethodCall(
|
|
30104
|
+
call,
|
|
30105
|
+
rec.interfaceSimpleName,
|
|
30106
|
+
rec.interfaceFqn,
|
|
30107
|
+
rec.methodName
|
|
30108
|
+
)) {
|
|
30109
|
+
continue;
|
|
30110
|
+
}
|
|
30111
|
+
const line = call.location.line;
|
|
30112
|
+
if (sinks.some(
|
|
30113
|
+
(s) => s.line === line && s.type === "sql_injection" && s.method === rec.methodName
|
|
30114
|
+
)) {
|
|
30115
|
+
continue;
|
|
30116
|
+
}
|
|
30117
|
+
const receiverLoc = call.receiver ? `${call.receiver}.${rec.methodName}()` : `${rec.methodName}()`;
|
|
30118
|
+
sinks.push({
|
|
30119
|
+
type: "sql_injection",
|
|
30120
|
+
cwe: "CWE-89",
|
|
30121
|
+
location: call.in_method ? `${receiverLoc} in ${call.in_method}` : receiverLoc,
|
|
30122
|
+
line,
|
|
30123
|
+
confidence: 0.95,
|
|
30124
|
+
method: rec.methodName,
|
|
30125
|
+
argPositions: rec.taintedArgPositions,
|
|
30126
|
+
class: rec.interfaceSimpleName
|
|
30127
|
+
});
|
|
30128
|
+
addedSinkCount++;
|
|
30129
|
+
}
|
|
30130
|
+
}
|
|
30131
|
+
return {
|
|
30132
|
+
annotatedMethodCount: mapperMethods.length,
|
|
30133
|
+
addedSinkCount
|
|
30134
|
+
};
|
|
30135
|
+
}
|
|
30136
|
+
};
|
|
30137
|
+
|
|
29803
30138
|
// src/analysis/passes/sink-filter-pass.ts
|
|
29804
30139
|
var JS_XSS_SANITIZERS = [
|
|
29805
30140
|
/\bDOMPurify\.sanitize\s*\(/,
|
|
@@ -41039,6 +41374,8 @@ async function analyze(code, filePath, language, options = {}) {
|
|
|
41039
41374
|
if (!disabledPasses.has("source-semantics")) pipeline.add(new SourceSemanticsPass());
|
|
41040
41375
|
if (!disabledPasses.has("library-profile-source-gate"))
|
|
41041
41376
|
pipeline.add(new LibraryProfileSourceGatePass());
|
|
41377
|
+
if (!disabledPasses.has("mybatis-annotation-sql-sink"))
|
|
41378
|
+
pipeline.add(new MyBatisAnnotationSqlSinkPass());
|
|
41042
41379
|
pipeline.add(new SinkFilterPass());
|
|
41043
41380
|
if (!disabledPasses.has("sink-semantics")) pipeline.add(new SinkSemanticsPass());
|
|
41044
41381
|
if (!disabledPasses.has("cli-main-reflection-suppress"))
|
|
@@ -13493,8 +13493,11 @@ function matchesSinkPattern(call, pattern, typeHierarchy, language) {
|
|
|
13493
13493
|
if (pattern.class === "constructor") {
|
|
13494
13494
|
return true;
|
|
13495
13495
|
}
|
|
13496
|
+
const subtypeArgArityOk = !pattern.arg_positions || pattern.arg_positions.length === 0 || pattern.arg_positions.every((pos) => pos < (call.arguments?.length ?? 0));
|
|
13496
13497
|
if (call.receiver_type && call.receiver_type === pattern.class) {
|
|
13498
|
+
} else if (call.receiver_type && typeHierarchy && subtypeArgArityOk && typeHierarchy.isSubtypeOf(call.receiver_type, pattern.class)) {
|
|
13497
13499
|
} else if (call.receiver_type_fqn && call.receiver_type_fqn.endsWith("." + pattern.class)) {
|
|
13500
|
+
} else if (call.receiver_type_fqn && typeHierarchy && subtypeArgArityOk && typeHierarchy.isSubtypeOf(call.receiver_type_fqn, pattern.class)) {
|
|
13498
13501
|
} else if (call.receiver && !receiverMightBeClass(call.receiver, pattern.class)) {
|
|
13499
13502
|
if (typeHierarchy && typeHierarchy.couldBeType(call.receiver, pattern.class)) {
|
|
13500
13503
|
return true;
|
|
@@ -13427,8 +13427,11 @@ function matchesSinkPattern(call, pattern, typeHierarchy, language) {
|
|
|
13427
13427
|
if (pattern.class === "constructor") {
|
|
13428
13428
|
return true;
|
|
13429
13429
|
}
|
|
13430
|
+
const subtypeArgArityOk = !pattern.arg_positions || pattern.arg_positions.length === 0 || pattern.arg_positions.every((pos) => pos < (call.arguments?.length ?? 0));
|
|
13430
13431
|
if (call.receiver_type && call.receiver_type === pattern.class) {
|
|
13432
|
+
} else if (call.receiver_type && typeHierarchy && subtypeArgArityOk && typeHierarchy.isSubtypeOf(call.receiver_type, pattern.class)) {
|
|
13431
13433
|
} else if (call.receiver_type_fqn && call.receiver_type_fqn.endsWith("." + pattern.class)) {
|
|
13434
|
+
} else if (call.receiver_type_fqn && typeHierarchy && subtypeArgArityOk && typeHierarchy.isSubtypeOf(call.receiver_type_fqn, pattern.class)) {
|
|
13432
13435
|
} else if (call.receiver && !receiverMightBeClass(call.receiver, pattern.class)) {
|
|
13433
13436
|
if (typeHierarchy && typeHierarchy.couldBeType(call.receiver, pattern.class)) {
|
|
13434
13437
|
return true;
|
|
@@ -124,4 +124,19 @@ export declare class TypeHierarchyResolver {
|
|
|
124
124
|
* These are standard JDK types that code often extends/implements
|
|
125
125
|
*/
|
|
126
126
|
export declare function createWithJdkTypes(): TypeHierarchyResolver;
|
|
127
|
+
/**
|
|
128
|
+
* Pre-registered type hierarchies for widely used third-party libraries.
|
|
129
|
+
*
|
|
130
|
+
* These are strictly additive facts — code that supplies its own IR types
|
|
131
|
+
* for these classes overrides the pre-registered facts via the normal
|
|
132
|
+
* `addFromIR()` path. Purpose: allow sink patterns keyed on a base class /
|
|
133
|
+
* interface (e.g. `HttpClient.execute`) to match subtype receivers
|
|
134
|
+
* (`CloseableHttpClient`, `InternalHttpClient`, etc.) via
|
|
135
|
+
* `TypeHierarchyResolver.isSubtypeOf()`.
|
|
136
|
+
*
|
|
137
|
+
* Currently registered:
|
|
138
|
+
* - Apache HttpClient 4.x (`org.apache.http.*`)
|
|
139
|
+
* - Apache HttpClient 5.x (`org.apache.hc.client5.*`)
|
|
140
|
+
*/
|
|
141
|
+
export declare function registerCommonLibraries(resolver: TypeHierarchyResolver): void;
|
|
127
142
|
//# sourceMappingURL=type-hierarchy.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type-hierarchy.d.ts","sourceRoot":"","sources":["../../src/resolution/type-hierarchy.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,QAAQ,EACR,aAAa,IAAI,iBAAiB,EAGlC,QAAQ,EACT,MAAM,mBAAmB,CAAC;AAE3B;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,OAAO,GAAG,WAAW,GAAG,MAAM,CAAC;IACrC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,qBAAa,qBAAqB;IAEhC,OAAO,CAAC,KAAK,CAAoC;IAGjD,OAAO,CAAC,SAAS,CAAuC;IAGxD,OAAO,CAAC,QAAQ,CAAuC;IAGvD,OAAO,CAAC,eAAe,CAAuC;IAG9D,OAAO,CAAC,aAAa,CAAoC;IACzD,OAAO,CAAC,UAAU,CAAoC;IAEtD;;OAEG;IACH,SAAS,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAM/C;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,GAAE,MAAM,GAAG,IAAW,GAAG,IAAI;IAsDrF;;OAEG;IACH,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE;IAK9C;;OAEG;IACH,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE;IA0B3C;;OAEG;IACH,wBAAwB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,EAAE;IAKzD;;OAEG;IACH,qBAAqB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,EAAE;IAyCtD;;OAEG;IACH,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO;IAiB3D;;;OAGG;IACH,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO;IAerE;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS;IAK3C;;OAEG;IACH,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,QAAQ,EAAE;IAQ9C;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAK7C;;;OAGG;IACH,WAAW,CAAC,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO;IAwB/D;;OAEG;IACH,mBAAmB,IAAI,iBAAiB;IAwBxC;;OAEG;IACH,QAAQ,IAAI;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE;IAUtF;;OAEG;IACH,WAAW,IAAI,QAAQ,EAAE;IAIzB;;OAEG;IACH,KAAK,IAAI,IAAI;IASb;;OAEG;IACH,OAAO,CAAC,eAAe;IAcvB;;OAEG;IACH,OAAO,CAAC,UAAU;IAalB;;OAEG;IACH,OAAO,CAAC,aAAa;IAKrB;;OAEG;IACH,OAAO,CAAC,UAAU;CAInB;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,IAAI,qBAAqB,
|
|
1
|
+
{"version":3,"file":"type-hierarchy.d.ts","sourceRoot":"","sources":["../../src/resolution/type-hierarchy.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,QAAQ,EACR,aAAa,IAAI,iBAAiB,EAGlC,QAAQ,EACT,MAAM,mBAAmB,CAAC;AAE3B;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,OAAO,GAAG,WAAW,GAAG,MAAM,CAAC;IACrC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,qBAAa,qBAAqB;IAEhC,OAAO,CAAC,KAAK,CAAoC;IAGjD,OAAO,CAAC,SAAS,CAAuC;IAGxD,OAAO,CAAC,QAAQ,CAAuC;IAGvD,OAAO,CAAC,eAAe,CAAuC;IAG9D,OAAO,CAAC,aAAa,CAAoC;IACzD,OAAO,CAAC,UAAU,CAAoC;IAEtD;;OAEG;IACH,SAAS,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAM/C;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,GAAE,MAAM,GAAG,IAAW,GAAG,IAAI;IAsDrF;;OAEG;IACH,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE;IAK9C;;OAEG;IACH,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,EAAE;IA0B3C;;OAEG;IACH,wBAAwB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,EAAE;IAKzD;;OAEG;IACH,qBAAqB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,EAAE;IAyCtD;;OAEG;IACH,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO;IAiB3D;;;OAGG;IACH,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO;IAerE;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS;IAK3C;;OAEG;IACH,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,QAAQ,EAAE;IAQ9C;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAK7C;;;OAGG;IACH,WAAW,CAAC,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO;IAwB/D;;OAEG;IACH,mBAAmB,IAAI,iBAAiB;IAwBxC;;OAEG;IACH,QAAQ,IAAI;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE;IAUtF;;OAEG;IACH,WAAW,IAAI,QAAQ,EAAE;IAIzB;;OAEG;IACH,KAAK,IAAI,IAAI;IASb;;OAEG;IACH,OAAO,CAAC,eAAe;IAcvB;;OAEG;IACH,OAAO,CAAC,UAAU;IAalB;;OAEG;IACH,OAAO,CAAC,aAAa;IAKrB;;OAEG;IACH,OAAO,CAAC,UAAU;CAInB;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,IAAI,qBAAqB,CAoL1D;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,qBAAqB,GAAG,IAAI,CAgJ7E"}
|
|
@@ -523,6 +523,165 @@ export function createWithJdkTypes() {
|
|
|
523
523
|
for (const type of [...jdbcTypes, ...ioTypes, ...servletTypes]) {
|
|
524
524
|
resolver.addType(type, 'jdk', type.package);
|
|
525
525
|
}
|
|
526
|
+
// Add common third-party library hierarchies
|
|
527
|
+
registerCommonLibraries(resolver);
|
|
526
528
|
return resolver;
|
|
527
529
|
}
|
|
530
|
+
/**
|
|
531
|
+
* Pre-registered type hierarchies for widely used third-party libraries.
|
|
532
|
+
*
|
|
533
|
+
* These are strictly additive facts — code that supplies its own IR types
|
|
534
|
+
* for these classes overrides the pre-registered facts via the normal
|
|
535
|
+
* `addFromIR()` path. Purpose: allow sink patterns keyed on a base class /
|
|
536
|
+
* interface (e.g. `HttpClient.execute`) to match subtype receivers
|
|
537
|
+
* (`CloseableHttpClient`, `InternalHttpClient`, etc.) via
|
|
538
|
+
* `TypeHierarchyResolver.isSubtypeOf()`.
|
|
539
|
+
*
|
|
540
|
+
* Currently registered:
|
|
541
|
+
* - Apache HttpClient 4.x (`org.apache.http.*`)
|
|
542
|
+
* - Apache HttpClient 5.x (`org.apache.hc.client5.*`)
|
|
543
|
+
*/
|
|
544
|
+
export function registerCommonLibraries(resolver) {
|
|
545
|
+
// Apache HttpClient 4.x — org.apache.http.*
|
|
546
|
+
const apacheHttpClient4x = [
|
|
547
|
+
{
|
|
548
|
+
name: 'HttpClient',
|
|
549
|
+
kind: 'interface',
|
|
550
|
+
package: 'org.apache.http.client',
|
|
551
|
+
extends: null,
|
|
552
|
+
implements: [],
|
|
553
|
+
annotations: [],
|
|
554
|
+
methods: [],
|
|
555
|
+
fields: [],
|
|
556
|
+
start_line: 0,
|
|
557
|
+
end_line: 0,
|
|
558
|
+
},
|
|
559
|
+
{
|
|
560
|
+
name: 'AbstractHttpClient',
|
|
561
|
+
kind: 'class',
|
|
562
|
+
package: 'org.apache.http.impl.client',
|
|
563
|
+
extends: null,
|
|
564
|
+
implements: ['org.apache.http.client.HttpClient'],
|
|
565
|
+
annotations: [],
|
|
566
|
+
methods: [],
|
|
567
|
+
fields: [],
|
|
568
|
+
start_line: 0,
|
|
569
|
+
end_line: 0,
|
|
570
|
+
},
|
|
571
|
+
{
|
|
572
|
+
name: 'CloseableHttpClient',
|
|
573
|
+
kind: 'class',
|
|
574
|
+
package: 'org.apache.http.impl.client',
|
|
575
|
+
extends: null,
|
|
576
|
+
implements: ['org.apache.http.client.HttpClient'],
|
|
577
|
+
annotations: [],
|
|
578
|
+
methods: [],
|
|
579
|
+
fields: [],
|
|
580
|
+
start_line: 0,
|
|
581
|
+
end_line: 0,
|
|
582
|
+
},
|
|
583
|
+
{
|
|
584
|
+
name: 'InternalHttpClient',
|
|
585
|
+
kind: 'class',
|
|
586
|
+
package: 'org.apache.http.impl.client',
|
|
587
|
+
extends: 'org.apache.http.impl.client.CloseableHttpClient',
|
|
588
|
+
implements: [],
|
|
589
|
+
annotations: [],
|
|
590
|
+
methods: [],
|
|
591
|
+
fields: [],
|
|
592
|
+
start_line: 0,
|
|
593
|
+
end_line: 0,
|
|
594
|
+
},
|
|
595
|
+
{
|
|
596
|
+
name: 'MinimalHttpClient',
|
|
597
|
+
kind: 'class',
|
|
598
|
+
package: 'org.apache.http.impl.client',
|
|
599
|
+
extends: 'org.apache.http.impl.client.CloseableHttpClient',
|
|
600
|
+
implements: [],
|
|
601
|
+
annotations: [],
|
|
602
|
+
methods: [],
|
|
603
|
+
fields: [],
|
|
604
|
+
start_line: 0,
|
|
605
|
+
end_line: 0,
|
|
606
|
+
},
|
|
607
|
+
{
|
|
608
|
+
name: 'DefaultHttpClient',
|
|
609
|
+
kind: 'class',
|
|
610
|
+
package: 'org.apache.http.impl.client',
|
|
611
|
+
extends: 'org.apache.http.impl.client.AbstractHttpClient',
|
|
612
|
+
implements: [],
|
|
613
|
+
annotations: [],
|
|
614
|
+
methods: [],
|
|
615
|
+
fields: [],
|
|
616
|
+
start_line: 0,
|
|
617
|
+
end_line: 0,
|
|
618
|
+
},
|
|
619
|
+
{
|
|
620
|
+
name: 'SystemDefaultHttpClient',
|
|
621
|
+
kind: 'class',
|
|
622
|
+
package: 'org.apache.http.impl.client',
|
|
623
|
+
extends: 'org.apache.http.impl.client.DefaultHttpClient',
|
|
624
|
+
implements: [],
|
|
625
|
+
annotations: [],
|
|
626
|
+
methods: [],
|
|
627
|
+
fields: [],
|
|
628
|
+
start_line: 0,
|
|
629
|
+
end_line: 0,
|
|
630
|
+
},
|
|
631
|
+
];
|
|
632
|
+
// Apache HttpClient 5.x — org.apache.hc.client5.*
|
|
633
|
+
const apacheHttpClient5x = [
|
|
634
|
+
{
|
|
635
|
+
name: 'HttpClient',
|
|
636
|
+
kind: 'interface',
|
|
637
|
+
package: 'org.apache.hc.client5.http.classic',
|
|
638
|
+
extends: null,
|
|
639
|
+
implements: [],
|
|
640
|
+
annotations: [],
|
|
641
|
+
methods: [],
|
|
642
|
+
fields: [],
|
|
643
|
+
start_line: 0,
|
|
644
|
+
end_line: 0,
|
|
645
|
+
},
|
|
646
|
+
{
|
|
647
|
+
name: 'CloseableHttpClient',
|
|
648
|
+
kind: 'class',
|
|
649
|
+
package: 'org.apache.hc.client5.http.impl.classic',
|
|
650
|
+
extends: null,
|
|
651
|
+
implements: ['org.apache.hc.client5.http.classic.HttpClient'],
|
|
652
|
+
annotations: [],
|
|
653
|
+
methods: [],
|
|
654
|
+
fields: [],
|
|
655
|
+
start_line: 0,
|
|
656
|
+
end_line: 0,
|
|
657
|
+
},
|
|
658
|
+
{
|
|
659
|
+
name: 'InternalHttpClient',
|
|
660
|
+
kind: 'class',
|
|
661
|
+
package: 'org.apache.hc.client5.http.impl.classic',
|
|
662
|
+
extends: 'org.apache.hc.client5.http.impl.classic.CloseableHttpClient',
|
|
663
|
+
implements: [],
|
|
664
|
+
annotations: [],
|
|
665
|
+
methods: [],
|
|
666
|
+
fields: [],
|
|
667
|
+
start_line: 0,
|
|
668
|
+
end_line: 0,
|
|
669
|
+
},
|
|
670
|
+
{
|
|
671
|
+
name: 'MinimalHttpClient',
|
|
672
|
+
kind: 'class',
|
|
673
|
+
package: 'org.apache.hc.client5.http.impl.classic',
|
|
674
|
+
extends: 'org.apache.hc.client5.http.impl.classic.CloseableHttpClient',
|
|
675
|
+
implements: [],
|
|
676
|
+
annotations: [],
|
|
677
|
+
methods: [],
|
|
678
|
+
fields: [],
|
|
679
|
+
start_line: 0,
|
|
680
|
+
end_line: 0,
|
|
681
|
+
},
|
|
682
|
+
];
|
|
683
|
+
for (const type of [...apacheHttpClient4x, ...apacheHttpClient5x]) {
|
|
684
|
+
resolver.addType(type, 'common-libraries', type.package);
|
|
685
|
+
}
|
|
686
|
+
}
|
|
528
687
|
//# sourceMappingURL=type-hierarchy.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type-hierarchy.js","sourceRoot":"","sources":["../../src/resolution/type-hierarchy.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"type-hierarchy.js","sourceRoot":"","sources":["../../src/resolution/type-hierarchy.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "circle-ir",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.156.0",
|
|
4
4
|
"description": "High-performance Static Application Security Testing (SAST) library for detecting security vulnerabilities through taint analysis",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/index.js",
|