@hoanghainh/komagu 2.5.0 → 2.6.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.
Files changed (197) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/assess/lsa/examples/eval-run-6/gptoss-a/ai-run-stats.json +87 -0
  3. package/assess/lsa/examples/eval-run-6/gptoss-a/auth-model.md +120 -0
  4. package/assess/lsa/examples/eval-run-6/gptoss-a/batches/index.json +60 -0
  5. package/assess/lsa/examples/eval-run-6/gptoss-a/batches/injection-001.json +383 -0
  6. package/assess/lsa/examples/eval-run-6/gptoss-a/batches/injection-002.json +205 -0
  7. package/assess/lsa/examples/eval-run-6/gptoss-a/batches/privilege-001.json +838 -0
  8. package/assess/lsa/examples/eval-run-6/gptoss-a/batches/privilege-002.json +124 -0
  9. package/assess/lsa/examples/eval-run-6/gptoss-a/batches/routes-001.json +778 -0
  10. package/assess/lsa/examples/eval-run-6/gptoss-a/batches/routes-002.json +546 -0
  11. package/assess/lsa/examples/eval-run-6/gptoss-a/batches/routes-003.json +661 -0
  12. package/assess/lsa/examples/eval-run-6/gptoss-a/batches/routes-004.json +659 -0
  13. package/assess/lsa/examples/eval-run-6/gptoss-a/batches/routes-005.json +612 -0
  14. package/assess/lsa/examples/eval-run-6/gptoss-a/batches/routes-006.json +106 -0
  15. package/assess/lsa/examples/eval-run-6/gptoss-a/coverage.json +19 -0
  16. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/bola-routes-001.json +516 -0
  17. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/bola-routes-002.json +332 -0
  18. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/bola-routes-003.json +218 -0
  19. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/bola-routes-004.json +561 -0
  20. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/bola-routes-005.json +316 -0
  21. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/bola-routes-006.json +14 -0
  22. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/inj-injection-001.json +782 -0
  23. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/inj-injection-002.json +418 -0
  24. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/priv-privilege-001.json +627 -0
  25. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/priv-privilege-002.json +253 -0
  26. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-1.json +68 -0
  27. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-10.json +68 -0
  28. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-11.json +61 -0
  29. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-12.json +60 -0
  30. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-13.json +60 -0
  31. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-14.json +66 -0
  32. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-15.json +69 -0
  33. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-16.json +60 -0
  34. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-17.json +61 -0
  35. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-18.json +69 -0
  36. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-19.json +64 -0
  37. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-2.json +60 -0
  38. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-20.json +60 -0
  39. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-21.json +61 -0
  40. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-22.json +50 -0
  41. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-3.json +60 -0
  42. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-4.json +60 -0
  43. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-5.json +60 -0
  44. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-6.json +70 -0
  45. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-7.json +60 -0
  46. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-8.json +60 -0
  47. package/assess/lsa/examples/eval-run-6/gptoss-a/findings/verified-9.json +60 -0
  48. package/assess/lsa/examples/eval-run-6/gptoss-a/findings.json +4857 -0
  49. package/assess/lsa/examples/eval-run-6/gptoss-a/mass-assignment.candidates.json +232 -0
  50. package/assess/lsa/examples/eval-run-6/gptoss-a/report.ja.md +2112 -0
  51. package/assess/lsa/examples/eval-run-6/gptoss-a/report.md +2112 -0
  52. package/assess/lsa/examples/eval-run-6/gptoss-a/routes/routes-001.json +425 -0
  53. package/assess/lsa/examples/eval-run-6/gptoss-a/routes/routes-002.json +333 -0
  54. package/assess/lsa/examples/eval-run-6/gptoss-a/routes/routes-003.json +400 -0
  55. package/assess/lsa/examples/eval-run-6/gptoss-a/routes/routes-004.json +403 -0
  56. package/assess/lsa/examples/eval-run-6/gptoss-a/routes/routes-005.json +398 -0
  57. package/assess/lsa/examples/eval-run-6/gptoss-a/routes/routes-006.json +63 -0
  58. package/assess/lsa/examples/eval-run-6/gptoss-a/score.json +82 -0
  59. package/assess/lsa/examples/eval-run-6/gptoss-a/stack-profile.json +225 -0
  60. package/assess/lsa/examples/eval-run-6/gptoss-b/ai-run-stats.json +91 -0
  61. package/assess/lsa/examples/eval-run-6/gptoss-b/auth-model.md +120 -0
  62. package/assess/lsa/examples/eval-run-6/gptoss-b/batches/index.json +60 -0
  63. package/assess/lsa/examples/eval-run-6/gptoss-b/batches/injection-001.json +383 -0
  64. package/assess/lsa/examples/eval-run-6/gptoss-b/batches/injection-002.json +205 -0
  65. package/assess/lsa/examples/eval-run-6/gptoss-b/batches/privilege-001.json +838 -0
  66. package/assess/lsa/examples/eval-run-6/gptoss-b/batches/privilege-002.json +124 -0
  67. package/assess/lsa/examples/eval-run-6/gptoss-b/batches/routes-001.json +778 -0
  68. package/assess/lsa/examples/eval-run-6/gptoss-b/batches/routes-002.json +546 -0
  69. package/assess/lsa/examples/eval-run-6/gptoss-b/batches/routes-003.json +661 -0
  70. package/assess/lsa/examples/eval-run-6/gptoss-b/batches/routes-004.json +659 -0
  71. package/assess/lsa/examples/eval-run-6/gptoss-b/batches/routes-005.json +612 -0
  72. package/assess/lsa/examples/eval-run-6/gptoss-b/batches/routes-006.json +106 -0
  73. package/assess/lsa/examples/eval-run-6/gptoss-b/coverage.json +21 -0
  74. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/bola-routes-001.json +593 -0
  75. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/bola-routes-002.json +367 -0
  76. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/bola-routes-003.json +207 -0
  77. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/bola-routes-004.json +477 -0
  78. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/bola-routes-005.json +341 -0
  79. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/bola-routes-006.json +14 -0
  80. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/inj-injection-001.json +821 -0
  81. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/inj-injection-002.json +410 -0
  82. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/priv-privilege-001.json +649 -0
  83. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/priv-privilege-002.json +222 -0
  84. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-1.json +60 -0
  85. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-10.json +67 -0
  86. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-11.json +68 -0
  87. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-12.json +60 -0
  88. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-13.json +60 -0
  89. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-14.json +64 -0
  90. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-15.json +70 -0
  91. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-16.json +60 -0
  92. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-17.json +61 -0
  93. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-18.json +60 -0
  94. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-19.json +65 -0
  95. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-2.json +60 -0
  96. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-20.json +60 -0
  97. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-21.json +62 -0
  98. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-22.json +50 -0
  99. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-3.json +60 -0
  100. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-4.json +60 -0
  101. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-5.json +60 -0
  102. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-6.json +60 -0
  103. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-7.json +64 -0
  104. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-8.json +60 -0
  105. package/assess/lsa/examples/eval-run-6/gptoss-b/findings/verified-9.json +60 -0
  106. package/assess/lsa/examples/eval-run-6/gptoss-b/findings.json +4966 -0
  107. package/assess/lsa/examples/eval-run-6/gptoss-b/mass-assignment.candidates.json +232 -0
  108. package/assess/lsa/examples/eval-run-6/gptoss-b/routes/routes-001.json +425 -0
  109. package/assess/lsa/examples/eval-run-6/gptoss-b/routes/routes-002.json +333 -0
  110. package/assess/lsa/examples/eval-run-6/gptoss-b/routes/routes-003.json +400 -0
  111. package/assess/lsa/examples/eval-run-6/gptoss-b/routes/routes-004.json +403 -0
  112. package/assess/lsa/examples/eval-run-6/gptoss-b/routes/routes-005.json +398 -0
  113. package/assess/lsa/examples/eval-run-6/gptoss-b/routes/routes-006.json +63 -0
  114. package/assess/lsa/examples/eval-run-6/gptoss-b/score.json +87 -0
  115. package/assess/lsa/examples/eval-run-6/gptoss-b/stack-profile.json +225 -0
  116. package/assess/lsa/examples/eval-run-6/ground-truth.json +851 -0
  117. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/ai-run-stats.json +96 -0
  118. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/auth-model.md +191 -0
  119. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/batches/index.json +60 -0
  120. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/batches/injection-001.json +383 -0
  121. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/batches/injection-002.json +205 -0
  122. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/batches/privilege-001.json +838 -0
  123. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/batches/privilege-002.json +124 -0
  124. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/batches/routes-001.json +778 -0
  125. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/batches/routes-002.json +546 -0
  126. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/batches/routes-003.json +661 -0
  127. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/batches/routes-004.json +659 -0
  128. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/batches/routes-005.json +612 -0
  129. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/batches/routes-006.json +106 -0
  130. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/coverage.json +31 -0
  131. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/bola-routes-001.json +527 -0
  132. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/bola-routes-002.json +568 -0
  133. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/bola-routes-003.json +467 -0
  134. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/bola-routes-004.json +342 -0
  135. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/bola-routes-005.json +693 -0
  136. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/bola-routes-006.json +16 -0
  137. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/inj-injection-001.json +1123 -0
  138. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/inj-injection-002.json +391 -0
  139. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/priv-privilege-001.json +726 -0
  140. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/priv-privilege-002.json +306 -0
  141. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-1.json +137 -0
  142. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-10.json +106 -0
  143. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-11.json +81 -0
  144. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-12.json +135 -0
  145. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-13.json +135 -0
  146. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-14.json +135 -0
  147. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-15.json +110 -0
  148. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-16.json +116 -0
  149. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-17.json +141 -0
  150. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-18.json +135 -0
  151. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-19.json +140 -0
  152. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-2.json +135 -0
  153. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-20.json +82 -0
  154. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-21.json +74 -0
  155. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-22.json +99 -0
  156. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-3.json +140 -0
  157. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-4.json +145 -0
  158. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-5.json +135 -0
  159. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-6.json +135 -0
  160. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-7.json +87 -0
  161. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-8.json +125 -0
  162. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings/verified-9.json +135 -0
  163. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/findings.json +6989 -0
  164. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/mass-assignment.candidates.json +232 -0
  165. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/memory.log +36 -0
  166. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/routes/routes-001.json +425 -0
  167. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/routes/routes-002.json +333 -0
  168. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/routes/routes-003.json +400 -0
  169. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/routes/routes-004.json +403 -0
  170. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/routes/routes-005.json +398 -0
  171. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/routes/routes-006.json +63 -0
  172. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/score.json +106 -0
  173. package/assess/lsa/examples/eval-run-6/qwen-16k-nothink/stack-profile.json +225 -0
  174. package/assess/lsa/examples/eval-run-6/qwen-16k-partial/auth-model.md +517 -0
  175. package/assess/lsa/examples/eval-run-6/qwen-16k-partial/findings/bola-routes-001.json +5 -0
  176. package/assess/lsa/examples/eval-run-6/qwen-16k-partial/findings/bola-routes-002.json +428 -0
  177. package/assess/lsa/examples/eval-run-6/qwen-16k-partial/findings/bola-routes-003.json +388 -0
  178. package/assess/lsa/examples/eval-run-6/qwen-16k-partial/findings/bola-routes-004.json +463 -0
  179. package/assess/lsa/examples/eval-run-6/qwen-16k-partial/findings/bola-routes-005.json +5 -0
  180. package/assess/lsa/examples/eval-run-6/qwen-16k-partial/findings/bola-routes-006.json +67 -0
  181. package/assess/lsa/examples/eval-run-6/qwen-16k-partial/findings/inj-injection-001.json +964 -0
  182. package/assess/lsa/examples/eval-run-6/qwen-16k-partial/findings.partial.json +1872 -0
  183. package/assess/lsa/examples/eval-run-6/qwen-16k-partial/memory.log +194 -0
  184. package/assess/lsa/examples/eval-run-6/qwen-16k-partial/score.partial.json +108 -0
  185. package/assess/lsa/examples/eval-run-6/qwen-16k-partial/stack-profile.json +225 -0
  186. package/assess/lsa/scripts/laravel_routes.py +102 -0
  187. package/assess/lsa/scripts/map_routes.py +4 -1
  188. package/assess/lsa/tests/EVAL-RESULTS.md +126 -0
  189. package/assess/lsa/tests/test_eval_run_6.py +104 -0
  190. package/assess/lsa/tests/test_laravel_routes.py +95 -0
  191. package/operate/ai/client.py +22 -9
  192. package/operate/ai/runner.py +4 -2
  193. package/operate/cli/__init__.py +1 -1
  194. package/operate/cli/commands/scan.py +8 -1
  195. package/operate/tests/test_ai_reasoning_effort.py +65 -0
  196. package/operate/tests/test_ai_route_inventory.py +53 -0
  197. package/package.json +1 -1
