Habr•September 13, 2026•🇷🇺Translated from Russian

Can IDOR Vulnerabilities Be Found Through Static Analysis? New Python Kernel Aims to Answer the Question

A researcher has released a static analysis module designed to detect IDOR (Insecure Direct Object Reference) vulnerabilities in Python web applications by analyzing data flow rather than relying on heuristics.

The project addresses a long-standing question: whether IDOR flaws can be identified statically by tracing the connection between a user-supplied identifier, the retrieved object, and any authorization check that must dominate the access path.

IDOR occurs when an application exposes direct references to objects without verifying that the current user is authorized to access them. Classic examples include Flask routes that accept an invoice_id parameter and fetch the record with Invoice.query.get(invoice_id) after only a @login_required decorator, allowing any authenticated user to enumerate other users’ invoices.

The new module parses project sources to locate HTTP handlers across Django, DRF, Flask, and FastAPI. It then builds a protocol of inputs, data accesses, and checks for each handler. Values are labeled using the SIAOD system: SUBJECT for the authenticated user, INPUT for ordinary request data, ATTACKER_SELECTED for identifiers that select specific objects, OBJECT for records retrieved from storage, and DYNAMIC for values whose origin cannot be determined statically.

Unlike conventional taint analysis, the engine requires that an authorization check both references the exact OBJECT reached via an ATTACKER_SELECTED identifier and dominates the code path that returns or uses that object. Checks in unrelated branches, checks performed after the object has already been returned, or checks that compare a different object are all rejected.

Evaluation on 150 small open-source repositories produced 112 findings, of which 48 were confirmed true positives. On 15 production codebases totaling 12 million lines, the tool reported 731 findings but only five were genuine; the remainder stemmed from authorization logic implemented in routers, dependencies, or external RBAC frameworks rather than inside individual handlers.

The author concludes that while mathematical tracking of object ownership is possible, real-world authorization patterns frequently place the decisive checks outside the analyzed handler scope, limiting the precision of purely static approaches today.

Related articles

Habr•Vulnerabilities & Exploits

Browser Built on Mistakes: How Real-World Attacks Shaped Modern Browser Defenses

Browser security features such as process isolation, sandboxing, and restrictions on code execution were not designed in isolation but evolved directly in response to concrete attacks over more than a decade. Early threats like malicious Flash advertisements in 2015 demonstrated how a single compromised banner could compromise an entire system, prompting the industry to phase out plugins entirely. Later discoveries, including the Spectre vulnerability, forced browsers to implement stricter site isolation and timing-attack mitigations that remain in place today. Session hijacking and malicious browser extensions further drove the adoption of stronger cookie protections and permission models. BI.ZONE analysts trace this history through specific incidents to show why current architectures prioritize separation of sites into distinct processes. The resulting design reduces the blast radius of any single exploit and continues to adapt as new attack classes emerge.

Securitylab•Vulnerabilities & Exploits

cKEV Index Launches to Prioritize Vulnerabilities as AI Accelerates Exploit Development

CyberOK has introduced the open cKEV Index, a catalog of high-priority vulnerabilities ranked by the Urgent Patch Score (UPS) methodology. The index incorporates timelines of events such as exploit publication, proof-of-concept releases, and confirmed attacks to help organizations prioritize patching under resource constraints. It addresses the growing gap between rapid AI-assisted vulnerability discovery and slower remediation processes at both vendors and customers. Examples from Anthropic reports highlight how threat actors used AI agents for reconnaissance, code analysis, and exploit development against Android apps and web applications. Microsoft and Oracle have publicly linked increased vulnerability findings and larger patch releases to AI tooling. The UPS framework defines progressive phases from Radar to Emergency/IR, allowing teams to act on strong signals without waiting for full confirmation. An open version of the catalog is now available with detailed event histories for Urgent Patch and Emergency stages.

Security NEXT•Vulnerabilities & Exploits

Apache HTTP Server 2.4.69 Patches 20 Vulnerabilities Including CVSS 9.8 Issues

The Apache HTTP Server development team released version 2.4.69 on October 1, 2026, addressing a total of 20 vulnerabilities. While the Apache Security Team assessed most issues as moderate or low in impact, several vulnerabilities received CVSS base scores as high as 9.8. The update includes fixes for stack-based buffer overflows, use-after-free conditions, and out-of-bounds writes affecting multiple modules. No vulnerabilities were rated Critical or Important by the developers, with five classified as Moderate and fifteen as Low. Specific fixes cover the mod_vhost_alias, mod_http2, mod_dav, and mod_dav_fs modules, along with Windows-specific path handling problems.

Hispasec•Vulnerabilities & Exploits

BrokenPipe PoC Exploits Steam Client Service for Silent SYSTEM Privilege Escalation on Windows

A new proof-of-concept named BrokenPipe demonstrates how a standard Windows user can escalate privileges to NT AUTHORITY\SYSTEM through the Steam Client Service without requiring administrator credentials or triggering a UAC prompt. The vulnerability stems from insufficient signature validation in VDF installation scripts processed by steamservice.exe, allowing an attacker to control the execution path of a malicious script. The issue affects Steam version 10.96.30.42 on both Windows 10 and Windows 11, though no public CVE has been assigned yet. Valve was notified of the flaw in March, several months prior to public disclosure. The attack is strictly local and requires initial code execution under a standard user account, making it relevant for shared or corporate environments. Security teams are advised to inventory Steam installations, apply application allowlisting, and monitor for anomalous SYSTEM-level processes linked to the service while awaiting an official patch.