21 апреля в 19:12

Дамп ShadowBrokers: разбираемся в содержимом директории «swift»

Всем привет! В пятницу 14 апреля рано утром в публичном доступе появился новый дамп инструментов и документов Агенства Национальной Безопасности США, украденных APT-группировкой TheShadowBrokers. В данной статье мы попытаемся разобраться, что же содержится в папке swift дампа.



Осторожно, под катом много картинок и текста.

Интересно, что на этот раз группировка выложила дамп на сервисе Steemit, сопроводив дамп текстом о том, как они разочарованы в президенте США Дональде Трампе, и озаглавив его "Lost in translation". Также интересным кажется и тот факт, что сам дамп выложен на сервисе Яндекс.Диск. Владельцем файла является пользователь с ником yurishitova.



Данный архив был расшифрован и выложен на GitHub.

Что содержится в дампе?


Дамп состоит из трех директорий: oddjob, swift, windows. Ниже привожу листинг директорий.

oddjob
oddjob/
├── Binaries
│ ├── oddjob_builder
│ │ ├── bin
│ │ │ ├── oddjob_v3_x64.dll
│ │ │ ├── oddjob_v3_x64.exe
│ │ │ ├── oddjob_v3_x86.dll
│ │ │ └── oddjob_v3_x86.exe
│ │ ├── builder
│ │ │ └── oddjob_config_v3.exe
│ │ └── ODDJOB_BUilder_v3.hta
│ └── Payloads
│ ├── bigpayload.bin
│ ├── five_minute_beacon.bin
│ ├── greha_dll_x64.dll
│ ├── greha_dll_x86.dll
│ ├── OJ_Deleter_2.4.exe
│ ├── one_byte_payload.bin
│ ├── one_minute_beacon.bin
│ ├── process_list.bin
│ ├── two_minute_beacon.bin
│ └── zero_byte_payload.bin
├── Not-For-Release
│ ├── hashes.txt
│ ├── oddjob_v3_x64.dllstrings.txt
│ ├── oddjob_v3_x64.exestrings.txt
│ ├── oddjob_v3_x86.dllstrings.txt
│ └── oddjob_v3_x86.exestrings.txt
├── Testing-Docs
│ ├── ODDJOB_Testing.docx
│ └── tungsten_flame.txt
└── User-Docs
├── BITSversions.xlsx
└── How_to_setup_IIS_7_for_ODDJOB.docx

8 directories, 25 files

swift
swift/
├── 00503_0_254.242_2013mar02
├── 00546_0_ensbdasa-09aug2013
├── 00553_0_ensbdpix3-09aug2013
├── 00554_0_ensbdpix4-09aug2013
├── 00555_0_ensbdrtr1-2013aug09
├── 00557_0_ENSBDVPN1-02AUG2013
├── 00558_0_ENSBDVPN2-02AUG2013
├── 00559_0_ENSBDVPN5-02AUG2013
├── 00560_0_ENSBDVPN6-02AUG2013
├── 00562_0_ENSBDSW01-02AUG2013
├── 00563_0_ENSBDSW02-02AUG2013
├── 00566_0_ENSBPVPN1.txt
├── 00566_1_ENSBPVPN2.txt
├── 00566_2_FW1-Configuration.txt
├── 00566_3_SW1-Configuration.txt
├── 00566_4_SW2-Configuration.txt
├── 00679_0_ENSBDVPN1-23AUG2013
├── 00687_0_ENSBDVPN2-23AUG2013
├── 00697_0_ENSBDVPN5-23AUG2013
├── 00702_0_ENSBDVPN6-23AUG2013
├── 00703_0_ensbdsslvpn1-system-2013aug15.cfg
├── 00705_0_254.229-2013sep06.txt
├── 00708_0_ensbdasa1-31aug2013
├── 00710_0_ensbdfw1-2013sep06
├── 00711_0_ensbdfw3-2013sep06
├── 00713_0_ensbdfw4-2013sep06
├── 00715_0_ensbdfw5-2013sep06
├── 00720_0_ensbdpix3-31aug2013
├── 00725_0_ensbdpix4-31aug2013
├── 00727_0_ensbdpix5-31aug2013
├── 00729_0_ensbdrtr1-2013sep06
├── 00734_0_ensbdsslvpn1-user-2013aug15.cfg
├── DNS Zone Trans 2013_10_11.txt
├── DNS Zone Trans 2013_10_17.txt
├── DSL1opnotes.txt
├── DSL2opnotes.txt
├── DSquery Belgium DC.xlsx
├── dsquery_Query_computers_from_MAIL001.txt
├── DSquey Dubai enDCBACKUP.xlsx
├── DSquey Egypt DC.xlsx
├── DSquey END boxes and MX servers.xlsx
├── DSqueyMain.xlsx
├── Eastnets_Huge_Map_05_13_2010.vsd
├── Eastnets_UAE_BE_Dec2010.vsd
├── Employee.txt
├── ~$$EN_DUBAI_ASA.~vsd
├── EN_DUBAI_ASA.vsd
├── EN_DUBAI_MAIN.vsd
├── EN Production net 01 AUG 2013_kdmoore.xlsx
├── EN Production net 01 AUG 2013.xlsx
├── ENSBDSSL1-2013SEP27.xml
├── ENSB DXB Passwords V2.4.xlsx
├── ENSBJVPN1_cfg.txt
├── ENSB UAE NW Topology V2.0.1339670413.vsd
├── FATags.txt
├── Important NOTES.txt
├── initial_oracle_exploit.sql
├── JEEPFLEA_MARKET_BE.xls
├── JEEPFLEA_MARKET Implants.xlsx
├── JEEPFLEA_MARKET Passwords V2.4.xlsx
├── JEEPFLEA_MARKET_UAE.xlsx
├── JF_M FIN Exfil.vsd
├── JFM_Status.pptx
├── Legend.pptx
├── list_of_saa_servers_8May2013.xlsx
├── NOC_firewall_passwords_30May2013.txt
├── Production.txt
├── ~$SB JO passwords V 2.docx
├── swift_msg_queries_all.sql
└── VPNFW_Plan.txt

