Як сканувати на наявність вірусів за допомогою антивірусної служби API

Мережа переповнена шкідливими сторінками. На жаль, вони також можуть існувати на сайтах ваших клієнтів/постачальників.

Жоден бізнес сьогодні не обходиться без певної інтеграції, яка живиться або надає вхідні дані веб-сайту клієнта чи постачальника. Звичайно, ваш бізнес не може існувати без цих послуг, але іноді це загроза через ці послуги. Зовнішні сайти, з якими ви взаємодієте, можуть мати зловмисний вміст (незалежно від того, встановлено навмисно чи зламано третьою стороною), і якщо цей вміст знаходить шлях до заздалегідь визначеного місця, наслідки можуть бути катастрофічними.

Чи можна сканувати веб-сайти на наявність шкідливих сторінок вручну?

Може здатися, що грамотний розробник повинен вміти сканувати сторінки на наявність вразливостей. На жаль, це навіть близько до реальності з багатьох причин:

  • Розробники не спеціалізуються на виявленні/безпеці. Їхній досвід полягає у створенні складного програмного забезпечення шляхом об’єднання багатьох менших підсистем; іншими словами, вони просто не мають навичок.
  • Навіть якби ви зустріли достатньо талановитого розробника, завдання було б просто занадто важким. Типова багатофункціональна веб-сторінка містить тисячі рядків коду — з’єднання їх усіх разом для опрацювання більшої картини, а також крихітних лазівок — не що інше, як кошмар. Ви можете наказати комусь з’їсти цілого слона на обід!
  • Щоб скоротити час завантаження сторінки, веб-сайти часто стискають і мінімізують свої файли CSS і JavaScript. Це призводить до такого безладу коду, що його абсолютно неможливо прочитати.

Як ви думаєте, що робить цей код? :kappa: (Джерело elgg.org)

Якщо це все ще виглядає читабельним, це тому, що добрі душі там вирішили зберегти імена змінних для великого контексту. Спробуйте вихідний код для jQuery, який хтось може розмістити на своєму веб-сайті та підробити (два рядки десь у цьому безладі):

Не кажучи вже про те, що джерело містить близько 5000 рядків коду. 😎

Це лише один сценарій, про який ми говоримо. Веб-сторінка зазвичай має 5-15 вкладених сценаріїв, і цілком імовірно, що ви працюєте з 10-20 веб-сторінками загалом. Уявіть, що вам доводиться робити це щодня. . . Або ще гірше, кілька разів на день!

На щастя, за допомогою API можна швидко й легко сканувати URL-адреси. Ви можете сканувати не тільки веб-сторінки, але й файли, які надаються вам для завантаження. Давайте розглянемо деякі інструменти API, які допоможуть вам це зробити. І о, оскільки це API, зусилля вашого розробника будуть набагато ефективнішими, якщо ви попросите їх створити інструмент сканування веб-сайтів за допомогою цих API. 😀

Google Web Risk

Не дивно, що засіб перевірки веб-сторінок надійшов від компанії, яка практично володіє Інтернетом (я маю на увазі всі його веб-сторінки). Але є підступ: Google Web Risk все ще перебуває в бета-версії та доступний на запит тільки. Перебування в бета-версії означає більше критичних змін.

  Як дізнатися чиєсь точне місцезнаходження за допомогою IP-адреси

Проте, враховуючи, що API досить простий, ваш розробник може внести будь-які зміни за допомогою інструменту моніторингу API та кількох хвилин часу на розробку. 🙂

Користуватися API також надзвичайно просто. Щоб перевірити одну сторінку за допомогою командного рядка, просто надішліть запит наступним чином:

curl -H "Content-Type: application/json" "https://webrisk.googleapis.com/v1beta1/uris:search?key=YOUR_API_KEY&threatTypes=MALWARE&uri=http%3A%2F%2Ftestsafebrowsing.appspot.com%2Fs%2Fmalware.html"

Якщо запит був успішним, API відповідає типом уразливості на сторінці:

{
  "threat": {
    "threatTypes": [
      "MALWARE"
    ],
    "expireTime": "2019-07-17T15:01:23.045123456Z"
  }
}

Як бачите, API підтверджує, що сторінка містить зловмисне програмне забезпечення.

