@cyberstrike-io/sdk 1.1.17-beta.5 → 1.1.17-beta.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/dist/v2/gen/types.gen.d.ts +79 -0
- package/package.json +1 -1
|
@@ -1515,6 +1515,84 @@ export type ServerConfig = {
|
|
|
1515
1515
|
*/
|
|
1516
1516
|
cors?: Array<string>;
|
|
1517
1517
|
};
|
|
1518
|
+
/**
|
|
1519
|
+
* Route outbound traffic through a proxy
|
|
1520
|
+
*/
|
|
1521
|
+
export type ProxyConfig = {
|
|
1522
|
+
/**
|
|
1523
|
+
* Proxy server URL including the scheme, e.g. "http://127.0.0.1:8080". SOCKS ("socks5://...") works ONLY for the crawler browser and only without credentials — replayed requests cannot use a SOCKS proxy, so prefer http for full coverage
|
|
1524
|
+
*/
|
|
1525
|
+
url?: string;
|
|
1526
|
+
/**
|
|
1527
|
+
* Turn the proxy off without deleting the config. Defaults to true when `url` is set
|
|
1528
|
+
*/
|
|
1529
|
+
enabled?: boolean;
|
|
1530
|
+
/**
|
|
1531
|
+
* Proxy credentials, sent as Basic. Use {env:VAR} to keep the password out of the config file. Not supported with a SOCKS proxy, and NTLM/Negotiate proxies cannot be satisfied — a 407 from those is reported as such rather than retried
|
|
1532
|
+
*/
|
|
1533
|
+
auth?: {
|
|
1534
|
+
username: string;
|
|
1535
|
+
password: string;
|
|
1536
|
+
};
|
|
1537
|
+
/**
|
|
1538
|
+
* Hosts that skip the proxy. Accepts a bare host or a "*.example.com" wildcard. Loopback also skips it unless `includeLoopback` says otherwise
|
|
1539
|
+
*/
|
|
1540
|
+
bypass?: Array<string>;
|
|
1541
|
+
/**
|
|
1542
|
+
* Send localhost traffic through the proxy too, so a target on 127.0.0.1 can be tested through it. Off by default. This is all-or-nothing — it covers CyberStrike's own local traffic as well, so it only makes sense when the proxy runs on this machine; an external proxy cannot reach back here
|
|
1543
|
+
*/
|
|
1544
|
+
includeLoopback?: boolean;
|
|
1545
|
+
/**
|
|
1546
|
+
* Also route CyberStrike's OWN outbound traffic through the proxy — LLM/provider API calls, the OAuth token refreshes that keep them alive, and the rest of its HTTP. Off by default: when on, whoever operates the proxy can read the API keys and tokens in those requests. Traffic aimed at the target is proxied by `url` alone and is not affected by this
|
|
1547
|
+
*/
|
|
1548
|
+
includeInternal?: boolean;
|
|
1549
|
+
};
|
|
1550
|
+
export type ClientCertificateConfig = {
|
|
1551
|
+
/**
|
|
1552
|
+
* Host this certificate is used for. Give "host:port" to scope it to one port
|
|
1553
|
+
*/
|
|
1554
|
+
host: string;
|
|
1555
|
+
/**
|
|
1556
|
+
* Path to the client certificate (PEM)
|
|
1557
|
+
*/
|
|
1558
|
+
certPath?: string;
|
|
1559
|
+
/**
|
|
1560
|
+
* Path to the private key (PEM)
|
|
1561
|
+
*/
|
|
1562
|
+
keyPath?: string;
|
|
1563
|
+
/**
|
|
1564
|
+
* Path to a PFX/PKCS#12 bundle, instead of certPath + keyPath
|
|
1565
|
+
*/
|
|
1566
|
+
pfxPath?: string;
|
|
1567
|
+
/**
|
|
1568
|
+
* Passphrase for the key or PFX. Use {env:VAR}
|
|
1569
|
+
*/
|
|
1570
|
+
passphrase?: string;
|
|
1571
|
+
};
|
|
1572
|
+
/**
|
|
1573
|
+
* TLS trust and client-certificate settings for outbound traffic
|
|
1574
|
+
*/
|
|
1575
|
+
export type TlsConfig = {
|
|
1576
|
+
/**
|
|
1577
|
+
* Path to an extra CA certificate to trust (PEM) — e.g. an intercepting proxy's CA. Preferred over turning verification off. Note: this applies to replayed requests; the browser trusts the OS store instead
|
|
1578
|
+
*/
|
|
1579
|
+
caPath?: string;
|
|
1580
|
+
/**
|
|
1581
|
+
* Verify TLS certificates for outbound requests. Unset leaves the pentest-friendly default in place: both the crawler and http_replay accept invalid or self-signed certificates, since targets routinely have them and an intercepting proxy always does. Set true for strict checking — note the crawler browser cannot use caPath for that (Chromium trusts the OS store), so an intercepting proxy's CA must be installed there. A per-call insecure_tls still overrides this for that one call
|
|
1582
|
+
*/
|
|
1583
|
+
rejectUnauthorized?: boolean;
|
|
1584
|
+
/**
|
|
1585
|
+
* Client certificates for mutual-TLS targets, matched per host. Applies to replayed requests only — the crawler browser cannot use them (Playwright hangs on every page load when they are set), so a mutual-TLS host cannot be crawled
|
|
1586
|
+
*/
|
|
1587
|
+
clientCertificates?: Array<ClientCertificateConfig>;
|
|
1588
|
+
};
|
|
1589
|
+
/**
|
|
1590
|
+
* Proxy and TLS settings for outbound traffic (crawler + replay engine)
|
|
1591
|
+
*/
|
|
1592
|
+
export type NetworkConfig = {
|
|
1593
|
+
proxy?: ProxyConfig;
|
|
1594
|
+
tls?: TlsConfig;
|
|
1595
|
+
};
|
|
1518
1596
|
export type PermissionActionConfig = "ask" | "allow" | "deny";
|
|
1519
1597
|
export type PermissionObjectConfig = {
|
|
1520
1598
|
[key: string]: PermissionActionConfig;
|
|
@@ -1818,6 +1896,7 @@ export type Config = {
|
|
|
1818
1896
|
diff_style?: "auto" | "stacked";
|
|
1819
1897
|
};
|
|
1820
1898
|
server?: ServerConfig;
|
|
1899
|
+
network?: NetworkConfig;
|
|
1821
1900
|
/**
|
|
1822
1901
|
* Command configuration, see https://cyberstrike.io/docs/commands
|
|
1823
1902
|
*/
|