0 directories, 70 files

В директории windows содержится большое количество файлов, предлагаю читателю самостоятельно ознакомиться с ней, пройдя по ссылке выше на github. Уточню лишь, что данная директория содержит в себе фреймворки для эксплуатации, эксплойты и импланты, использованные АНБ для проникновения. При наличии интереса к данной тематике будет опубликовано продолжение статьи с разбором папки windows и её содержимого.

swift


В процессе изучения содержимого директории сложилось впечатление, что это общая проектная папка, куда сотрудники складывали свои наработки и проектную документацию (судя по коду в скриптах из директории windows, предполагается, что эта папка автоматически маунтится к машине специалиста). По последним датам из различных файлов можно предположить, что содержимое было украдено в сентябре 2013 года, когда проект был еще в статусе полноценно кипящей работы. Исходя из текстовых и офисных файлов, можно сделать вывод, что атаке подверглась организация EastNets, связанная с разработкой финансового ПО и SWIFT.

Описание EastNets с сайта SWIFT
EastNets Group is an international company specializing in creating software for financial organizations. Since its foundation, EastNets has been closely cooperating with SWIFT, participating in products, solutions and technological platforms development.

EastNets has created and is developing its core solution for Anti-Money Laundering and financing of terrorism (AML) en.SafeWatch, using its own expertise in secure data transmission, as well in service-oriented applications development.

EastNets Group offices are located in Brussels, Paris, New York, Los Angeles, Madrid, Hague and Luxembourg. With other regions, company is working via business partners’ network. Alliance Factors has been representing EastNets interests In Russia and CIS on an exclusive basis since 2004.

EastNets solutions users are the largest banks, including ING Bank, ABN Amro Bank, Bank of China, Credit Lyonnais Bank, Raiffeisen Bank, Hypovereinsbank, Nordea Group, Fortis Bank and many others.

Следующие файлы представляют из себя конфигурации сетевого оборудования, а именно:

Cisco PIX
00553_0_ensbdpix3-09aug2013
00554_0_ensbdpix4-09aug2013
00711_0_ensbdfw3-2013sep06
00713_0_ensbdfw4-2013sep06
00715_0_ensbdfw5-2013sep06
00720_0_ensbdpix3-31aug2013
00725_0_ensbdpix4-31aug2013
00727_0_ensbdpix5-31aug2013


Cisco ASA
00546_0_ensbdasa-09aug2013
00566_2_FW1-Configuration
00708_0_ensbdasa1-31aug2013
00710_0_ensbdfw1-2013sep06


