Откриване на вграден зловреден софтуер за вашия легитимен домейн.
Стандартните защитни стени и скенери за произход пропускат експлойти на скриптове от трети страни. Нашият обхождащ робот изобразява вашия сайт като истински посетител на всеки пет минути, прихваща всеки изходящ домейн и извършва кръстосана проверка срещу 500+ злонамерени черни списъка — изпращайки на екипа ви пълно възпроизвеждане на криминални доказателства в момента, в който нещо е нередно.

Разберете дали вашият домейн хоства зловреден софтуер.
Въведете домейна, който искате да проверим. Ще извършим криминалистичен преглед за зловреден софтуер — скриптове от трети страни, инжектиран код, попадения в черни списъци, компрометирани зависимости — и ще ви преведем през всяко откритие по време на демонстрация на живо.
Преглед на сканиране — с ограничен брой заявки, не се съхраняват данни без съгласие.
Пет фази. На всеки пет минути. Всеки домейн, който притежавате.
“ExploitShield” не е скенер за контролни списъци — това е непрекъснато работещ, инструментализиран браузър, който преживява уебсайта ви така, както го прави действителен клиент. Ето какво точно се случва при всеки цикъл:
Иницииране
Безглавият (headless) Chromium работник наема вашия домейн от нашия разпределен планировчик на всеки 300 секунди. Всяко сканиране използва свеж контекст на браузъра с изчистени бисквитки, кеш и хранилище, така че винаги наблюдаваме това, което би видял напълно нов посетител.
Пълно рендиране на страница
Изпълняваме всеки скрипт на страницата точно както би го направил браузърът на реален клиент — синхронни тагове, асинхронни модули, отложени пакети, инжектирани партньори от таг мениджъри, мързеливо зареждани iframes и service workers. Server-side cloaking не може да се скрие от реален рендер.
Прихващане на мрежата
Всяка изходяща заявка — XHR, fetch, WebSocket, image beacon, script src, шрифт, stylesheet, iframe и prefetch — се улавя в регистър в HAR-стил с метод, хедъри, размер на отговора, MIME тип, инициаторски стек и време.
Кръстосана проверка със списък за блокиране
Всеки уникален домейн на трета страна се нормализира и съпоставя паралелно с над 500 списъка за блокиране: Spamhaus, URLhaus, OpenPhish, PhishTank, abuse.ch, MalwareBazaar, Feodo Tracker, ThreatFox, Maltrail, Quad9 и десетки други общностни и търговски източници, обновявани на всеки час.
Съдебна тревога
Ако бъде открит удар, ние изпращаме имейл в рамките на секунди, съдържащ проблемния домейн, иницииращия скрипт и номер на ред, пълната заявка/отговор, екранна снимка на рендираната страница, HAR файла и еднократен URL адрес за възпроизвеждане с едно щракване.
Дванадесет технически възможности, които не получавате от обикновен WAF.
Симулация на реален посетител
Headless Chromium с пълно изпълнение на JavaScript, шрифтове и оформление — не просто curl заявка, която пропуска всичко, което модерните уебсайтове правят.
Каданс от 5 минути
288 независими сканирания на ден, на домейн. Прозорците за откриване на скимиращи програми и злонамерени актуализации на тагове се затварят от дни до минути.
500+ Списъка за блокиране на злонамерени домейни
Spamhaus DBL, URLhaus, OpenPhish, PhishTank, abuse.ch, ThreatFox, Maltrail, Quad9 — агрегирани, дедупликирани и обновявани на всеки час.
Карта на връзките на трети страни
Каталогизираме всеки външен домейн, до който достига вашият сайт — анализи, CDN, шрифтове, рекламни технологии, A/B тестове, чат уиджети — и изваждаме на повърхността неочаквани новодошли.
Защита от Magecart и скимиране
Настроени евристики улавят скимиращи програми за платежни форми, които се крият зад мениджъри на тагове, фалшиви jQuery библиотеки или компрометирани WordPress плъгини.
Откриване на крипто-джекинг
Идентифицирайте неоторизирани браузърни миньори (наследници на Coinhive, WASM миньори), които се опитват да консумират процесора на вашите клиенти.
Видимост на веригата за доставки
Когато скрипт на доставчик от по-високо ниво незабелязано започне да извиква нов домейн, ще го видите в рамките на пет минути — много преди всеки цикъл на разкриване.
Пълно съдебно възпроизвеждане
Всеки сигнал включва HAR, екранна снимка, конзолен лог, проследяване на стека на инициатора и стабилен URL за възпроизвеждане, за да може вашият екип за разработка да валидира корекцията.
Имейл + Webhook известия
Нативно доставяне до входящата кутия, плюс уебхукове към Slack, Microsoft Teams, PagerDuty, Opsgenie или всяка HTTP крайна точка.
Нулева модификация на сайта
Не се изискват скрипт, агент, плъгин, промяна на DNS или достъп до сървър. Ние наблюдаваме точно това, което вижда публичен посетител извън вашия периметър.
Многопътно покритие
Дефинирайте множество URL шаблони на домейн — начална страница, каса, вход, /admin, публикация в блог — така че да покрием повърхностите, които всъщност носят риск.
Гео-разпределени сонди
Сканиранията произхождат от точки за наблюдение в САЩ, ЕС и APAC, за да уловят гео-насочени полезни товари, които се задействат само за конкретни региони на посетители.

