Безпека SAP
Якщо ти працюєш у компанії списку Forbes 500, то висока ймовірність того, що твою зарплату вважає HR модуль SAP ERP. Я покажу, як, використовуючи помилки SAP, подивитися чужу зарплату в системі SAP ERP.

Доступу нема, а зарплату подивитися хочеться. Ідемо дивитися експлоїти для SAP. Який у нас інструментарій з експлоїтами? Правильно, Metasploit. Гуглим. Ага, на github є ціла папочка metasploit-framework/modules/auxiliary/scanner/sap/. Три десятки експлоїтів, однак:

Ось, наприклад, "Обхід автентифікації за допомогою Verb Tampering" (modules/auxiliary/scanner/sap/sap_ctc_verb_tampering_user_mgmt.rb), про нього вже писали на Хабре.
Коротко суть уразливості в тому, що один з адмінських сервісів Java-сервера, який входить до пакета постачання SAP NetWeaver, доступний запитом типу HEAD (на противагу забороненим запитам GET та POST). Якщо відкрити github.com/rapid7/metasploit-framework/blob/master/modules/auxiliary/scanner/sap/sap_ctc_verb_tampering_user_mgmt.rb ми бачимо, що проблема полягає у зверненні до сервлета:
/ctc/ConfigServlet?param=com.sap.ctc.util.UserConfig;CREATEUSER;USERNAME=' + datastore['USERNAME'] + ',PASSWORD=' + datastore['PASSWORD']
Звичайно, ми можемо встановити Metasploit і запустити скрипт з локального комп'ютера. Але:
1. Немає доступу до локальної мережі, а сервіс швидше за все закритий на доступ з-за 2. Скрипт буде запущено від твого імені
Тому давай, а) складемо скрипт самі на основі коду sap_ctc_verb_tampering_user_mgmt.rb б) дамо запустити цей скрипт комусь із колег, використовуючи одну з помилок XSS
Про XSS на Хабрі писали вже багато разів (читай раз habrahabr.ru/post/66057 дваhabrahabr.ru/post/197672)
Йдемо гуглити на захистфокусу. На запит «sap xss exploit site:http://www.securityfocus.com/» випадає 359 результатів

www.securityfocus.com/bid/15361/exploit бачить запит, який виконає Javascript на комп'ютері користувача:
Замість дамми ми вставимо HEAD-запит до /ctc/ConfigServlet
А для того, щоб результатів запиту ніхто не побачив, покажемо користувачеві картинку, обов'язково з котиками:
Отже, складаємо лист колегам:

Ніна Іванівна грає у Flash-гру:

А ми отримуємо користувача test444, який (якщо активовано NetWeaver ABAP як джерело користувачів) створиться не тільки на сервері NetWeaver Application Server Java, але і в бекенді – NetWeaver Application Server ABAP.

Логін, перевірити. Транзакція HR-модуля працює!

Висновки.Ми використали дві вразливості 2011 та 2009 року. При регулярному оновленні системи патчами такий сценарій буде неможливим. На жаль, багато базисників забувають регулярно заглядати в service.sap.com/securitynotes та перевіряти відповідність останнім патчам, чи роблять це нерегулярно. З 2010 року компанія SAP організовує Security Patch Day кожного другого вівторка кожного місяця, коли відбувається масовий випуск патчів з безпеки. Компанія SAP просить партнерів не публікувати та не розголошувати інформацію про знайдені вразливості як мінімум 3 місяці з моменту випуску патчу. Однак наші дослідження показують, що багато (у тому числі великих) клієнтів далеко не завжди встановлюють оновлення до 3 місяців.
Автор - Данило Лузін Консалтинговий підрозділ ТОВ «САП СНД» Космодаміанська наб. 52/7, 113054 Москва Т. +7 495 755 9800 дод. 3045 М. +7 926 452 0425 Ф. +7 495 755 98 01
Update:Деякі люди не захотіли прочитати статтю далі заголовка, щоб зрозуміти її суть. Щоб не вводити нікого в оману, ми вирішили змінити заголовок, що відображає вміст посту.
SAP Leonardo Hackathon від velcom та SAP для розробників з Білорусі
Можливості рішення SAP Business One ERP на платформі SAP HANA
Коментарі 36
У відповідь на п'ятничний лист колегам ви сильно ризикуєте отримати відповідь:
Зацініть який наказ про звільнення!
> Зацініть якісь котики. 11
Однак наші дослідження показують, що багато (у тому числі великих) клієнтів далеко не завжди встановлюють оновлення до 3 місяців.
Це все теоретично так добре, а на практиці це купа милиць)) З першими двома завданнями може впоратися 1с, з іншими можна використовувати інші продукти. Я просто знаю купу випадків, де люди плуються від SAP, за такі гроші купуєш тільки милиці.
Я пам'ятаю коли працював в одній компанії, керівництво купило софтину (не SAP, але подібну) за просто нереальні бабки, для так званого спрощення та ведення бізнес процесів, завдань, контр агентів і т.д. і закупили ще купу ліцензій користувача. Так ось через пару днів коли в систему було завантажено близько 5гб документів, система стала гальмувати просто неможливо (крутилася на дуже потужному сервері за тими мірками), звернення до служби тих підтримки не давали осудної відповіді, а через якийсь час і зовсім всі забули про цю систему у компанії. На мене краще оновити парк комп'ютерів і серверів у компанії, ніж купувати таке.
Другий сценарій. Працював у великій компанії, яка об'єднувала кілька галузевих підприємств у країні. За корпоративними стандартами закупилиCISCO, розробили документацію на проекти всередині компанії. Пропонував керівництву заощадити та направити кошти на інші потреби іт інфраструктури компанії (проблем було купа), та й досвід із мережами у мене був пристойний - пропрацював довгий час у телекомі. Усі дивилися косо і не підпускали своїх до проекту. За контрактом компанія постачальник повинна була монтувати та налаштовувати обладнання та будувати мережу, але як завжди грошей на все не вистачило, поставили лише частину обладнання і про монтаж та налаштування не йшлося. Зате через місяць ІТ директор купив собі новий БМВ 7 моделі. Через кілька місяців весь проект поповз униз, у результаті все довелося монтувати і налаштовувати мені, оскільки обладнання тупо стояло в коробках до кращих часів. А через півроку, ІТ директор звільнився)))
Використовується і активно. Зразок: Роснано, Камаз. Щоб SAP запрацював у компаніях 10000+, потрібно дороге доопрацювання, що перекриває вартість розробки системи з нуля. За оцінкою деяких експертів (зараз не зможу знайти посилання, бачив у LinkedIn у тематичній групі), активно працюють у продуктивності системи SAP кастомізовані більш ніж на 50%.
Я не хочу чіпати тему відкатів та іншого розпилу, т.к. це нудно та не цікаво. Бувають ще політичні причини, пов'язані із отриманням кредитів тощо. Якщо абстрагуватися від цього, то SAP впроваджують як це не банально звучить для певної стандартизації ІТ у компанії, насамперед із метою продажу іноземним інвесторам (в українських реаліях) чи підвищення капіталізації.
Якщо оцінювати з позиції споживчих властивостей продукту, дуже цікава частина, пов'язана з реалізацією бізнес-процесів виробництва, дистрибуції, управління матеріальними потоками і ланцюжками доданої вартості. Це той випадок, коли важливіший алгоритм,ніж гарний та зручний інтерфейс.
Що стосується бухгалтерії - то використання SAP ERP FI/CO в Україні, на мій погляд, абсолютно безглузда витівка, т.к. тут бізнес-процес визначається насамперед локальним законодавством. І 1С тут абсолютний чемпіон.