context safety score
A score of 36/100 indicates multiple risk signals were detected. This entity shows patterns commonly associated with malicious intent.
hidden instruction
high hidden content ratio detected in DOM
obfuscated code
AdShield script loaded from html-load.com uses heavy obfuscation with custom string scrambling, double percent-encoding, and base64 payloads. On load failure it triggers a confirm() social-engineering dialog and redirects users to report.error-report.com/modal via a full-viewport iframe overlay (z-index:2147483647). A setInterval payload wipes document.head.innerHTML and document.body.innerHTML if the error handler fires. (location: page.html line 633, <script async id="yIBaBaBm" src="https://html-load.com/loader.min.js">)
social engineering
The AdShield onload/onerror handler displays a browser confirm() dialog with the message 'There was a problem loading the page. Please click OK to learn more.' to trick users into clicking OK, which redirects them to report.error-report.com/modal — a third-party domain with no affiliation to artnews.com. This is a classic deceptive prompt designed to manufacture user consent for a redirect. (location: page.html line 633, onload/onerror attributes of AdShield script tag)
malicious redirect
If the user clicks OK on the confirm() dialog (or if the script errors), location.href is set to https://report.error-report.com/modal with the current URL, error details, and domain passed as query parameters. Separately, a full-screen iframe (100vw x 100vh, z-index:2147483647, position:fixed) is injected over the page pointing to the same domain, effectively hijacking the visible page. (location: page.html line 633, t='https://report.error-report.com/modal' inside AdShield onload handler)
obfuscated code
A second standalone script immediately following the AdShield block uses a custom positional-index string scrambler (index formula: 5737*(r+835)%t) to obfuscate all string literals at runtime. The decoded output drives further DOM manipulation and network calls. The obfuscation technique is designed to evade static analysis. (location: page.html line 634, <script data-cfasync="false" nowprocket>(async()=>{try{var e=e=>{const t=e.length;let o="";for(let r=0;r<t;r++){o+=e[5737*(r+835)%t]}...)
obfuscated code
The Admiral consent-wall script (class="pmc-admiral") uses double-percent-encoded strings to conceal the identifiers 'admiral' and 'googletag' (e.g. decodeURI(decodeURI('%256%31%25%36%34mi%72%61l')) => 'admiral'). While Admiral is a known adblock-wall vendor, the unnecessary double-encoding of well-known library names is an obfuscation pattern that complicates static analysis. (location: page.html line 362, <script class="pmc-admiral">)
curl https://api.brin.sh/domain/artnews.comCommon questions teams ask before deciding whether to use this domain in agent workflows.
artnews.com currently scores 36/100 with a suspicious verdict and low confidence. The goal is to protect agents from high-risk context before they act on it. Treat this as a decision signal: higher scores suggest lower observed risk, while lower scores mean you should add review or block this domain.
Use the score as a policy threshold: 80–100 is safe, 50–79 is caution, 20–49 is suspicious, and 0–19 is dangerous. Teams often auto-allow safe, require human review for caution/suspicious, and block dangerous.
brin evaluates four dimensions: identity (source trust), behavior (runtime patterns), content (malicious instructions), and graph (relationship risk). Analysis runs in tiers: static signals, deterministic pattern checks, then AI semantic analysis when needed.
Identity checks source trust, behavior checks unusual runtime patterns, content checks for malicious instructions, and graph checks risky relationships to other entities. Looking at sub-scores helps you understand why an entity passed or failed.
brin performs risk assessments on external context before it reaches an AI agent. It scores that context for threats like prompt injection, hijacking, credential harvesting, and supply chain attacks, so teams can decide whether to block, review, or proceed safely.
No. A safe verdict means no significant risk signals were detected in this scan. It is not a formal guarantee; assessments are automated and point-in-time, so combine scores with your own controls and periodic re-checks.
Re-check before high-impact actions such as installs, upgrades, connecting MCP servers, executing remote code, or granting secrets. Use the API in CI or runtime gates so decisions are based on the latest scan.
Learn more in threat detection docs, how scoring works, and the API overview.
Assessments are automated and may contain errors. Findings are risk indicators, not confirmed threats. This is a point-in-time assessment; security posture can change.
integrate brin in minutes — one GET request is all it takes. query the api, browse the registry, or download the full dataset.