Над 500 глобални черни списъци. Синхронизирани на всеки час. Дедупликирани автоматично.
Зловредните домейни се сменят по-бързо, отколкото всеки един доставчик може да проследи. Ние събираме сигнали от търговски източници за заплахи, тракери от общности с отворен код, репутация на DNS ниво и наши собствени примамки за обхождане, за да покрием цялата атакуваща повърхност — така че не е нужно да се абонирате за двадесет различни услуги.
Истински Chromium. Истински DevTools Protocol. Не е хедлес стъб.
Обхождащият робот е пълен chromium.exe инстанция, управлявана чрез Chrome DevTools Protocol — не HTTP изчислител, не JS интерпретатор, не регулярен израз над вашия HTML. Преди изпълнението на скрипт на страницата, ние инжектираме инструментален шейм, който обгръща точно API-тата на браузъра, които злоупотребяват с полезни товари на зловреден софтуер, и записваме всяко място на извикване, аргумент и стек в паметта.
Пълно изпълнение на JavaScript
Всеки скрипт работи така, както би работил за реален посетител — синхронни тагове, асинхронни модули, динамичен import(), eval, конструкторът на функции, setTimeout(string), WebAssembly. Без бързи интерпретаторни команди, без regex преминавания през вашия HTML.
- ›eval / new Function()
- ›setTimeout(string)
- ›динамичен import()
- ›WebAssembly
- ›ServiceWorker
Инструментация на DOM
Преди да се изпълни който и да е скрипт на страницата, ние инсталираме мониторингов шаб, който обхваща всеки браузърен API, който обикновено се използва от зловредно натоварване — и записва мястото на повикването, аргументите и проследяването на стека в регистър в паметта.
- ›window.open / location.assign / replace
- ›document.write / writeln
- ›innerHTML setter / iframe.srcdoc setter
- ›appendChild / insertBefore / setAttribute
- ›script.src / iframe.src / anchor.href setter
- ›fetch / XMLHttpRequest.open+send / sendBeacon
- ›WebSocket / EventSource / Worker / SharedWorker
- ›navigator.serviceWorker.register
- ›navigator.clipboard / getUserMedia / RTCPeerConnection
- ›canvas.toDataURL / getImageData (отпечатване)
- ›Notification.requestPermission
MutationObserver на корена на документа
Наблюдател на живо маркира всеки динамично добавен <script>, <iframe>, <object>, <embed>, <form>, <a> и <link> след зареждане на страницата — така че DOM инжекцията след рендиране от таг мениджъри и скимери се улавя в момента, в който се появи.
- ›<script>
- ›<iframe>
- ›<object>
- ›<embed>
- ›<form>
- ›<a>
- ›<link>
Всеки байт от всяка заявка, прихванат по кабел.
Опционален MITM слой работи като съседен процес със собствен краткотраен CA, прихваща всеки HTTP и HTTPS поток, издаден от Chromium, и записва структурирани записи за всяка сесия proxy_flows.jsonl. Това е доказателствената основа зад всяко предупреждение — когато казваме, че домейн на трета страна е доставил полезен товар, ние разполагаме с пълната заявка, отговор, заглавки, бисквитки и съдържание, за да го докажем.
- Заглавки
- Пълни списъци със заглавки на заявки и отговори — без обобщения. Всяка бисквитка, Set-Cookie, Authorisation, персонализирана заглавка.
- Тела
- SHA-256, размер в байтове, декодирана извадка и опционално запазени двоични файлове за HTML, JS, JSON, XML, WASM и всяко изпълнимо разширение.
- Бисквитки
- Анализирани както от Cookie, така и от Set-Cookie, включително SameSite, HttpOnly, Secure, Domain, Path, Expires, Max-Age.
- Произход
- Инициатор, референт, верига за пренасочване, време на заявка/отговор, статус на горна/под рамка.
- TLS
- mitmproxy CA в движение, доверен само от краулера. HTTPS тела се дешифрират по време на процеса — никога на диск в обикновен текст.
- QUIC деактивиран
- Chromium се стартира с --disable-quic и proxy-bypass <-loopback>, принуждавайки всеки байт през слоя за прихващане.
{
"flow_id": "fl_00471_8a3c",
"ts": "2026-05-14T14:05:01.882Z",
"method": "POST",
"url": "https://api.malicious-cdn.ru/c.php",
"initiator": "/static/tag-mgr.js:442",
"request": {
"headers": [...18 entries],
"body": { "size": 1248, "sha256": "9f1e…", "sample": "{\"d\":\"BASE64…\"}" }
},
"response": {
"status": 200,
"headers": [...11 entries],
"set_cookie": [{ "name":"sid", "samesite":"None", "secure":true }],
"body": { "size": 412, "sha256": "21ab…", "path": "bodies/fl_00471_resp.bin" }
},
"tls": { "intercepted": true, "ca": "ephemeral_session_ca" },
"verdict": { "blocklist": "URLhaus", "severity": "Critical" }
}Всеки поток се проверява от два независими наблюдателя.
Обхождащият робот улавя всяка заявка два пъти — веднъж от Chromium чрез DevTools Protocol и веднъж извън него чрез MITM проксито. Записите се обединяват в canonical_flow с correlation_score от 0 до 100. Всичко, видяно само по един канал — заявка, издадена от браузъра, но проксито не я видяло, или байтове по кабела, които браузърът отказва да приеме — автоматично се счита за подозрително и се извежда за преглед.
- canonical_id
- Стабилен хеш за заявка, който обединява записа на CDP и записа на MITM прокси в един общ поток.
- seen_by_cdp / seen_by_proxy
- Двуизточниково потвърждение. Поток, видян само от един канал, е подозрителен по конструкция.
- correlation_score
- 0–100. 90+ = двата канала са съгласни относно URL, метод, статус, SHA256 на тялото, верига за пренасочване.
- redirect_chain
- Всяка 30x връзка с from_url, to_url, статус, заглавки и преход на регистрируем домейн.
- body_sha256
- Отпечатък на тялото на отговора, споделен с конвейерите за деобфускация, подпис и разлики.
- initiator
- Тип (parser / script / preload / other) и пълен JS стек, когато е наличен.
{
"canonical_id": "700dca22c573c544",
"url": "https://home.abv.bg/",
"initial_url": "https://abv.bg/",
"method": "GET",
"response_status": 200,
"mime_type": "text/html",
"seen_by_cdp": true,
"seen_by_proxy": true,
"correlation_score": 90,
"redirect_chain": [
{ "from_url": "https://abv.bg/",
"to_url": "https://home.abv.bg/",
"status": 301 }
],
"body_sha256": "6708fc5e26f88bcee00fa8b994e65e6cd98fbc228…",
"initiator": { "type": "other" }
}Всяка заявка е проследена до фрейма и стека за извикване на JS, който я е издал.
Краулърът възстановява пълната йерархия на Chromium фреймове и отбелязва всяка прихваната заявка с нейния произход frame_id, parent_id, и флаг дали фреймът е на трета страна спрямо топ документа. Всяка мрежова заявка също носи пълния си V8 инициаторен стек — имена на функции, идентификатори на скриптове, номера на редове и колони — така че когато злонамерена заявка се задейства, предупреждението сочи към точния скрипт и точния ред, който я е причинил, а не просто към URL адреса.
- frame_id
- Стабилен идентификатор на Chromium рамка – всяка заявка се приписва обратно на точната рамка, която я е издала.
- parent_id
- Връзка към родителска рамка – възстановява пълната верига за влагане на iframe от основния документ до рекламните слотове.
- external_to_page
- True, когато регистрируемият домейн на рамката се различава от този на основния документ – отбелязва iframes на трети страни чрез конструкция.
- requests[]
- Запис на заявки за всяка рамка: request_id, url, resource_type, външен флаг – свързва се със записи на canonical_flow.
{
"request_id": "489310B50F204290B55C9F21C03045F5",
"url": "https://img.abv.bg/e/s/counters.html?v=2.2",
"initiator_type": "script",
"call_frames": [
{ "functionName": "wrapped",
"scriptId": "6",
"lineNumber": 36, "columnNumber": 24 },
{ "functionName": "",
"url": "https://home.abv.bg/js/main.min.js?v=2.0",
"lineNumber": 4724, "columnNumber": 15 }
],
"initiator_domains": ["home.abv.bg"]
}- initiator_typeparser / script / preload / other / signal — причината, докладвана от V8, поради която заявката е издадена.
- initiator_urlURL адрес на скрипта, който е предизвикал заявката, когато initiator_type = script.
- line / columnТочна позиция на източника в скрипта на инициатора за заявки, издадени от парсера.
- call_frames[]Пълен JS стек на извиквания: functionName, scriptId, url, lineNumber, columnNumber за всяка рамка.
- initiator_domainsДедупликиран списък на регистрируеми домейни по целия стек за извикване – излага дълги вериги от доставчици.
Сертификатна верига и заглавки за сигурност, прихванати на отговор.
Всяко TLS ръкостискане се записва до шифровия комплект, ALPN, пълната верига на издател, прозореца за валидност и стабилен сертификатен отпечатък. Всеки отговор се анализира за заглавки за сигурност — clickjacking, CORS, CORP/COOP/COEP, HSTS, CSP, Permissions-Policy — така че тиха промяна на позицията на хост на трета страна се отбелязва в цикъла, в който се случи.
- SNI
- Server Name Indication, изпратено от обхождащия робот — потвърждава действителното име на хоста, към което е адресирано TLS ръкостискането.
- ALPN
- Договорен протокол (h2 / http/1.1) — извежда скрити понижения на HTTP/2 до HTTP/1.1.
- Cipher
- Пълно име на набора от шифри (напр. TLS_AES_256_GCM_SHA384). Слабите набори се отбелязват.
- Issuer chain
- C / O / OU / CN на издаващия CA, плюс сериен номер и период на валидност (notbefore → notafter).
- Subject + SANs
- Всички регистрирани алтернативни имена на субекта — открива твърде широки сертификати и неочаквани свързвания на имена на хостове.
- Cert sha256
- Стабилен отпечатък за всеки краен сертификат. Закрепен между изпълненията за откриване на скрито преиздаване или заместване.
- X-Frame-OptionsDENY / SAMEORIGIN на отговор — риск от clickjacking.
- Content-Security-PolicyПълно анализиране на директиви — отклонение на script-src / frame-src / connect-src от базата.
- Strict-Transport-Securitymax-age, includeSubDomains, наличност на preload.
- Cross-Origin-Resource-Policysame-site / same-origin / cross-origin за актив.
- Cross-Origin-Opener-PolicyПрилагане на изолация на прозореца.
- Cross-Origin-Embedder-PolicyДоговор за междупроизходна изолация.
- Referrer-PolicyКласификация на изтичането на изходящ реферер.
- Permissions-PolicyОграничаване на функции (камера, микрофон, геолокация, плащане).
DNS, обратен DNS, сертификати, ентропия, откриване на хомографи – по домейн, по IP.
Всеки домейн на трета страна, видян по време на сканиране, е обогатен с независимо DNS разрешаване, търсения на PTR записи, пълни метаданни на TLS сертификат, Шанон ентропия на регистрируемия етикет, флагове за смесени скриптове и латиница-кирилица хомографи, и класификация на доставчик (large_provider / cdn / hosting / unknown). Всеки наблюдаван IP адрес след това се запитва паралелно срещу ThreatFox и ismalicious, като резултатите се кешират и сливат.
- observed_ips
- Отдалечени IP адреси, с които прокси сървърът действително е извършил транзакции по време на сканирането — потвърден контакт по мрежата.
- resolved_ips
- Независима DNS резолюция от хоста на обхождащия софтуер — улавя DNS rebinding и split-horizon отговори.
- reverse_dns
- PTR търсене за всеки IP — показва 1e100.net, cloudflare, fastly, шаблони за именуване на анонимни VPS.
- certificates[]
- Сертификат за лист за всяко ръкостискане: sni, alpn, cipher, subject, issuer, serial, прозорец на валидност, sha256, пълен списък със SAN.
- punycode_homograph_flags
- IDN / смесен скрипт / подобни латино-кирилски хомографни откривания на всеки видян домейн.
- domain_entropy
- Ентропия на Шенон на регистрируемия етикет — отбелязва алгоритмично генерирани DGA имена на хостове.
- provider_classification
- large_provider / cdn / hosting / unknown — отделя шума от Google/Cloudflare/Fastly от инфраструктурата с дълга опашка.
{
"observed_ips": ["142.251.127.84"],
"reverse_dns": { "142.251.127.84":
"lcfrai-in-f84.1e100.net" },
"cert.cn": "accounts.google.com",
"cert.issuer": "Google Trust Services / WE2",
"cert.sha256": "b2b9e2b69263b1a1c4e3a390…",
"entropy": 3.366,
"homograph": [],
"provider": "large_provider"
}- ThreatFox (abuse.ch)Налична база данни с IOC — заявка по IP връща hit_count, max_confidence и съответните IOC записи.
- ismalicious.comAPI за репутация от множество източници — попадения в черния списък, OTX импулси, гео, ASN, класификация.
- Обединяване на присъдиmalicious = any(provider.malicious) — едно попадение с висока степен на достоверност е достатъчно, за да маркира IP адреса.
- TTL кешРезултати за всеки IP адрес, кеширани с изтичане на срока — предвидими разходи при 5-минутни каденции на сканиране.
Всяка бисквитка, класифицирана по отношение на сайта — никога по сурова стойност.
Обхождащият робот изброява всеки файл „бисквитка“, зададен по време на сканиране, от три независими източника — проксито Set-Cookie заглавка, слоя на CDP заявката и document.cookie — след това класифицира всяко едно по отношение на връзката между неговия domain и базовия адрес на сайта. Стойностите на бисквитките се съхраняват само като SHA-256 — ние улавяме позата, никога лични данни.
- ›име
- ›домейн + base_domain
- ›връзка: same_host / same_registrable_domain / cross_site
- ›secure / httponly / samesite
- ›path / expires / max-age
- ›value_sha256 (никога сурова стойност)
- ›източник: proxy_set_cookie / cdp_request / dom_document_cookie
- ›доказателство: flow_id, статус
| name | relation | flags |
|---|---|---|
| _abv_home_auth | same_registrable_domain | Secure |
| _abv_home_auth_req | same_registrable_domain | Secure · HttpOnly · Lax |
| _abv_login_csrf_token | same_host | Secure · HttpOnly |
| _ga | same_registrable_domain | — |
| _gid_dc | cross_site | Secure · None |
| IDE | cross_site | Secure · HttpOnly · None |
Декодиране първо. Съвпадение второ. Улавяне на товари, скрити зад екраниращи последователности.
Прихванатите тела на скриптове се пропускат през статичен деобфускиращ тръбопровод, преди да се задейства който и да е сигнатурен двигател. Всеки декодер прочита изходните байтове, извежда възстановения чист текст с SHA-256 връзка към изходния URL адрес и пресканира резултата за вградени URL адреси, които автоматично се добавят към регистъра на домейни на трети страни.
Вериги String.fromCharCode
Възстановява буквалния низ, който един полезен товар се е опитвал да скрие.
atob / btoa
Декодира буквални низове Base64 — извлича URL адреси, тела на полезни товари, код от втори етап.
unescape / decodeURIComponent
Разрешава процентно кодирани полезни товари, често използвани в дропери на eval-pack.
Hex / \xHH и \uHHHH
Обхожда плътни ескейп последователности и извежда декодирания чист текст.
Извличане на URL от декодирани низове
Всеки декодиран низ се сканира повторно за http(s) URL адреси и се добавя към регистъра на домейни на трети страни.
SHA-256 за тяло на източника
Декодираните артефакти се свързват обратно към source_url + source_sha256, така че всяко откритие има доказуем произход.
Всеки скрипт се изхвърля на диск, хешира се и се сканира.
Всяко тяло на JavaScript, което MITM проксито прихваща, се записва в samples/<NNNN>_<host>_<sha256-prefix>.js, индексирано в manifests/javascript_samples.{json,csv}, и предадено на конфигурирания AV двигател. Изходът от скенера се намира в scanner_results/ до топ ниво av_scan_summary.json carrying enabled, status (чисто / подозрително / заразено / грешка), sample_count, и ред за всяка проба.
- Един образец = едно уловено тяло на отговор, а не един URL. Дубликатите се запазват и хешират независимо.
- sha256 е входът на AV-двигателя И ключът за премахване на дубликати/сравнение на корпуси при сканиране.
- Произходът на тялото се запазва: source_body_path сочи обратно към proxy_capture/.../bodies/<flow_id>_response.bin, така че AV присъдата може да бъде възпроизведена върху точните байтове на проводника.
- Манифестът се разпространява както като JSON (за конвейера), така и като CSV (за SOC анализатора).
- Състоянието на обобщението на сканирането (чисто / подозрително / заразено / грешка) става доказателствен клас от най-високо ниво при сигнала.
RDAP за всеки домейн на трета страна. Възрастта е входен параметър за присъда, а не бележка под линия.
Всеки открит домейн на трета страна се нормализира до регистрируемата му форма и се запитва чрез RDAP — първо IANA bootstrap, второ RDAP крайната точка на TLD, и ismalicious WHOIS резервно трето. Суровите данни се кешират и хешират, така че всяка присъда, базирана на възраст или регистратор, може да бъде възпроизведена от оригиналните байтове.
01 · обхват + верига
- lookup_scope = detected_third_party_domains_only — хостът на първата страна никога не се запитва.
- Наблюдаваният хост (accounts.google.com) е нормализиран до регистрируемия си домейн (google.com) преди търсене; флагът за нормализация е запазен в записа.
- Верига за резолюция: IANA RDAP bootstrap → TLD RDAP крайна_точка → ismalicious WHOIS резервен_вариант → суров отговор, кеширан с sha256.
- young_domain_days_threshold = 365 — домейни, по-млади от този, се появяват като young_domain: true и захранват кофите за точкуване по възрастови групи.
02 · извлечени полета
- ›creation_date + creation_datetime + confidence (висока / средна / ниска) + етикет на източника (rdap.events.registration, …)
- ›age_days, години_регистриран
- ›регистратор (напр. MarkMonitor Inc.)
- ›name_servers[] (напр. ns1.google.com … ns4.google.com)
- ›whois_server, rdap_url, rdap_base_url, rdap_bootstrap_publication
- ›raw_truncated + raw_sha256 — всяка присъда може да бъде получена отново от суровото съдържание
- ›creation_date_candidates[] — всяка дата, която анализаторът е намерил, не само победителят
03 · живи примери
Всеки WHOIS запис е кеширан, хеширан и може да бъде възпроизвеждан. Нов регистратор, нов сървър за имена или промяна на датата на създаване напред = събитие за разлика при следващото сканиране, а не мълчалива промяна.
Над 70 поведенчески подписа, а не само URL черни списъци.
Черните списъци улавят известни лоши домейни. Подписите улавят известни лоши поведения — дори на току-що видяна инфраструктура, която още не е маркирана от никой фийд. Всеки прихванат скрипт, тяло на отговор и команден ред се пропуска през регулярен изразов двигател, групирани по намерение на противника. Всеки подпис носи ниво на въздействие, което захранва оценката за риск на домейна.
- WScript.Shell .Run / .ExecКритично
- Shell.Application ShellExecuteКритично
- MSHTA отдалечен полезен товарКритично
- regsvr32 скриптлет (/i:http)Критично
- rundll32 javascript: манипулаторКритично
- WMI Win32_Process.CreateКритично
- XMLHTTP → ADODB.Stream → SaveToFileКритично
- certutil -urlcache -split -fКритично
- bitsadmin /transferКритично
- PowerShell DownloadString / DownloadFileКритично
- responseBody → Записване на дискВисоко
- FileSystemObject CreateTextFileВисоко
- HKCU/HKLM Run / RunOnce ключКритично
- Пускане в папка StartupКритично
- schtasks /createКритично
- sc create / sc configКритично
- WMI __EventFilter + ActiveScriptEventConsumerКритично
- eval(unescape(...))Високо
- eval(atob(...))Високо
- String.fromCharCode веригиСредно
- Плътност на шестнадесетични / уникод екраниращи символиВисоко
- Дълги Base64 низови литералиСредно
- MSScriptControl AddCode / EvalВисоко
- Скрит iframe (display:none / 0×0)Високо
- вмъкване на скрипт data:text/htmlВисоко
- Записи за замърсяване на прототипиВисоко
- createElement('script') + отдалечен .srcВисоко
- Социално инженерство с push известияСредно
- Миньор в браузъра (coinhive / cryptonight / WASM)Високо
- navigator.plugins / mimeTypes / userAgentСредно
- WMI Win32_OperatingSystem / BIOS / NetworkAdapterСредно
- Сондажни плъгини (Flash / Silverlight / Java)Среден
- Canvas toDataURL / getImageData отпечатванеНисък
- WebRTC / getUserMedia сондиСреден
Всяко откритие пристига с оценка, причините за нея и нейните слабости.
Задействането на сигнатура не е присъда. Всяко откритие се оценява от 0.00 до 1.00, като се броят независимите потвърждаващи източници (прокси, CDP, DOM, декодиран полезен товар, попадение в репутацията) и се изваждат отслабващи фактори (само едноканален, ограничена от доставчик скорост, съкратено тяло). Имейлът за предупреждение показва нивото, масива why[] , и масива weaknesses[] — така че можете да спорите с робота, а не просто да му се доверявате.
| Диапазон на доверие | Tier | Label | Какво означава |
|---|---|---|---|
| 0.85 – 1.00 | Критично | Многоизточник | Прокси + CDP + DOM всички се потвърждават взаимно. Веригата от доказателства е възпроизвеждаема от сурови артефакти. |
| 0.65 – 0.84 | Високо | Потвърдено по жица | Прокси или CDP заснеха заявката на ниво байт. body sha256 и заглавките са запазени. |
| 0.45 – 0.64 | Средно | Само DOM | Наблюдавано на ниво DOM (напр. динамично <script> вмъкване) без независим мрежов запис. |
| 0.20 – 0.44 | Нисък | Вграден | Намерен съвпадащ образец в уловено тяло, но не е извършено извличане. Докладвано като кандидат. |
| 0.00 – 0.19 | Информация | Отслабен | Единичен слаб сигнал, противоречащ на други източници, или съвпадащ с известен доброкачествен списък с разрешени. |
- +Налични са мрежови доказателства от CDP
- +MIТМ прокси прихвана заявката и тялото на отговора
- +DOM доказателства допринасят за това откритие
- +Стекът на инициатора идентифицира изходния скрипт
- +Приписването на рамка свързва заявката с iframe на трета страна
- +Декодираният полезен товар повторно се разрешава до известен като лош домейн
- +Сертификат SHA-256 съвпада с предишно маркиран сертификат
- +Доставчикът на репутация върна положителен резултат
- −Едноканални наблюдения (CDP без прокси или обратното)
- −Доставчик на репутация с ограничена честота (HTTP 429) при това изпълнение
- −WHOIS не е наличен за този TLD — възрастта на домейна не е оценена
- −Тялото е частично заснето — надвишени са max_body_bytes
- −Стекът на инициатора е съкратен от V8 — рамките на повикванията са непълни
- −Домейнът е в списъка с разрешени от оператора — откритието е потиснато
Нови домейни се преследват веднага.
Възрастта на домейн на трета страна сама по себе си е сигнал. Ние определяме датата на създаване чрез роден WHOIS за .com .net .org .io .co .bg .uk .de .nl .ru и десетки други, с ismalicious резервен механизъм за репутация за неясни TLDs. Всеки домейн получава базов резултат от своята възрастова група, след което се наслагват контекст и мултипликатори за корелация.
- Цел за пренасочване+10
- Пренасочване по време на изпълнение+10
- Доставка на изпълними файлове+10
- <script src>+8
- <iframe src>+8
- Регистрация на ServiceWorker+8
- извличане / XHR+5
- Домейн, засечен от система за анализ на заплахи+18
- URL, засечен от система за анализ на заплахи+14
- Изглеждащ домейн+8
- Ново след базовата линия+8
| Възрастова група | Severity | Базов резултат | Note |
|---|---|---|---|
| 0–1 ден | Критичен | 35 | Регистриран през последния ден |
| 2–7 дни | Критичен | 30 | Регистриран през последната седмица |
| 8–30 дни | Висок | 24 | Регистриран през последния месец |
| 31–90 дни | Среден | 16 | Регистриран през последното тримесечие |
| 91–180 дни | Среден | 10 | Регистриран през последните шест месеца |
| 181–365 дни | Нисък | 6 | Регистриран през последната година |
| 1–2 години | Информация | 1 | По-стар от една година, все още сравнително млад |
| 2+ години | Информация | 0 | Установен домейн |
Три слоя на разузнаване за заплахи. Една присъда за домейн.
Всеки домейн на трета страна се запитват паралелно срещу живи IOC бази данни, многосигнални reputation API и агрегирани отворени общностни фийдове. Присъдите се обединяват с злоумишлени = всеки (provider.malicious), кеширани с TTL и дедупликирани при всяко сканиране, за да се запазят разходите предвидими.
Бази данни с индикатори за компрометиране (IOC) на живо, заявки за сканиране, кеширани с TTL, дедуплицирани между доставчиците.
- URLhaus (крайна точка за хост)
- URLhaus (URL крайна точка)
- ThreatFox (search_ioc)
- MalwareBazaar
- Feodo Tracker
Многосигнални присъди: попадения в черния списък, брой импулси от OTX, геолокация, класификация, оценка на риска.
- ismalicious /check (пълна + репутация)
- брой попадения в черния списък
- Корелация на OTX импулс
- доверие в данните + полета за доказателства
- гео + обогатяване на ASN
Агрегирани и опреснявани на всеки час, нормализирани и дедуплицирани спрямо доставчиците на живо.
- Spamhaus DBL / DROP
- OpenPhish
- PhishTank
- Maltrail
- Quad9
- OpenDNS публичен
- StevenBlack
- hpHosts mirror
- SURBL
Пет профила. Изберете дълбочината на доказателствата си.
Всеки наблюдаван домейн работи под един от пет предварително зададени профила, контролиращи прихващането на прокси, задържането на тялото, симулацията на взаимодействие, вариантите на браузъра и широчината на информацията за заплахи. Сменете профилите за домейн, без да рестартирате планировчика.
1 вариант, без MITM прокси, без анализ на IP от трети страни. Най-бърз цикъл, най-ниска цена — идеален за нискорискови маркетингови сайтове.
MITM прокси върху подозрителни тела, анализ на IP адреси на трети страни, пълни артефакти, копирани при всяко изпълнение.
Пълно заснемане на тяло (≤2 MB), симулация на взаимодействие с 5 кликвания, график на наблюдение на 0/5/15/30/60 минути, нов браузър на резултат, WHOIS + RDAP + ThreatFox.
4 рандомизирани варианта на браузър на сканиране за побеждаване на гео-, UA- и базирано на времето прикриване.
Всички доставчици са активирани: URLhaus + ThreatFox + ismalicious + WHOIS + оценка на възрастта на домейна + инфраструктура DNS.
5-минутен интервал по подразбиране · конфигурируем трептене · състояние, подкрепено от файлове · без SQLite, без споделена база данни · всеки домейн изолиран под customers/<slug>/
Пет планирани наблюдения на сканиране. Улавяйте късните, мързеливите и ограничените полезни товари.
Една-единствена екранна снимка лъже. Обхождащият робот държи страницата отворена и я наблюдава отново на 0s · 5s · 15s · 30s · 60s, записвайки свеж DOM sha256, брой заявки, брой артефакти по време на изпълнение и броя на активни скриптове и iframe елементи при всяко отместване. Всяко отклонение между отместванията — нов скрипт, добавен iframe, стартирана заявка — се улавя с пълен контекст. Полезните товари, които отлагат и изпълняват, нямат къде да се скрият.
Първо DOM, брой заявки, инвентар на скриптове и iframe, заснети веднага след утаяването на страницата.
Прихваща скриптове, които отлагат изпълнението, за да победят бързите скенери.
Съобразява се със симулирани кликвания и събития за превъртане за полезни товари, управлявани от взаимодействие.
Мързеливо заредените реклами, проследяващите пиксели и iframe-ове при неактивност са стартирали.
Бийкъни за анкетиране, пингове на уебсокети, полезни товари за retry-storm се показват.
- dom_sha256
- Хеш на живия DOM при всяко отместване — всяка мутация на байтово ниво между отместванията се отбелязва като дрейф по време на изпълнение.
- request_count
- Кумулативен брой мрежови заявки — стъпка нагоре между отместванията означава, че нови обаждания от трети страни са задействани късно.
- runtime_artifact_count
- Общ брой инструменти, заснети от вградения шим (window.open, eval, appendChild и др.).
- script_count / iframe_count
- Брой живи скриптове и iframe-ове — разкрива динамично инжектиран DOM, който расте след първоначалното зареждане.
[
{ "offset_seconds": 0, "request_count": 84,
"script_count": 8, "iframe_count": 12,
"dom_sha256": "efb7af5196c4b046…" },
{ "offset_seconds": 5, "request_count": 84, … },
{ "offset_seconds": 15, "request_count": 84, … },
{ "offset_seconds": 30, "request_count": 84, … },
{ "offset_seconds": 60, "request_count": 84,
"runtime_artifact_count": 471 }
]Всяка стъпка, всеки домейн, всяко заглавие – от начало до край.
Системите за разпределение на трафик се крият зад многостъпални 30x вериги, които пресичат регистрируеми домейни, разменят схеми и презаписват низове за заявки. Краулерът възстановява цялата верига в един redirect_path със стабилен path_id, подредени domains[], external_hop_count, и двуизточни потвърждения както от проксито, така и от DevTools протокола – така че верига, видяна само от един наблюдател, автоматично е подозрителна.
- path_id
- Стабилен хеш за пътя start_url → end_url. Същият път през изпълненията доказва стабилно поведение на пренасочване.
- hop_count
- Общ брой HTTP пренасочващи скокове по пътя. Дългите вериги (3+ скока) се маркират за преглед.
- external_hop_count
- Брой скокове, които пресичат регистрируемата граница на домейна. >0 означава, че пренасочването напуска вашия произход.
- domains[]
- Подреден списък на всеки посетен домейн по време на веригата за пренасочване — пълна проследяемост на пътя на потребителя.
- sources[]
- прокси / cdp / и двете — потвърждение от два източника, че пренасочването действително е задействано по кабела.
- hops[]
- Запис за всеки скок: from_url, to_url, status, headers, redirect_type, relation, evidence (request_id или flow_id).
{
"path_id": "f61329aaf75cf349",
"start_url": "https://abv.bg/",
"end_url": "https://home.abv.bg/",
"hop_count": 1,
"external_hop_count": 0,
"domains": ["abv.bg", "home.abv.bg"],
"sources": ["proxy", "cdp"],
"hops": [{
"from_url": "https://abv.bg/",
"to_url": "https://home.abv.bg/",
"status": 301,
"relation": "same_registrable_domain",
"evidence": {
"flow_id": "ec6121e5-b730-43e3-…",
"request_id": "C26BF8CD24EAE44C…",
"headers": { "location": "https://home.abv.bg/",
"strict-transport-security":
"max-age=31536000; includeSubDomains" }
}
}]
}Възможно е за заявки графично представяне на всеки URL адрес, домейн и IP адрес, докоснат по време на сканиране.
Краулерът излъчва resource_graph.json — типизиран граф от възли и ребра, който свързва заявения URL адрес с неговия краен URL адрес, всеки подресурс, всеки регистрируем домейн и всеки отдалечен IP адрес. Всеки възел носи своя kind and base_domain , така че разследващите могат да преминат от подозрителен скрипт към всеки домейн, който е заредил, всеки IP адрес, който го е обслужвал, и всяко пренасочване, което го е доставило — с едно преминаване.
| node.kind | Какво представлява |
|---|---|
| requested_url | Оригиналният URL адрес, който операторът е наблюдавал — входната точка на графика. |
| final_url | Установеният URL адрес след всяко пренасочване — страницата, която потребителят действително е видял. |
| url | Всеки URL адрес на подресурс (скрипт, таблица със стилове, изображение, iframe, цел за извличане), открит по време на сканирането. |
| domain | Агрегатен възел, групиращ всеки URL адрес, който споделя име на хост — премахва шума. |
| base_domain | Възел на регистрируемия домейн — единицата, на която се оценяват взаимоотношенията с трети страни. |
| ip | Възел на отдалечен IP, свързан с домейните, които е обслужвал, и ASN, който притежава мрежовия блок. |
{
"nodes": [
{ "id": "https://abv.bg",
"kind": "requested_url",
"base_domain": "abv.bg" },
{ "id": "https://passport.abv.bg/…",
"kind": "final_url",
"base_domain": "abv.bg" },
{ "id": "https://img.abv.bg/e/s/counters.html",
"kind": "url",
"base_domain": "abv.bg" }
],
"edges": [
{ "from": "abv.bg",
"to": "home.abv.bg",
"kind": "redirect" },
{ "from": "home.abv.bg",
"to": "img.abv.bg",
"kind": "subresource" }
]
}Всеки IP е свързан със своето RIR разпределение, ASN и собственик на мрежов блок.
DNS ви дава IP адреса. RDAP ви казва кой е негов собственик. Всеки IP адрес на трета страна, наблюдаван по време на сканиране, е обогатен с неговия регистров дескриптор, име на мрежата, тип на разпределение и пълен адресния обхват — така че домейн, хостван на DIGITALOCEAN-104-131-0-0 се отбелязва различно от същия домейн на CLOUDFLARENET. Една и съща група за обогатяване обединява всеки IP адрес под едно разпределение, което разкрива инфраструктурни клъстери, дори когато отделните имена на хостове изглеждат несвързани.
- handle
- RDAP идентификатор за разпределение (напр. NET-104-131-0-0-1). Каноничният идентификатор за IP блока.
- name
- Име на мрежата, както е регистрирано в RIR (напр. DIGITALOCEAN-104-131-0-0, CLOUDFLARENET).
- type
- Тип разпределение (ДИРЕКТНО РАЗПРЕДЕЛЕНИЕ / ПРЕРАЗПРЕДЕЛЕНО / и т.н.) — разделя хостери от първа страна от препродавачи.
- start_address / end_address
- Пълен диапазон на мрежовия блок — групира всеки IP адрес в разпределението под един собственик.
- country
- Регистриран код на държава, когато е публикуван от RIR — показва неочаквана юрисдикционна експозиция.
| ip | domain | собственик на мрежа |
|---|---|---|
| 104.131.8.164 | bugs.jquery.com | DIGITALOCEAN-104-131-0-0 |
| 104.18.22.19 | www.w3.org | CLOUDFLARENET |
| 142.251.127.84 | accounts.google.com | |
| 194.153.145.60 | abv.bg | EVOLINK-NET |
Естествени RDAP заявки с кеш на TTL. Без зависимост от платена ASN емисия – всеки мрежов блок е разрешен спрямо каноничния RIR (ARIN, RIPE, APNIC, LACNIC, AFRINIC).
Всяко сканиране се оценява само. Всяко сканиране сравнява последното.
Всяко изпълнение извежда coverage_dashboard_summary.json оценяване на пълнотата на доказателствата, плюс crawl_diff.json , който сравнява външните домейни, IP адресите, скриптовете, бисквитките, веригите за пренасочване и TLS сертификатите от текущия цикъл със базовата линия за домейн. Нови домейни на трети страни, изчезнали активи и променени отпечатъци на сертификати се показват като събития на дрифт със собствено ниво на сериозност.
- confirmed_external_domains
- Домейни на трети страни, наблюдавани както от браузъра, така и от проксито.
- confirmed_third_party_ips
- Отдалечени IP адреси, които са завършили поне една TCP+TLS сесия по време на сканирането.
- candidate_third_party_ips
- Разрешени или вградени IP адреси, които не са произвели потвърден мрежов контакт.
- proxy_flows
- Общ брой HTTP/HTTPS потоци, заснети от MITM слоя за това изпълнение.
- score
- Покритие здраве 0.00–1.00. <1.0 = най-малко едно предупреждение, което операторът трябва да прегледа.
- warnings / hard_failures
- Структурирани бележки на оператора (напр. неразрешени кандидат IP адреси, липсващ артефакт, дрейф на схемата).
{
"status": "partial_with_warnings",
"score": 0.95,
"confirmed_external_domains": 19,
"confirmed_third_party_ips": 20,
"candidate_third_party_ips": 76,
"proxy_flows": 131,
"warnings": [
"Some third-party IPs are embedded or DNS-resolution
candidates only; not confirmed network contacts."
],
"hard_failures": []
}- [+] нов домейн на трета страна · api.malicious-cdn.ru
- [~] cert sha256 променен · cdn.partner.io
- [!] CSP script-src разширен · checkout
- [-] премахнат актив · tag-mgr/v2.js
Потвърдени контакти срещу кандидати. Никога не раздуваме едното в другото.
Договорът за комерсиален мониторинг прави ясна разлика между домейни и IP адреси, които браузърът действително е осъществил контакт и тези, които само appeared в изходни байтове, пренасочвания или DNS отговори. Потвърдените контакти имат доказателства на мрежово ниво — записи от прокси + CDP, sha256 на тялото, отпечатък на сертификата. Кандидатите се проследяват с пълна информация за произход, но никога не се отчитат като заредени. Това е разграничението, което ни позволява изобщо да гарантираме резултат за покритие.
Прокси сървърът на MITM завърши TCP+TLS сесия с точно този IP адрес. Най-висока доказателствена тежест — доказателство на ниво проводник.
Домейн, видян както от прокси сървъра, така и от нивото на заявки на CDP. Отчита се към гаранцията за мрежов контакт.
URL, извлечен от HTML / CSS / JS изходни байтове, но никога не е бил действително изтеглен. Показва се като кандидат, никога като контакт.
Домейнът се появи като цел за пренасочване в хедър Location, но не се зареди. Проследява се, но не се претендира.
IP адрес, върнат от DNS за наблюдаван домейн, но без завършена мрежова сесия. Докладва се като кандидат IP адрес, а не като контакт.
URL, възстановен от декодиран base64 / hex / fromCharCode товар. Свързан с source_sha256 за пълна произход.
external_domains: 61 confirmed_loaded: 19 ← reported as contacts embedded_only: 41 ← reported as candidates third_party_ips: 96 confirmed_loaded (proxy + CDP): 20 ← reported as contacts embedded_or_resolved_only: 76 ← reported as candidates network_endpoints: 150
Всяко предупреждение идва с доказателства — не просто предупреждение.
Когато домейн на трета страна на вашия сайт съвпадне със зловреден черен списък, вашият инженерен екип получава цялостно съдебно досие за секунди. Без ровене в логове. Без излишно писане. Точно достатъчно, за да поправите и докажете оздравяването.
- [!]Initiator script + line number
- [!]Full HTTP request and response headers
- [!]Pixel-accurate page screenshot at time of detection
- [!]Complete HAR archive of the scan session
- [!]Browser console log + JS stack trace
- [!]Deterministic replay URL for your devs
- [!]Severity score and blocklist source attribution
- [!]WHOIS + ASN data on the malicious domain
- THREAT_ID
- DXD-X9902-Z
- SEVERITY
- CRITICAL · 9.4 / 10
- DOMAIN
- api.malicious-cdn.ru
- MATCHED_LISTS
- URLhaus, abuse.ch, ThreatFox
- DETECTED_AT
- 2026-05-14T14:05:02Z
- PARENT_URL
- /checkout/payment
- INITIATOR
- /static/tag-mgr.js:442
- METHOD
- POST · 1.2 KB · 200 OK
Създаден за SMB, които не могат да си позволят SOC екип.
Защитете касата от скиминг
Атаките от типа Magecart се намират в скриптове на трети страни. Ние улавяме момента, в който чужд домейн се появи на вашата страница за плащане (/checkout).
Наблюдавайте всеки клиентски домейн
Едно табло за управление, отчети с бели етикети и API за изпращане на резултати към вашия собствен клиентски портал.
Проверете вашата верига за доставки
Когато скриптът на CDN на доставчик безшумно промени своите изходящи повиквания, вие разбирате до пет минути – не след разкриването му.
Предпазна мрежа срещу изтичане на PHI
Уловете проследяващи пиксели, случайно заредени в порталите на пациентите, преди да нарушат HIPAA.
Готовност за PCI-DSS 4.0
Изисквания 6.4.3 и 11.6.1 очакват от вас да знаете всеки скрипт на платежните страници. Ние ви предоставяме непрекъснат, доказателствен регистър.
Спрете дрейфа на злонамерени реклами
Рекламните мрежи постоянно сменят рекламните си формати. Ние откриваме злонамерени полезни натоварвания, вградени в рекламните вериги в рамките на минути.
Защо WAF или седмичен файлов скенер не са достатъчни.
| Capability | D.E.D. | Стандартен WAF | Седмичен файлов скенер |
|---|---|---|---|
| Открива зловреден софтуер от трети страни от страна на клиента | ● ДА | — НЕ | ◐ Частично |
| 5-минутен интервал на сканиране | ● ДА | ◐ N/A | — НЕ |
| Пълно изпълнение на JavaScript | ● ДА | — НЕ | ◐ Някои |
| 500+ прекръстосана проверка на черния списък | ● ДА | — НЕ | ◐ Някои |
| Не се изисква модификация на сайта | ● ДА | — НЕ | ● ДА |
| URL за възпроизвеждане на съдебномедицински данни за всяко предупреждение | ● ДА | — НЕ | — НЕ |
| Георазпределени сонди | ● ДА | — НЕ | — НЕ |
| Откриване на Magecart / платежен скиминг | ● ДА | ◐ Частично | ◐ Частично |
Прозрачни планове. Без изненади на място.
Всеки план включва целия 5-минутен тръбопровод за обхождане, всички 500+ черни списъци и неограничен брой предупреждения. Плащате за покритие на домейни и оперативни интеграции, а не за заключване на функции.
За един бизнес уебсайт, който се нуждае от постоянна видимост на трети страни.
- [+]1 наблюдаван домейн
- [+]До 3 наблюдавани URL пътя
- [+]5-минутен интервал на сканиране
- [+]Имейл известия с пълен съдебен доклад
- [+]Покритие на 500+ черни списъка
- [+]30-дневно съхранение
За бизнеси с множество имоти, онлайн магазини и агенции в растеж.
- [+]До 5 наблюдавани домейна
- [+]Неограничени URL пътища на домейн
- [+]5-минутен интервал на сканиране (1-мин при поискване)
- [+]Имейл + Slack + Webhook известия
- [+]Георазпределени сонди (САЩ/ЕС/APAC)
- [+]90-дневно съхранение + HAR експорти
- [+]Управление на списък с разрешени за всеки наемател
За SOC, MSP, здравеопазване, финтех и търговци, обхванати от PCI.
- [+]Неограничен брой домейни и URL пътища
- [+]1-минутен интервал на сканиране
- [+]Многопотребителски табла за управление с бели етикети
- [+]Достъп базиран на роли + SSO/SAML
- [+]REST API + SIEM интеграции
- [+]Опция за съхранение на данни само в ЕС
- [+]SOC2 Type II + ISO 27001 отчети
- [+]Специализиран инженер по сигурност
Дванадесет отговора, които вашият ръководител по сигурността така или иначе ще зададе.
Повечето злонамерен софтуер на легитимни уебсайтове се доставя чрез вграден JavaScript на трети страни — компрометиран мениджър на тагове, отвлечен CDN скрипт, остарял плъгин, бекдорна npm зависимост, заредена по мрежата. Традиционните WAF виждат трафика, достигащ само до вашия сървър, така че те са слепи за всичко, инжектирано от страна на клиента. Ние рендираме вашия сайт като реален посетител на всеки пет минути и наблюдаваме какво всъщност се зарежда.
Спрете да вярвате, че няма нищо нередно. Започнете да наблюдавате.
Добавете първия си домейн, потвърдете собствеността и първоначалното сканиране ще се стартира незабавно. 5-минутният цикъл започва веднага след това — не е необходим агент, плъгин или промяна на DNS.