Кіберзлочинці намагалися зробити найбільше пограбування банку

Відома оборонна компанія Великобританії BAE Systems, яка займається перспективним військовими розробками, аерокосмічної індустрії, а також інформаційною безпекою, оприлюднило результати аналізу великої кібератаки на банк в Бангладеш, в результаті якої зловмисникам вдалося скомпрометувати відому міжнародну банківську платформу SWIFT і викрасти $81 млн.


(картинка Reuters)

Платформу SWIFT називають серцем глобальної банківської системи, з її допомогою банки по всьому світу обмінюються інформацією і обслуговують платежі. Після компрометації ПО SWIFT в банку Бангладеш, хакерам вдалося авторизуватися в системі і відправити запит в американський банк на здійснення переказу великої суми в банк на Філіппінах. В результаті добре спланованою кібератаки, хакери планували перевести з банківських рахунків майже мільярд доларів ($951 млн.).

Фахівці BAE Systems опублікували мінімальний звіт про кібератаки та інформацію про публічно доступні зразках шкідливих інструментів (див. таблицю нижче). Інший унікальний зразок шкідливої програми знаходиться у розпорядженні компанії. Він містить складні механізми роботи з локальним ПО SWIFT Alliance Access, використовуваний у системі жертви. Ці окремі компоненти є частиною спектру шкідливих інструментів, які використовувалися для проведення кібератаки та відправлення фальшивих інструкцій банку для виконання транзакції. Інструменти є досить гнучкими, що робить можливим їх використання для аналогічних кібератак в майбутньому.


Рис. Частина шкідливих інструментів, які використовувалися в кібератаці, а також доступні на публічних сервісах обміну зразками шкідливого ПО. (дані BAE Systems)

За даними BAE Systems шкідливі файли були створені одним киберпреступником або групою осіб, однак, найбільш цінним є файл з хешем 525a8e3ae4e3df8c9c61f2a49e38541d196e9228, який містить в собі логіку роботи з SWIFT.


Рис. Загальна схема компрометації SWIFT. (дані BAE Systems)

Видно, що одним з основних кроків кібератаки є компрометація сервера з встановленим SWIFT Alliance Software. Далі ця шкідлива програма звертається до конфігураційного файлу gpca.dat, в якому вказані шаблони пошуку потрібних зловмисникам повідомлень SWIFT. Після цього зловмисники можуть контролювати оброблювані серверною частиною SWIFT повідомлення.

Основна мета полягає в отриманні контролю за повідомленнями SWIFT, в яких буде перевірятися наявність певних текстових рядків, зазначених в конфігураційному файлі. З цікавлять зловмисників повідомлень шкідлива програма може витягувати значення певних полів, таких як transfer references, а також адреси SWIFT для взаємодії з системною базою даних. Отримані значення полів даних використовуються для видалення з системи інформації про певних транзакцій або оновлення даних балансу. Ця функція шкідливої програми працювала в циклі до 6 ранку 6 лютого 2016 р. Такого терміну було достатньо для крадіжки грошових коштів, яка сталася за два дні до його закінчення. Шкідливий інструмент був розроблений спеціально для цієї мети і показує значний рівень знань ПО SWIFT Alliance Access, крім цього, його автори володіли хорошими навичками розробки шкідливих програм.

Шкідлива програма використовує наступний ключ RC4 для розшифровки вмісту свого конфігураційного файлу.

4e 38 1f a7 7f 08 cc aa 0d 56 ed ef f9 ed 08 ef

Рис. Загальна схема кібератаки. (дані BAE Systems)

На першому етапі шкідлива програма перераховує всі запущені на сервері процеси. Якщо вона виявляє процес, в який завантажено бібліотека liboradb.dll вона модифікує два байти в пам'яті з певного зміщення. Модифікації піддаються два байти з оригінальними значеннями 0x75 і 0x04 на інструкцію nop — 0x90 і 0x90. Зазначені два байти представляють інструкції умовного переходу JNZ (якщо не нуль).


Рис. Оригінальна інструкція умовного переходу в коді системної бібліотеки. (дані BAE Systems)


Рис. Виправлена двома nop інструкція умовного переходу в коді системної бібліотеки. (дані BAE Systems)

В результаті такого виправлення шкідлива програма блокує важливу перевірку в коді однією з функцій бібліотеки liboradb.dll, що дозволяє зловмисникам успішно проходити потрібну їм перевірку (валідацію). Сама бібліотека liboradb.dll є компонентом вже згадуваного ЗА swift's Alliance від Oracle. Бібліотека відповідає за виконання наступних функцій:
  • зчитування шляху до бази даних Alliance з системного реєстру;
  • активація цієї бази даних;
  • резервне копіювання бази даних.
Модифікуючи локальний екземпляр SWIFT Alliance, шкідлива програма отримує право на виконання транзакцій над базою даних через мережу SWIFT жертви.

Шкідлива програма відстежує повідомлення SWIFT Financial Application (FIN) шляхом розбору вмісту файлів *.prc і *.fal з наступних директорій.

[ROOT_DRIVE]:\Users\Administrator\AppData\Local\Allians\mcm\in\
[ROOT_DRIVE]:\Users\Administrator\AppData\Local\Allians\mcm\out\
Більш детальну інформацію див. baesystemsai.blogspot.ru/2016/04/two-bytes-to-951m.html

Також відслідковуються всі SWIFT повідомлення з нижчезазначених директорій.

[ROOT_DRIVE]:\Users\Administrator\AppData\Local\Allians\mcp\in\*.*
[ROOT_DRIVE]:\Users\Administrator\AppData\Local\Allians\mcp\out\*.*
[ROOT_DRIVE]:\Users\Administrator\AppData\Local\Allians\mcp\unk\*.*
[ROOT_DRIVE]:\Users\Administrator\AppData\Local\Allians\mcs\nfzp
[ROOT_DRIVE]:\Users\Administrator\AppData\Local\Allians\mcs\nfzf
[ROOT_DRIVE]:\Users\Administrator\AppData\Local\Allians\mcs\fofp
[ROOT_DRIVE]:\Users\Administrator\AppData\Local\Allians\mcs\foff
Всередині повідомлень здійснюється пошук таких вакансій зловмисників банківських значень.

«19A: Amount»
": Debit"
«Debit/Credit :»
«Sender :»
«Amount :»
«FEDERAL RESERVE BANK»
" D"
" С"
«62F: „
“60F: “
»60M: "
«62M: „
“Credit»
«Debit»
" 64: "
" 20: Transaction"
«90B: Price»
Висновок

Проаналізований BAE Systems зразок шкідливого ПЗ дозволяє заглянути всередину киберпреступного інструменту групи хакерів, які добре спланували кібератаку на банк. Багато частині цієї головоломки все ще не розкрито, наприклад, яким чином зловмисники відправляли фіктивні запити на проведення транзакцій, а також як зловмисникам вдалося встановити шкідливе ПЗ в систему і скомпрометувати комп'ютерну мережу. Не знайшли відповідь на найголовніше питання: хто стоїть за цією кібератакою.

Основний шкідливий інструмент з вищенаведеного набору шкідливого ПЗ було розроблено спеціально для цієї кібератаки на конкретну інфраструктуру жертви. Варто також відзначити, що цей набір дозволить зловмисникам надалі проводити аналогічні атаки на банки. Всі фінансові організації, які так чи інакше використовують SWIFT Alliance Access повинні серйозно поставитися до цього кейсу та оцінити використовувану ними систему безпеки.

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

Джерело: Хабрахабр
  • avatar
  • 0

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.