Зауважте, що Google Web Risk API не виконує діагностику на вимогу URL-адреси чи файлу за вашим вибором. Він переглядає чорний список, який підтримує Google на основі результатів пошуку та звітів, і повідомляє, чи є URL-адреса в цьому чорному списку чи ні. Іншими словами, якщо цей API каже, що URL-адреса безпечна, можна з упевненістю припустити, що вона досить безпечна, але немає жодних гарантій.

VirusTotal

VirusTotal — ще одна цікава служба, яку можна використовувати для сканування не лише URL-адрес, але й окремих файлів (у цьому сенсі я ставлю її вище Google Web Risk з точки зору корисності). Якщо ви бажаєте спробувати послугу, просто перейдіть на веб-сайт, і прямо на домашній сторінці є можливість почати.

Незважаючи на те, що VirusTotal доступний як безкоштовна платформа, створена та курована активною спільнотою, вона пропонує комерційну версію свого API. Ось чому ви хочете платити за преміум-сервіс:

  • Гнучка швидкість запитів і щоденна квота (на відміну від чотирьох запитів на хвилину для публічного API)
  • Надісланий ресурс сканується VirusTotal їхнім антивірусом, і повертається додаткова діагностична інформація.
  • Інформація на основі поведінки про файли, які ви надсилаєте (файли будуть розміщені в різних ізольованих середовищах для відстеження підозрілих дій)
  • Запитувати різноманітні параметри до бази даних файлів VirusTotal (підтримуються складні запити)
  • Сувора угода про рівень обслуговування та час відповіді (файли, надіслані до VirusTotal через загальнодоступний API, стають у чергу та потребують багато часу для аналізу)

Якщо ви виберете приватний API VirusTotal, це може стати однією з найкращих інвестицій, які ви коли-небудь робили в продукт SaaS для вашого підприємства.

Сканій

Ще одна рекомендація щодо API сканера безпеки: Сканій. Це простий REST API, який може сканувати надіслані документи/файли на наявність загроз. Думайте про це як про антивірусний сканер на вимогу, який можна легко запускати та масштабувати!

Ось які смаколики пропонує Scanii:

  • Здатність виявляти зловмисне програмне забезпечення, фішингові сценарії, вміст спаму, вміст NSFW (небезпечно для роботи) тощо.
  • Він створений на основі Amazon S3 для легкого масштабування та зберігання файлів без ризику.
  • Виявляйте образливий, небезпечний або потенційно небезпечний текст понад 23 мовами.
  • Простий, без надмірностей, цілеспрямований підхід до сканування файлів на основі API (іншими словами, без зайвих «корисних» функцій)
  Як перевірити та очистити історію прослуховування Spotify

Справді добре те, що Scanii є метадвижком; тобто він не виконує сканування сам по собі, а використовує набір базових механізмів для роботи. Це чудова перевага, оскільки вам не потрібно бути прив’язаним до певного механізму безпеки, що означає, що не потрібно турбуватися про несправні зміни API тощо.

Я вважаю Scanii величезним благом для платформ, які залежать від контенту, створеного користувачами. Іншим випадком використання є сканування файлів, створених службою постачальника, якій ви не можете довіряти на 100%.

Метазахисник

Для деяких організацій сканування файлів і веб-сторінок в одній кінцевій точці недостатньо. Вони мають складний інформаційний потік, і жодна з кінцевих точок не може бути скомпрометована. Для тих випадків використання, Метазахисник є ідеальним рішенням.

Подумайте про Metadefender як про параноїка, який знаходиться між вашими основними даними та всім іншим, включаючи мережу. Я кажу «параноїк», тому що це філософія дизайну Metadefender. Я не можу описати це краще за них, тому ось що:

Основною захисною функцією більшості рішень кібербезпеки є виявлення. Очищення даних MetaDefender не залежить від виявлення. Він припускає, що всі файли можуть бути заражені, і відновлює їх вміст за допомогою безпечного та ефективного процесу. Він підтримує понад 30 типів файлів і виводить безпечні та придатні для використання файли. Очищення даних є надзвичайно ефективним у запобіганні цілеспрямованим атакам, програмам-вимагачам та іншим типам відомих і невідомих загроз зловмисного програмного забезпечення.

