sap hands on lab_ru
TRANSCRIPT
![Page 1: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/1.jpg)
Hands-on LabАнализ SAP систем
Юдин Алексей
Positive Technologies
![Page 2: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/2.jpg)
LABS
Поиск сервисов. Получение информации. Удаленный подбор паролей.
Перехват данных аутентификации (RFC/DIAG). Обход авторизаций. VBA+RFC.
Анализ полученного доступа. Доступ к хешампаролей пользователей. Подбор паролей “offline”.
Получение данных из другого манданта. Доступ к файлам ОС. Запуск команд ОС
![Page 3: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/3.jpg)
ОБНАРУЖЕНИЕ СЕРВИСОВ
![Page 4: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/4.jpg)
Инструментарий
Nmap
RFCSDK/NWRFCSDK
Vbs/Python
SAP Frontend 7.20
![Page 5: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/5.jpg)
Сценарий
Сканирование портов
Получение информации о сервисах
Подбор мандантов
Подбор пользователей (RFC)
Подбор пользователей (GUI)
![Page 6: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/6.jpg)
Сканирование портов
Поиск SAP системhttp://scn.sap.com/docs/DOC-17124
• SAP DIAG - 32xx-3299 TCP
• SAP RFC - 33xx-3399 TCP
• ICM HTTP - 80xx TCP
• Message Server HTTP -81xx
• HTTP – 5xxxx
ОС
• SSH/Telnet/Rlogin – 22/23/512-514
СУБД
• Oracle 1521-1530
![Page 7: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/7.jpg)
Автоматизация. Использование SAP RFCSDK
SAP RFCSDK – библиотека для разработки приложений работающих с SAP системой по протоколу SAP RFC
Содержит утилиту для тестирования RFC -Startrfc.exe
Может использоваться для интеграции с PHP,Perl, VB, С++, Python
![Page 8: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/8.jpg)
StartRFC.exe
![Page 9: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/9.jpg)
StartRFC.exe. Получение информации
![Page 10: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/10.jpg)
StartRFC.exe. Подбор мандантов и паролей
Подбор мандантов
Перебор паролей и пользователей
![Page 11: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/11.jpg)
Стандартные учетные записи
SAP* - 06071992
SAP* - PASS
DDIC – 19920706
SAPCPIC – ADMIN
EARLYWATCH - SUPPORT
TMSADM – PASSWORD
![Page 12: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/12.jpg)
SAPGUI Scripting
Поддержка включена в SAP Frontend по умолчанию
Для перебора паролей достаточно знания VBS
Для автоматизации действий в SAP системе требуется включение sapgui_userscripting
Может использоваться VBS/JScript
![Page 13: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/13.jpg)
SAPGUI Scripting. VBS
Пример подбор пароля через DIAG
Используем функцию OpenConnectionByConnectionString
В соответствующие поля вводим учетные данные - findById
Контролируем результат выполнения скрипта (ошибка/не ошибка)
Выводим результат
![Page 14: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/14.jpg)
Пример VBS
![Page 15: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/15.jpg)
Использование Python
Пример получения данных из структур SAP
Пример получения данных из таблиц SAP
Нужен RFC SDK, компилятор С/C++, NWRFC for Python
Контролируем результат выполнения (ошибка/не ошибка)
Выводим результат в консоль/файл
![Page 16: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/16.jpg)
Пример Python
![Page 17: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/17.jpg)
ПЕРЕХВАТ ДАННЫХ
![Page 18: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/18.jpg)
Инструменты
Wireshark
SAP DIAG plugin for Wireshark
Microsoft Excel + VBA
![Page 19: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/19.jpg)
Перехват паролей
Перехват паролей c использованием протокола DIAG
• Wireshark plugin SAP DIAG Decompress (2011) (http://www.securitylab.ru/software/409481.php)
• SApCap (2011) (http://www.sensepost.com/labs/tools/poc/sapcap)
• Cain&Abel (2011) (http://oxid.it)
Перехват паролей с использованием протокола RFC
• Attacking SAP by Mariano Nuñez Di Croce(https://www.blackhat.com/presentations/bh-europe-07/Nunez-Di-Croce/Presentation/bh-eu-07-nunez_di_croce-apr19.pdf)
![Page 20: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/20.jpg)
Перехват паролей DIAG
![Page 21: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/21.jpg)
Перехват данных RFC
Пароли передаются в скрытом виде
Алгоритм обфускации – XOR
Ключ для восстановления пароля
31 3e c3 60 e1 06 4e 3f 6b 48 c8 12 f5 fc 20 3c 89 61 2f f1 ef 2e af f3 bd ec 7e 25 b6 a0 71 83 a3 ea7f ec 09 8a 40 21
![Page 22: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/22.jpg)
Перехват паролей RFC
![Page 23: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/23.jpg)
Использование VBA
Пример получения данных из структур SAP
Пример получения данных из таблиц SAP
Нужен SAP GUI или .ocx компоненты для импорта
Контролируем результат выполнения (ошибка/не ошибка)
Выводим результат в Excel
![Page 24: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/24.jpg)
Пример VBA
![Page 25: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/25.jpg)
ПОДБОР ПАРОЛЕЙ ПО ИЗВЕСТНОМУ ХЕШУ
![Page 26: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/26.jpg)
Инструменты
SAP Frontend
Perl
John the Ripper. Сommunity Enhanced
![Page 27: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/27.jpg)
Анализ полученного доступа
Нашли учетную запись
Осуществляем попытку входа
В случае успешного входа анализируем права (в первую очередь запускаем транзакцию SA38/SE38/SE16/SE17/ST04)
Смотрим свои права и привилегии через RSUSR002
![Page 28: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/28.jpg)
RSUSR002
![Page 29: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/29.jpg)
Собираем хеши паролей
Таблицы с хешами: USR02,USH02,USRPWDHISTORY
Способы получения:
• SE16/SE16N/SE17
• ST04/SQL Command Editor
• RFC
• Database Level…
• OS Level/получение данных из файла ОС
Инструменты: SAPGUI, MIL Read Table, VBS, SQLplus ….
![Page 30: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/30.jpg)
SE16
![Page 31: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/31.jpg)
ST04.SQL Command Editor
![Page 32: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/32.jpg)
Получение данных с использованием SA38/SE38
Запускаем тр. SE93 получаем программу запуска.
Открываем таблицу STSC получаем программу запуска.
SA38/SE38 запускаем программу напрямую.
![Page 33: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/33.jpg)
SE93 Maintain transaction
![Page 34: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/34.jpg)
STSC SAP Transaction Codes
![Page 35: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/35.jpg)
Получение данных из таблиц через SQ01/SQ02
В тр. SQ02 создаем новый инфонабор (таблица)
Переходим в тр. SQ01, выбираем созданный инфонабор.
Определяем список полей для вывода
Запускаем отчет, получаем результат.
![Page 36: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/36.jpg)
SQ01/SQ02
![Page 37: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/37.jpg)
SQ01/SQ02
![Page 38: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/38.jpg)
SQ01/SQ02
![Page 39: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/39.jpg)
SQ01/SQ02
![Page 40: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/40.jpg)
SQ01/SQ02
![Page 41: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/41.jpg)
SQ01/SQ02
![Page 42: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/42.jpg)
Уязвимости алгоритмов хеширования
CODVN A – устаревший алгоритм разработанный SAP – длина пароля <=8, символы в UPPERCASE
CODVN B – устаревший алгоритм на базе MD5, длина пароля <=8 остальная часть пароля обрезается, все символы в UPPERCASE, спецсимволы заменяются на символ ^
![Page 43: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/43.jpg)
Уязвимости алгоритмов хеширования
CODVN D – также устаревший алгоритм предназначался для того чтобы исправить ошибки алгоритма B – в части урезания паролей и использования спец символов
CODVN E – пришел на смену паролям B и D ибыл призван устранить их проблемы, работает в версиях с 4.6x до 6.x
• SAP Note 874738 - New password hash calculation procedure (code version E)
![Page 44: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/44.jpg)
Уязвимости алгоритмов хеширования
CODVN F – наиболее часто используемый на текущий момент алгоритм хеширования, основан на SHA1, длина пароля до 40 символов , перед хешированием строки переводятся в UTF-8, поэтому символы могут быть практически любые, работает в версиях начиная с 7.00
![Page 45: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/45.jpg)
Уязвимости алгоритмов хеширования
CODVN G = B+F – можно подобрать сначала часть пароля размером в 8 символов по алгоритму B а затем использовать эту часть для подбора пароля по алгоритму G, работает в версиях начиная с 7.00
![Page 46: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/46.jpg)
Уязвимости алгоритмов хеширования
CODVN H – наиболее безопасный алгоритм хеширования – основан на SHA1 с переменной длиной соли, работает в версиях начиная с 7.02
CODVN I = B+F+H – проблемы аналогичные G
Скорость подбора паролей
• до 700 000 паролей в секунду для CODVN B
• до 300 000 паролей в секунду для CODVN G
![Page 47: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/47.jpg)
John The Ripper. Community Enhanced
John the Ripper 1.7.9-jumbo-5 включает анализ алгоритмов генерации хешей паролей SAP систем типа B и F
Словари паролей Openwall wordlists collection full version - paid download
Используются возможность разделения задачи на несколько CPU.
![Page 48: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/48.jpg)
Тестирование паролей
Выгружаем USR02 (поляBNAME/BCODE/PASSCODE)
Формируем файлы формата username:username<space>$HASHCODE
Выбираем словарь или создаем свой
Запускаем john the ripper
![Page 49: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/49.jpg)
Результаты тестирования
![Page 50: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/50.jpg)
ДОСТУП К ФАЙЛАМ И КОМАНДАМ ОС
![Page 51: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/51.jpg)
Просмотр директорий.
Тр. AL11
SE37 запуск функционального модуля.
CG3Y/CG3Z транзакции
![Page 52: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/52.jpg)
Directory Listing
![Page 53: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/53.jpg)
Directory Listing
![Page 54: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/54.jpg)
Get Files
![Page 55: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/55.jpg)
Put Files
![Page 56: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/56.jpg)
Запуск команд ОС
Запускаем транзакцию SM51
Набираем в поле транзакций grep
Вводим текст вида nnn” ? & <OS command> &
![Page 57: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/57.jpg)
Запуск команд ОС
![Page 58: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/58.jpg)
Запуск команд ОС
![Page 59: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/59.jpg)
Запуск команд ОС
![Page 60: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/60.jpg)
Запуск команд ОС
Запускаем транзакцию SM49/SM69
Создаем свой вариант запуска
Запускаем с нужными опциями
Вывод в дальнейшем можно сохранить локально.
![Page 61: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/61.jpg)
Запуск команд ОС
![Page 62: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/62.jpg)
Запуск команд ОС
![Page 63: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/63.jpg)
Запуск команд ОС
![Page 64: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/64.jpg)
Запуск команд ОС
Запускаем транзакцию SA38
Вводим программу RSBDCOS0
В поле вводим программу OS
Получаем вывод программы.
![Page 65: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/65.jpg)
Запуск команд ОС
![Page 66: SAP hands on lab_ru](https://reader034.vdocuments.site/reader034/viewer/2022052301/55a16b6f1a28ab34088b45b4/html5/thumbnails/66.jpg)
Запуск команд ОС