Маршутизатор Cisco
00555_0_ensbdrtr1-2013aug09
00729_0_ensbdrtr1-2013sep06


Cisco switch
00562_0_ENSBDSW01-02AUG2013
00563_0_ENSBDSW02-02AUG2013
00566_3_SW1-Configuration
00566_4_SW2-Configuration


Оборудование Juniper
00503_0_254.242_2013mar02
00557_0_ENSBDVPN1-02AUG2013
00558_0_ENSBDVPN2-02AUG2013
00559_0_ENSBDVPN5-02AUG2013
00560_0_ENSBDVPN6-02AUG2013
00679_0_ENSBDVPN1-23AUG2013
00687_0_ENSBDVPN2-23AUG2013
00697_0_ENSBDVPN5-23AUG2013
00702_0_ENSBDVPN6-23AUG2013
00705_0_254.229-2013sep06


Директория в числе прочих содержит файлы Microsoft Office, часть из них запаролена, брутфорс по известным словарям не дал результата:

Файлы: ENSB DXB Passwords V2.4.xlsx, JEEPFLEA_MARKET Passwords V2.4.xlsx

Есть и презентация, созданная, судя по всему, для отчета о текущем статусе проекта. Презентация, судя по метаданным, создана 01.07.2013, последние изменения внесены 12.08.2013. Можно предложить, что примерно в эту дату и состоялся отчет.
Файл: JFM_Status.pptx



Третья страница презентации говорит нам о неком JEEPFLEA_POWDER, упоминаний о котором больше нет в архивах. Можно предположить, что данный проект называется JEEPFLEA и делится на этапы, из которых упомянуты только MARKET и POWDER. Далее в статье я буду использовать такое условное разделение.



Остановимся на этом поподробнее.

Первый слайд


Данный слайд многое говорит о проекте в целом. этап JEEPFLEA_MARKET.

Цель этапа: отделения компании EastNets в Дубай, Бельгии и Египте.

Получено на данном этапе: 9 SAAs — могут иметься в виду внешние системы компании. Admins — могут иметься в виду админские доступы к внутренним системам.
Не известно, что означает Quad в презентации.

На слайде сообщается, что были получены доступы к пользовательской сети (employee network), а также планируется установка инструмента ZESTYLEAK на VPN-фаерволы компании. Исходя из открытых источников, ZESTYLEAK — имплант, входящий в состав FEEDTROUGH, разработанный АНБ для установки на сетевое оборудование марки Juniper. Упоминание о данном ПО есть в каталоге ANT (документы, опубликованные Эдвардом Сноуденом):



Третий слайд


На третьем слайде презентации говорится о планах этапа JEEPFLEA_POWDER, на момент редактирования презентации особенных успехов у АНБ нет.

Цель этапа: филиалы компании BCG в Венесуэле и Панаме. Business Computer Group — реселлер компании EastNets в Венесуэле и Панаме.

Описание BCG с сайта EastNets
http://www.eastnets.com/Partners/Business_Resellers/Americas_copy1.aspx
Founded in 1994, BCG Business Computer Group is the strategic allied of EastNets for Latin America. Based in Panama and with an installed base of customers over 200 institutions distributed along all the Pacific Ocean Coast, BCG proudly renders Consultancy, Marketing, Sales and Support Service on behalf of EastNets. Our customers enjoy the comprehensive suite of products, such as SafeWatch Filtering, SafeWatch Profiling, Reporting, among others in the region.
Additionally, taking advantage of economy of scales inherited by BCG's Service Bureau PREMIER of SWIFT, small institutions have within their grasp EastNets Portfolio at competitive prices.
The above reasons made a definitive case for the compliance officers to join EastNets/BCG family of satisfied and happy users.
Geographical Coverage
Panama, Venezuela & the whole of Latin America except Brazil

Планы этапа: идет работа по компрометации машин администраторов с использованием имплантов SECONDDATE и IRONVIPER.

SECONDDATE — имплант для осуществления man-in-the-middle атаки с использованием веб-протоколов.

Доступно описание из документов, опубликованных Сноуденом.

По всей видимости, имплант может представлять из себя некое подобие фреймворка BeEF.

Продолжим изучать содержимое директории swift.

