CVE-2026-100190 is a stored cross-site scripting (XSS) vulnerability in the AIL Framework's crawler splash domain page (showDomain.html). Malicious JavaScript payloads can be injected via user-supplied data fields such as item IDs, URLs, and screenshot file paths originating from imported crawler captures. This vulnerability allows execution of arbitrary scripts in the context of users viewing the affected page, potentially leading to session hijacking or unauthorized actions. The flaw requires an attacker with user-role API client access to import crafted data, and triggers upon page rendering without additional user interaction.
CVE-2026-100187 is an input validation vulnerability in the Onion module of the AIL Framework. The module incorrectly validates .onion URLs by only checking for a fixed length and suffix, without proper hostname parsing. This flaw allows unauthenticated attackers who can publish content crawled by the framework to inject arbitrary non-onion URLs into the crawler's task queue. The vulnerability leads to loss of integrity in the crawler's target selection, potentially causing the crawler to access unintended network resources. No authentication or user interaction is required to exploit this issue.
CVE-2026-100177 is an authorization bypass vulnerability in the ail framework's crawler task creation API. It allows an authenticated user with permission to create crawler tasks to attach another organization's cookiejar by UUID without proper access checks. This can lead to unauthorized use of another organization's stored cookies and session data during web crawls, potentially exposing sensitive session tokens and authentication credentials.
CVE-2026-100176 is a stored cross-site scripting (XSS) vulnerability in the AIL Framework's username timeline feature. Usernames imported from external sources are stored without sanitization and rendered unsafely in the analyst's browser using D3's html() method. An attacker can craft a malicious username containing HTML event handlers that execute arbitrary JavaScript when an authenticated analyst hovers over the timeline entry. Exploitation requires the victim to be authenticated and interact with the malicious entry. This can lead to session hijacking, data exfiltration, or unauthorized actions within the analyst's session.
CVE-2026-100174 is a stored cross-site scripting (XSS) vulnerability in the AIL Framework's tag selector component. An authenticated user with permission to create custom tags can embed malicious JavaScript in a tag name. When another authenticated user views a page with the malicious tag, the script executes in their browser. This occurs because the tag name is inserted as raw HTML via jQuery's html property without proper sanitization. Exploitation can lead to arbitrary script execution within the application's origin, risking session hijacking and unauthorized data access.
The AIL Framework contains a stored cross-site scripting (XSS) vulnerability in two Jinja2 templates that render Bootstrap popovers. Dynamic values are directly interpolated into the data-content HTML attribute without proper encoding, allowing authenticated attackers to inject arbitrary HTML or JavaScript. This injected content executes in the victim's browser when viewing the affected popovers, potentially enabling data exfiltration or actions with the victim's privileges. The vulnerability affects matched, tracked, or tagged content and is classified as stored XSS due to persistence of the malicious payload.
AIL Framework versions before 7.0 contain a server-side request forgery (SSRF) vulnerability in the crawler submission feature. Authenticated users with low privileges can submit arbitrary URLs for crawling without sufficient validation, allowing requests to internal or restricted network addresses. This includes localhost, private IP ranges, link-local addresses, and cloud metadata services. The vulnerability enables attackers to use the server as a pivot to access internal services and retrieve sensitive data such as HTML content, screenshots, and HAR data. A patch has been introduced to validate and reject URLs resolving to non-global IP addresses, mitigating this risk.
AIL Project's ail-framework contains a stored cross-site scripting (XSS) vulnerability in the translation controls for chat messages and forum posts. The vulnerability arises because message and post identifiers are inserted directly into inline JavaScript onclick handlers without proper encoding for JavaScript string literals. This allows an attacker to inject arbitrary JavaScript code if a specially crafted identifier is used. Exploitation requires a victim to click the affected translation button, causing the injected script to execute in the victim's browser under the AIL instance's security context.
AIL Framework versions up to 7.0.0 contain a stored cross-site scripting (XSS) vulnerability in the crawler domain view. This flaw allows an attacker to inject malicious JavaScript into stored URLs that are later embedded unsafely into a JavaScript onclick handler. Exploitation requires an authenticated analyst to interact with the malicious screenshot entry, potentially enabling session information access or unauthorized actions within the application context. The vulnerability is due to improper input neutralization and was fixed by applying Jinja's tojson filter to safely escape the URL before insertion.
AIL Framework versions up to 7.0.0 contain a reflected cross-site scripting (XSS) vulnerability in the /tag/add_tags endpoint. The vulnerability occurs because error messages include attacker-controlled input directly in HTML responses without proper encoding. Exploitation requires an authenticated user to interact with a crafted link, potentially allowing execution of arbitrary JavaScript in the victim's browser within the application's security context. This could enable actions such as session hijacking or data modification based on the victim's privileges.
AIL Framework contains a path traversal vulnerability in its PDF object handling. Prior to commit 14c618fce4d1df02358717c48ea903706abecdf2, the PDF.get_filepath() function constructed a file path by joining the configured PDF storage directory with a path derived from a PDF object identifier, without verifying that the resolved path remained within the intended PDF_FOLDER directory.
An authenticated attacker able to invoke PDF object operations with a crafted identifier could use relative traversal sequences or absolute path components to cause AIL Framework to open files located outside the PDF storage directory. This could allow disclosure of files readable by the AIL process, including application configuration, credentials, or other sensitive local data. This vulnerability is potential due to additional errors before being able to be executed.
The fix canonicalises the resulting path with os.path.realpath() and rejects paths whose common directory is outside the configured PDF directory.
AIL did not restrict repeated failed attempts to verify a two-factor authentication (OTP) code. An attacker who had reached the 2FA verification step, such as after successfully completing the password-authentication stage, could submit an unlimited number of OTP guesses. This could enable brute-force guessing of a valid code and bypass the intended second authentication factor, resulting in unauthorized account access.
The patch introduces per-user failed-OTP tracking, blocks verification after 30 failed attempts for one hour, clears the counter after a successful OTP verification, and provides administrator recovery actions to purge affected lockouts.
A path traversal vulnerability exists in AIL Framework before the release containing commit 0041456af25da0cdea1c1c4624e46baff2731d8f. An authenticated AIL user can supply crafted object identifiers through the investigation workflow to cause file paths to resolve outside the intended image, favicon, or screenshot storage directories. This may allow the attacker to download and read arbitrary files that are accessible to the AIL process.
The issue occurs because user-controlled path components were joined with application storage paths without verifying that the resolved path remained within the expected directory. The affected download functionality could then include the contents of such files in a generated archive.
AIL framework contains a path traversal vulnerability in the /objects/item/diff endpoint. The endpoint accepts item identifiers through the s1 and s2 query parameters and, prior to the fix, attempted to retrieve and compare item contents without first verifying that both referenced items existed as valid AIL objects.
An authenticated AIL user could craft malicious item identifiers containing path traversal sequences to cause the application to read gzip-compressed files accessible to the AIL process. This could result in unauthorized disclosure of local file contents, limited to files readable by the application and compatible with the expected gzip-compressed item format.
The issue was fixed by validating that both requested items exist before their contents are accessed.
A stored cross-site scripting (XSS) vulnerability exists in ail-framework versions prior to 6.8. The issue occurs in the modal item preview functionality when processing item content longer than 800 characters. Attacker-controlled content is returned without an explicit text/plain content type, allowing browsers to interpret it as active HTML and execute arbitrary JavaScript in the context of an authenticated user. This vulnerability has a high severity score of 8.5 and is fixed in version 6.8.