@@ -0,0 +1,398 @@
1
+ {
2
+ "routes": [
3
+ {
4
+ "route_id": "R-0072",
5
+ "method": [
6
+ "POST"
7
+ ],
8
+ "path": "/users",
9
+ "path_source": "declared",
10
+ "handler": {
11
+ "file": "python-flask/profile.py",
12
+ "line": 8
13
+ },
14
+ "id_inputs": [
15
+ {
16
+ "name": "id",
17
+ "source": "path"
18
+ }
19
+ ],
20
+ "guards": [],
21
+ "data_ops": [
22
+ {
23
+ "op": "read"
24
+ }
25
+ ],
26
+ "needs_bola_audit": true
27
+ },
28
+ {
29
+ "route_id": "R-0073",
30
+ "method": [
31
+ "POST"
32
+ ],
33
+ "path": "/users/<int:uid>/name",
34
+ "path_source": "declared",
35
+ "handler": {
36
+ "file": "python-flask/profile.py",
37
+ "line": 16
38
+ },
39
+ "id_inputs": [
40
+ {
41
+ "name": "uid",
42
+ "source": "path"
43
+ }
44
+ ],
45
+ "guards": [],
46
+ "data_ops": [
47
+ {
48
+ "op": "read"
49
+ }
50
+ ],
51
+ "needs_bola_audit": true
52
+ },
53
+ {
54
+ "route_id": "R-0074",
55
+ "method": [
56
+ "PATCH"
57
+ ],
58
+ "path": "/users/<int:uid>",
59
+ "path_source": "declared",
60
+ "handler": {
61
+ "file": "python-flask/profile.py",
62
+ "line": 24
63
+ },
64
+ "id_inputs": [
65
+ {
66
+ "name": "uid",
67
+ "source": "path"
68
+ }
69
+ ],
70
+ "guards": [],
71
+ "data_ops": [
72
+ {
73
+ "op": "read"
74
+ }
75
+ ],
76
+ "needs_bola_audit": true
77
+ },
78
+ {
79
+ "route_id": "R-0010",
80
+ "method": [
81
+ "POST"
82
+ ],
83
+ "path": "/Customer/Edit",
84
+ "path_source": "declared",
85
+ "handler": {
86
+ "file": "dotnet-legacy/Web/Controllers/CustomerController.cs",
87
+ "line": 12
88
+ },
89
+ "id_inputs": [
90
+ {
91
+ "name": "customer",
92
+ "source": "any"
93
+ }
94
+ ],
95
+ "guards": [],
96
+ "data_ops": [
97
+ {
98
+ "op": "read"
99
+ }
100
+ ],
101
+ "needs_bola_audit": true
102
+ },
103
+ {
104
+ "route_id": "R-0011",
105
+ "method": [
106
+ "POST",
107
+ "POST"
108
+ ],
109
+ "path": "/Customer/EditName",
110
+ "path_source": "declared",
111
+ "handler": {
112
+ "file": "dotnet-legacy/Web/Controllers/CustomerController.cs",
113
+ "line": 20
114
+ },
115
+ "id_inputs": [
116
+ {
117
+ "name": "id",
118
+ "source": "path"
119
+ }
120
+ ],
121
+ "guards": [],
122
+ "data_ops": [
123
+ {
124
+ "op": "read"
125
+ }
126
+ ],
127
+ "needs_bola_audit": true
128
+ },
129
+ {
130
+ "route_id": "R-0012",
131
+ "method": [
132
+ "POST",
133
+ "POST"
134
+ ],
135
+ "path": "/Customer/Refresh",
136
+ "path_source": "declared",
137
+ "handler": {
138
+ "file": "dotnet-legacy/Web/Controllers/CustomerController.cs",
139
+ "line": 27
140
+ },
141
+ "id_inputs": [
142
+ {
143
+ "name": "id",
144
+ "source": "any"
145
+ }
146
+ ],
147
+ "guards": [],
148
+ "data_ops": [
149
+ {
150
+ "op": "read"
151
+ }
152
+ ],
153
+ "needs_bola_audit": true
154
+ },
155
+ {
156
+ "route_id": "R-0016",
157
+ "method": [
158
+ "ANY"
159
+ ],
160
+ "path": "/dotnet-legacy/Web/Handlers/GetFile.ashx",
161
+ "path_source": "declared",
162
+ "handler": {
163
+ "file": "dotnet-legacy/Web/Handlers/GetFile.ashx",
164
+ "line": 1
165
+ },
166
+ "id_inputs": [
167
+ {
168
+ "name": "file_id",
169
+ "source": "query"
170
+ }
171
+ ],
172
+ "guards": [],
173
+ "data_ops": [
174
+ {
175
+ "op": "read"
176
+ }
177
+ ],
178
+ "needs_bola_audit": true
179
+ },
180
+ {
181
+ "route_id": "R-0029",
182
+ "method": [
183
+ "POST"
184
+ ],
185
+ "path": "<see web.xml servlet-mapping>",
186
+ "path_source": "declared",
187
+ "handler": {
188
+ "file": "java-legacy/src/com/acme/web/ProfileServlet.java",
189
+ "line": 9
190
+ },
191
+ "id_inputs": [
192
+ {
193
+ "name": "id",
194
+ "source": "path"
195
+ }
196
+ ],
197
+ "guards": [],
198
+ "data_ops": [
199
+ {
200
+ "op": "read"
201
+ }
202
+ ],
203
+ "needs_bola_audit": true
204
+ },
205
+ {
206
+ "route_id": "R-0039",
207
+ "method": [
208
+ "PUT"
209
+ ],
210
+ "path": "/profile",
211
+ "path_source": "declared",
212
+ "handler": {
213
+ "file": "node-express/routes/profile.js",
214
+ "line": 7
215
+ },
216
+ "id_inputs": [
217
+ {
218
+ "name": "id",
219
+ "source": "path"
220
+ }
221
+ ],
222
+ "guards": [],
223
+ "data_ops": [
224
+ {
225
+ "op": "read"
226
+ }
227
+ ],
228
+ "needs_bola_audit": true
229
+ },
230
+ {
231
+ "route_id": "R-0040",
232
+ "method": [
233
+ "PUT"
234
+ ],
235
+ "path": "/profile/name",
236
+ "path_source": "declared",
237
+ "handler": {
238
+ "file": "node-express/routes/profile.js",
239
+ "line": 11
240
+ },
241
+ "id_inputs": [
242
+ {
243
+ "name": "name",
244
+ "source": "body"
245
+ }
246
+ ],
247
+ "guards": [],
248
+ "data_ops": [
249
+ {
250
+ "op": "read"
251
+ }
252
+ ],
253
+ "needs_bola_audit": true
254
+ },
255
+ {
256
+ "route_id": "R-0041",
257
+ "method": [
258
+ "POST"
259
+ ],
260
+ "path": "/signup",
261
+ "path_source": "declared",
262
+ "handler": {
263
+ "file": "node-express/routes/profile.js",
264
+ "line": 15
265
+ },
266
+ "id_inputs": [
267
+ {
268
+ "name": "id",
269
+ "source": "path"
270
+ }
271
+ ],
272
+ "guards": [],
273
+ "data_ops": [
274
+ {
275
+ "op": "read"
276
+ }
277
+ ],
278
+ "needs_bola_audit": true
279
+ },
280
+ {
281
+ "route_id": "R-0042",
282
+ "method": [
283
+ "POST"
284
+ ],
285
+ "path": "/profile/settings",
286
+ "path_source": "declared",
287
+ "handler": {
288
+ "file": "node-express/routes/profile.js",
289
+ "line": 20
290
+ },
291
+ "id_inputs": [
292
+ {
293
+ "name": "theme",
294
+ "source": "body"
295
+ }
296
+ ],
297
+ "guards": [],
298
+ "data_ops": [
299
+ {
300
+ "op": "read"
301
+ }
302
+ ],
303
+ "needs_bola_audit": true
304
+ },
305
+ {
306
+ "route_id": "R-0063",
307
+ "method": [
308
+ "POST"
309
+ ],
310
+ "path": "/php-plain/profile.php",
311
+ "path_source": "declared",
312
+ "handler": {
313
+ "file": "php-plain/profile.php",
314
+ "line": 1
315
+ },
316
+ "id_inputs": [
317
+ {
318
+ "name": "nickname",
319
+ "source": "form"
320
+ },
321
+ {
322
+ "name": "role",
323
+ "source": "form"
324
+ }
325
+ ],
326
+ "guards": [],
327
+ "data_ops": [
328
+ {
329
+ "op": "read"
330
+ }
331
+ ],
332
+ "needs_bola_audit": true
333
+ },
334
+ {
335
+ "route_id": "R-0068",
336
+ "method": [
337
+ "POST"
338
+ ],
339
+ "path": "/php-plain/admin/settings.php",
340
+ "path_source": "declared",
341
+ "handler": {
342
+ "file": "php-plain/admin/settings.php",
343
+ "line": 1
344
+ },
345
+ "id_inputs": [
346
+ {
347
+ "name": "value",
348
+ "source": "form"
349
+ },
350
+ {
351
+ "name": "name",
352
+ "source": "form"
353
+ }
354
+ ],
355
+ "guards": [],
356
+ "data_ops": [
357
+ {
358
+ "op": "read"
359
+ }
360
+ ],
361
+ "needs_bola_audit": true
362
+ },
363
+ {
364
+ "route_id": "R-0060",
365
+ "method": [
366
+ "GET"
367
+ ],
368
+ "path": "/php-plain/mongo_find.php",
369
+ "path_source": "declared",
370
+ "handler": {
371
+ "file": "php-plain/mongo_find.php",
372
+ "line": 1
373
+ },
374
+ "id_inputs": [
375
+ {
376
+ "name": "login",
377
+ "source": "query"
378
+ },
379
+ {
380
+ "name": "pass",
381
+ "source": "query"
382
+ },
383
+ {
384
+ "name": "n",
385
+ "source": "query"
386
+ }
387
+ ],
388
+ "guards": [],
389
+ "data_ops": [
390
+ {
391
+ "op": "read"
392
+ }
393
+ ],
394
+ "needs_bola_audit": true
395
+ }
396
+ ],
397
+ "rejected": []
398
+ }
@@ -0,0 +1,63 @@
1
+ {
2
+ "routes": [
3
+ {
4
+ "route_id": "R-0064",
5
+ "method": [
6
+ "ANY"
7
+ ],
8
+ "path": "/php-plain/register.php",
9
+ "path_source": "declared",
10
+ "handler": {
11
+ "file": "php-plain/register.php",
12
+ "line": 1
13
+ },
14
+ "id_inputs": [
15
+ {
16
+ "name": "id",
17
+ "source": "path"
18
+ }
19
+ ],
20
+ "guards": [],
21
+ "data_ops": [
22
+ {
23
+ "op": "read"
24
+ }
25
+ ],
26
+ "needs_bola_audit": true
27
+ },
28
+ {
29
+ "route_id": "R-0065",
30
+ "method": [
31
+ "GET"
32
+ ],
33
+ "path": "/php-plain/search.php",
34
+ "path_source": "declared",
35
+ "handler": {
36
+ "file": "php-plain/search.php",
37
+ "line": 1
38
+ },
39
+ "id_inputs": [
40
+ {
41
+ "name": "q",
42
+ "source": "query"
43
+ },
44
+ {
45
+ "name": "sort",
46
+ "source": "query"
47
+ },
48
+ {
49
+ "name": "cat",
50
+ "source": "query"
51
+ }
52
+ ],
53
+ "guards": [],
54
+ "data_ops": [
55
+ {
56
+ "op": "read"
57
+ }
58
+ ],
59
+ "needs_bola_audit": true
60
+ }
61
+ ],
62
+ "rejected": []
63
+ }
@@ -0,0 +1,106 @@
1
+ {
2
+ "per_category": {
3
+ "bola": {
4
+ "truth_vulnerable": 29,
5
+ "found": 23,
6
+ "recall": 0.793,
7
+ "false_positive_on_safe_code": [],
8
+ "missed": [
9
+ "perl-cgi/cgi-bin/order.cgi:13",
10
+ "perl-cgi/cgi-bin/order.cgi:19",
11
+ "dotnet-legacy/Web/Orders/OrderDetail.aspx.cs:13",
12
+ "dotnet-legacy/Web/Controllers/InvoiceController.cs:13",
13
+ "classic-asp/shop/order.asp:6",
14
+ "coldfusion/app/order.cfm:3"
15
+ ]
16
+ },
17
+ "injection": {
18
+ "truth_vulnerable": 34,
19
+ "found": 29,
20
+ "recall": 0.853,
21
+ "false_positive_on_safe_code": [],
22
+ "missed": [
23
+ "java-legacy/src/com/acme/web/OrderServlet.java:15",
24
+ "java-legacy/src/com/acme/web/OrderServlet.java:17",
25
+ "java-legacy/src/com/acme/mapper/OrderMapper.xml:9",
26
+ "dotnet-legacy/Web/Controllers/InvoiceController.cs:28",
27
+ "php-codeigniter/application/controllers/Invoice.php:10"
28
+ ]
29
+ },
30
+ "bfla": {
31
+ "truth_vulnerable": 10,
32
+ "found": 6,
33
+ "recall": 0.6,
34
+ "false_positive_on_safe_code": [],
35
+ "missed": [
36
+ "php-plain/manage_users.php:6",
37
+ "dotnet-legacy/Web/Controllers/AdminController.cs:15",
38
+ "node-express/routes/admin.js:9",
39
+ "node-express/routes/admin.js:17"
40
+ ]
41
+ },
42
+ "mass_assignment": {
43
+ "truth_vulnerable": 15,
44
+ "found": 10,
45
+ "recall": 0.667,
46
+ "false_positive_on_safe_code": [],
47
+ "missed": [
48
+ "php-plain/profile.php:6",
49
+ "php-plain/profile.php:10",
50
+ "dotnet-legacy/Web/Controllers/CustomerController.cs:12",
51
+ "dotnet-legacy/Web/Controllers/CustomerController.cs:30",
52
+ "node-express/routes/profile.js:8"
53
+ ]
54
+ }
55
+ },
56
+ "active_findings": 94,
57
+ "matched_findings": 69,
58
+ "precision": 0.734,
59
+ "unmatched_findings": [
60
+ "BFLA-R-0003-1",
61
+ "BFLA-R-0063-1",
62
+ "BOLA-R-0007-1",
63
+ "BOLA-R-0008-1",
64
+ "BOLA-R-0009-1",
65
+ "BOLA-R-0010-1",
66
+ "BOLA-R-0011-1",
67
+ "BOLA-R-0020-1",
68
+ "BOLA-R-0022-1",
69
+ "BOLA-R-0023-1",
70
+ "BOLA-R-0024-1",
71
+ "BOLA-R-0029-1",
72
+ "BOLA-R-0030-1",
73
+ "BOLA-R-0031-1",
74
+ "BOLA-R-0032-1",
75
+ "BOLA-R-0035-1",
76
+ "BOLA-R-0041-1",
77
+ "BOLA-R-0047-1",
78
+ "BOLA-R-0048-1",
79
+ "BOLA-R-0049-1",
80
+ "BOLA-R-0050-1",
81
+ "BOLA-R-0060-1",
82
+ "BOLA-R-0071-1",
83
+ "BOLA-R-0072-1",
84
+ "BOLA-R-0043-verdict"
85
+ ],
86
+ "needs_review_not_scored": [],
87
+ "verdict_level": {
88
+ "bfla": {
89
+ "truth_vulnerable": 10,
90
+ "found": 8,
91
+ "recall": 0.8,
92
+ "flagged_safe": [],
93
+ "missed": [
94
+ "dotnet-legacy/Web/Controllers/AdminController.cs:15",
95
+ "node-express/routes/admin.js:9"
96
+ ]
97
+ },
98
+ "mass_assignment": {
99
+ "truth_vulnerable": 15,
100
+ "found": 15,
101
+ "recall": 1.0,
102
+ "flagged_safe": [],
103
+ "missed": []
104
+ }
105
+ }
106
+ }