sicario-red-team 0.5.6 → 0.5.7

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sicario-red-team",
3
- "version": "0.5.6",
3
+ "version": "0.5.7",
4
4
  "type": "module",
5
5
  "description": "Autonomous Agentic Red-Teaming Swarm Protocol",
6
6
  "repository": {
@@ -41,6 +41,11 @@ export async function runBreacher(elements, personaType = 'GENERAL') {
41
41
  You are a specialized node in the Sicario Autonomous Swarm.
42
42
  ${personaContext}
43
43
 
44
+ ### VULNERABILITY TARGETING:
45
+ Pay special attention to inputs where type='hidden' or marked as isHighValueTarget.
46
+ These often control critical business logic like pricing, user IDs, or privilege levels.
47
+ Hunt for logic flaws by attempting to mutate these hidden values (e.g., set price/quantity to 0 or negative, change account roles to 'admin', or swap user session IDs).
48
+
44
49
  ### PHASE 1: REASONING (THINK OUT LOUD)
45
50
  Before providing JSON, analyze the DOM elements according to your specific persona.
46
51
 
@@ -82,12 +82,18 @@ export async function runScout(url, options = {}) {
82
82
  const extracted = [];
83
83
 
84
84
  elements.forEach((el) => {
85
- if (el.offsetWidth > 0 && el.offsetHeight > 0) {
85
+ // Scraping visibility check: visible elements OR high-value hidden inputs
86
+ const isHiddenInput = el.tagName === 'INPUT' && el.type === 'hidden';
87
+ const isVisible = el.offsetWidth > 0 && el.offsetHeight > 0;
88
+
89
+ if (isVisible || isHiddenInput) {
86
90
  extracted.push({
87
91
  tag: el.tagName.toLowerCase(),
88
92
  id: el.id || null,
89
93
  name: el.name || null,
90
94
  type: el.type || null,
95
+ value: el.value || null,
96
+ isHighValueTarget: isHiddenInput && el.value !== '',
91
97
  text: el.innerText ? el.innerText.trim().substring(0, 50) : null,
92
98
  href: el.href || null
93
99
  });