У Metadefender є кілька чудових функцій:

  • Запобігання втраті даних: Простіше кажучи, це можливість замінити та захистити конфіденційну інформацію, виявлену у вмісті файлу. Наприклад, квитанція у форматі PDF із видимим номером кредитної картки буде обфускована Metadefender.
  • Розгорніть локально або в хмарі (залежно від того, наскільки ви параноїки!).
  • Перегляньте понад 30 типів форматів архівування (zip, tar, rar тощо) і 4500 прийомів підробки типів файлів.
  • Багатоканальне розгортання — захищайте лише файли або перейдіть до мережі за допомогою електронної пошти, мережі та контролю входу.
  • Спеціальні робочі процеси для застосування різних типів конвеєрів сканування на основі спеціальних правил.

Metadefender включає понад 30 движків, але добре їх абстрагує, тому вам ніколи не доведеться про них думати. Якщо ви є підприємством середнього та великого розміру, яке просто не може дозволити собі кошмари безпеки, Metadefender — чудовий варіант.

Urlscan.io

Якщо ви здебільшого маєте справу з веб-сторінками й завжди хотіли глибше ознайомитися з тим, що вони роблять за лаштунками, Urlscan.io є чудовою зброєю у вашому арсеналі.

  Як додати друзів у WeChat

Обсяг інформації, яку видає Urlscan.io, вражає. Серед іншого ви можете побачити:

  • Загальна кількість IP-адрес, з якими зв’язується сторінка.
  • Список регіонів і доменів, куди сторінка надсилає інформацію.
  • Технології, що використовуються на інтерфейсі та сервері сайту (немає заяв про точність, але це тривожно точно!).
  • Інформація про домен і сертифікат SSL
  • Детальна взаємодія HTTP разом із корисним навантаженням запитів, іменами серверів, часом відповіді та багато іншого.
  • Приховані перенаправлення та невдалі запити
  • Вихідні посилання
  • Аналіз JavaScript (глобальні змінні, що використовуються в сценаріях тощо)
  • Аналіз дерева DOM, вміст форм тощо.

Ось як це все виглядає:

API простий і зрозумілий, що дозволяє надсилати URL-адресу на сканування, а також перевіряти історію сканування цієї URL-адреси (тобто сканування, виконане іншими). Загалом, Urlscan.io надає велику кількість інформації для будь-якої зацікавленої компанії чи фізичної особи.

SUCURI

SUCURI — добре відома платформа для онлайн-сканування веб-сайтів на наявність загроз і зловмисного програмного забезпечення. Можливо, ви не знаєте, що вони мають a REST API а також, дозволяючи програмно використовувати ту саму потужність.

Тут нема про що говорити, крім того, що API простий і добре працює. Звичайно, Sucuri не обмежується скануванням API, тож поки ви це робите, я рекомендую вам ознайомитись із деякими з його потужних функцій, як-от сканування на стороні сервера (загалом, ви надаєте облікові дані FTP, і він здійснює вхід і сканує всі файли на наявність загроз!).

Quttera

Наш останній запис у цьому списку Quttera, який пропонує дещо інше. Замість того, щоб сканувати домен і надіслані сторінки на вимогу, Quttera також може здійснювати постійний моніторинг, допомагаючи вам уникнути вразливостей нульового дня.

REST API простий і потужний і може повертати трохи більше форматів, ніж JSON (наприклад, XML і YAML). У скануваннях підтримується повна багатопотоковість і паралелізм, що дає змогу запускати кілька вичерпних сканувань паралельно. Оскільки послуга працює в режимі реального часу, вона є безцінною для компаній, які займаються критично важливими пропозиціями, де простой означає загибель.

Висновок

Інструменти безпеки, подібні до тих, що описані в цій статті, є просто додатковою лінією захисту (або обережністю, якщо хочете). Подібно до антивірусної програми, вони можуть багато чого робити, але вони не можуть забезпечити безвідмовний метод сканування. Це просто тому, що програма, написана зі зловмисними намірами, є для комп’ютера такою самою, як програма, написана для позитивного впливу — обидві вони запитують системні ресурси та надсилають мережеві запити; диявол криється в контексті, який не для успішної роботи комп’ютерів.

Тим не менш, ці API дійсно забезпечують надійне покриття безпеки, яке є бажаним у більшості випадків — як для зовнішніх веб-сайтів, так і для ваших власних! 🙂