Во многих таблицах встречаются следующие интересные столбцы:

  • Implant/Implanted.В данных столбцах записывается аббревиатура установленного на скомпрометированном хосте импланта, например FLAV — FlewAvenue.
  • PSP. Антивирусное решение на хосте. PSP — Personal Security Products.
  • Trigger. Содержат строку, которую необходимо послать оператору на скомпрометированный хост для вызова бэкдора. Данная строка задаётся при компиляции полезной нагрузки фреймворком DanderSpritz. Это позволяет скрывать присутствие импланта на целевой системе и получить к нему доступ по запросу.
  • Vulnerable. В данный столбец записывается аббревиатура эксплойта, использованного для компрометации. Например ESAU — EsteemAudit.



В директории также присутствует множество таблиц с результатами запросов к домен-контроллерам корпоративной сети EastNets, в которых есть информация об имени хостов, установленной ОС и сервис пакам, фамилии и имена сотрудников и пр. служебная информация.



В директории имеются файлы, похожие на проектные заметки, а именно:

  • Файлы с результатами трансфера DNS-зоны изнутри скомпрометированной сети. Судя по датам в названии файлов, трансфер зоны производился 11.10.2013 и 17.10.2013. Файлы: DNS Zone Trans 2013_10_11.txt, DNS Zone Trans 2013_10_17.txt
  • Заметки сотрудников, задействованных в проникновении. В них имеются логи имплантов, полученные со скомпрометированных хостов, заметки о конфигурации имплантов, описаны шаги проникновения в некоторые хосты.
  • Файлы DSL1opnotes.txt, DSL2opnotes.txt представляют из себя логи фреймворка DanderSpritz, по ним мы можем видеть некоторые операции по проникновению. В них мы можем увидеть идентификатор пользователя, задействованного в работах по проникновению:

    PROJECT=JEEPFLEA_MARKET
    OPUSER=33159
    OPSCHEDULE=13083019453124
    SCRUBVER=6.007000008

    А вот так выглядит лог фреймворка DanderSpritz:

    Скрытый текст
    ======================= T2
    --- 192.168.200.52 --- ENSBDSL2
    =======================
    Win2k8 64 bit R2
    1:25 PM 5/14/2013 PC2 target : 192.168.200.52
    source : 192.168.200.11
    final : 192.168.200.52
    cb : 4378, 192.168.200.11
    id : 0x100011b3c

    key : jeepflea_market
    ICMP : ICMP 8,0

    Uptime:4 days, 16:6:5
    Auditing:2013-05-14 13:30:17 z0.0.0.12] Security auditing dorked, do not stop command 798 or you will lose your blessing
    PSP: Symantec Endpoint Protection 11

    | 3756 | 560 | ------D:\Double-Take\DoubleTake.exe


    grep -mask SPFILEACCESS.ORA -path D:\Alliance\Access\Database\database -pattern audit -nocase
    cd c:\$Recycle.bin
    put D:\DSZOPSDisk\Preps\swift_msg_queries_all.1368533247.sql -name C:\$Recycle.Bin\S-1-5-~1\$ICD12FA.txt
    run -command "cmd.exe /q" -redirect
    D:\alliance\access\database\bin\sqlplus.exe saauser/Aetq9f7CQtljCHtAmstCGF64C
    1:59 PM 5/14/2013 -- disconnected when running the command
    1:59 PM 5/14/2013 -- retriggered back on, checking logs

    SQL>@$ICD12FA.txt

    output file:$ICD12FB.txt
    start:20130424
    end:20130514

    2:16 PM 5/14/2013 -- getting file
    2:20 PM 5/14/2013 -- clean up
    delete $ICD12FA.txt
    delete $ICD12FB.txt

    monitor packetredirect -listenport 3333 -raw
    redirect -tcp -implantlisten 42316 -target 127.0.0.1 42316
    dir -mask * -path c:\ -age 30m -recursive
    prettych
    quitanddelete

    4:06 PM 5/14/2013 -- BURNED

  • VSD файлы. В основном это карты сети отделений EastNets в различных странах.

Документы Office


Некоторые файлы явно были созданы в самом EastNets и содержат соответствующие корпоративные пометки, в то время как другая часть файлов была создана непосредственно в АНБ, о чём говорят пометки с названием JEEPFLEA_MARKET. В нескольких из таких файлов найдены метаданные, где раскрываются авторы документов, а также время создания и изменения документов. Исходя из этих данных, первый документ был создан 01.09.2011:



Тег NSA-FTS327 может говорить о принадлежности сотрудника Pecoraro Michael к подразделению Requirements & Targeting, которое в свою очередь входит в Tailored Access Operations (FTS32 — TAO).

Последние изменения в файл JEEPFLEA_MARKET_BE.xls (информация по отделению EastNets в Бельгии) внес некий Heidbreder Nathan S SSG NSA-F22.

Тег NSA-F22 может говорить о принадлежности сотрудника к подразделению F22: European Cryptologic Center (ECC), Германия.

В социальной сети LinkedIn зарегестрирован акканут, совпадающий по признакам на рассматриваемого сотрудника: nathan heidbreder, специальность значится как «Cryptologic Network Warfare Specialist at US Army». Ссылка.



Поиск по твиттеру тоже дал результат: найден вероятный твиттер-аккаунт этого человека, зарегистрированный в 2014 году. Твиттер пуст и явно используется лишь для того, чтобы читать поток твитов из подписок. По подпискам этого твиттера можно предположить что данный твиттер-аккаунт и есть аккаунт этого человека.

Скриншот страницы twitter.com/NHeidbreder:



Подписки пользователя в Twitter:



Скриншот страницы nathan heidbreder в Linkedin:



В процессе написания данной статьи аккаунты в Linkedin и Twitter были удалены, однако скриншоты сохранились.

Запрос в гугл по ключевым словам «nathan heidbreder us army» ведет на ресурс corpsman.com, где в списке фигурирует Heidbreder Nathan Scott.

Интересная деталь: твиттер Austin Hurlock был единственным подписчиком аккаунта @NHeidbreder в твиттере и аккаунтом, с которого была подтвержена компетенция «security» аккаунта nathan heidbreder в Linkedin.

На момент написания статьи аккаунт Austin Hurlock был доступен в Linkedin. В момент создания файлов по проекту JEEPFLEA, этот человек работал на должности Computer Network Defense Analyst в Marine Corps:




SQL


Помимо прочего в директории содержатся файлы с командами Oracle SQL для извлечения интересущей АНБ информации, приведу несколько примеров (Файл initial_oracle_exploit.sql):

select '"name","account_status","password","spare4"' from dual;
select '"'||name||'","'||account_status||'","'||u.password||'","'||spare4||'"' from user$ u, dba_users
where spare4 is not null
and username = name;

select '"SWIFT_Dates_In_Database"' from dual;
select substr(table_name,6,20) SWIFT_Dates_In_Database
from all_tables
where owner = 'SAAOWNER'
and table_name like 'MESG%'
and table_name not like '%YYYYMMDD%'
order by 1 desc

Заключение


Уверен, что более глубокий анализ файлов данной директории смогут провести специалисты по форензике и OSINT, которым я не являюсь. На данный момент нет возможности уверенно утверждать что все вышеперечисленные события и предполагаемые исполнители действительно существовали. Однозначных доказательств аутентичности выложенных файлов не существует. Кроме того, тяжело сделать вывод о том, имеют ли какое-либо отношение данные люди к озвученным операциям спецслужб США.

Предлагаю хабраюзерам поучаствовать в дисскусии в комментариях.

Андрей Рогожкин

UPD: Коллеги подсказали, что аббревиатура SAA может означать Swift Alliance Access, комплекс обмена сообщениями, стоящий на стороне клиента. Т.е. возможно в ходе проекта были скомпрометированы 9 SAA у клиентов EastNets.
Автор: @mylittlebitz
Информзащита
рейтинг 68,42
Ведущий ИБ-интегратор

Комментарии (2)

  • +2
    На момент написания статьи аккаунт… был доступен в Linkedin.


    Сеть Linkedin заблокирована Роскомнадзором на территории РФ. В тоже время одна из ведущих компаний, которая выпускает и продает железки как раз для выполнения гос. требований требований с этой сетью активно работает… интересно получается :)

    Статья в целом неплохая но не хватает конкретики, что делать Банка или Российским сервисным бюро в свете этой утечки.
    • 0
      Так выпустили же за несколько дней до http://www.infosec.ru/news/9992

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.

Самое читаемое Разработка