Сигурност на SAP
Ако работите за компания от Forbes 500, има голяма вероятност заплатата ви да се изчислява от SAP ERP HR модула. Ще покажа как, използвайки SAP грешки, да видите заплатата на някой друг в SAP ERP системата.
Няма достъп, но искам да видя заплатата. Нека да разгледаме експлойтите за SAP. Какъв набор от експлойт инструменти имаме? Точно така, Metasploit. Google. Да, има цяла папка metasploit-framework/modules/auxiliary/scanner/sap/ в github. Три дузини експлойта обаче:
Ето, например, „Authentication bypass using 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 на Habré вече е писано много пъти (прочетете веднъж habrahabr.ru/post/66057 дваhabrahabr.ru/post/197672)
Да отидем на google securityfocus. 359 резултата за "sap xss exploit site:http://www.securityfocus.com/"
Според www.securityfocus.com/bid/15361/exploit виждаме заявка, която ще изпълни Javascript на компютъра на потребителя:
Вместо манекен, ще вмъкнем HEAD заявка към /ctc/ConfigServlet
И така, че никой да не види резултатите от заявката, ще покажем на потребителя снимка, винаги с котки:
И така, пишем писмо до колегите:
Нина Ивановна играе флаш игра:
И получаваме потребителя test444, който (ако NetWeaver ABAP е активиран като потребителски източник) ще бъде създаден не само на Java сървъра на NetWeaver Application Server, но и в бекенда - NetWeaver Application Server ABAP.
Влезте и проверете. Транзакцията на HR модул работи!
Заключения.Използвахме две уязвимости от 2011 и 2009 г. Ако системата се актуализира редовно с пачове, такъв сценарий няма да е възможен. За съжаление много потребители забравят да проверяват редовно service.sap.com/securitynotes, за да проверят за най-новите корекции, или не го правят редовно. От 2010 г. SAP организира „Ден на корекциите за сигурност“ всеки втори вторник на всеки месец, когато пакетите за сигурност се пускат масово. SAP моли партньорите си да не публикуват или разкриват информация за откритите уязвимости поне 3 месеца от момента на пускане на корекцията. Нашето проучване обаче показва, че много (включително големи) клиенти не винаги инсталират актуализации в рамките на 3 месеца.
Автор — Даниил Лузин Консултантско подразделение на SAP CIS LLC Kosmodamianskaya nab. 52/7, 113054 Москва Т. +7 495 755 9800 вътр. 3045 М. +7 926 452 0425 F. +7 495 755 98 01
Актуализация:Някои хора не искаха да прочетат след заглавието, за да разберат същината на статията. За да не подведем никого, решихме да променим заглавието, което отразява съдържанието на публикацията.
SAP Leonardo Hackathon от velcom и SAP за разработчици от Беларус
Възможности на решението SAP Business One ERP на платформата SAP HANA
Коментари 36
В отговор на петъчно писмо до колеги, вие сте изложени на голям риск да получите отговор:
Вижте каква заповед за уволнение!
> Вижте кои котки. 11
Нашето проучване обаче показва, че много (включително големи) клиенти не винаги инсталират актуализации в рамките на 3 месеца.
Всичко това е толкова добро на теория, но на практика е куп патерици)) 1 могат да се справят с първите две задачи, други продукти могат да се използват за останалите. Просто знам куп случаи, когато хората се тъпчат от SAP, купувате само патерици за такива пари.
Спомням си, когато работех в една компания, ръководството купи софтуер (не SAP, но подобен) за просто нереални пари, за така нареченото опростяване и управление на бизнес процеси, задачи, изпълнители и т.н. и купи още куп потребителски лицензи. И така, след няколко дни, когато в системата бяха заредени около 5 GB документи, системата започна да се забавя, просто е нереалистично (въртеше се на много мощен сървър по тези стандарти), обажданията до службата за поддръжка не дадоха разумен отговор и след известно време всички напълно забравиха за тази система в компанията. За мен е по-добре да се актуализира парка от компютри и сървъри във фирмата, отколкото да се купува такъв софтуер.
Втори сценарий. Работил е в голяма компания, която обединява няколко браншови предприятия в страната. Закупен по корпоративни стандартиCISCO разработи техническа документация за проекти в компанията. Предложих на ръководството да спести пари и да отдели средства за други нужди на IT инфраструктурата на компанията (имаше много проблеми), а аз имах приличен опит с мрежите - работих дълго време в телекома. Всички гледаха накриво и не допускаха хората си до проекта. Според договора фирмата доставчик трябваше да монтира и конфигурира оборудването и да изгради мрежа, но както винаги парите не стигнаха за всичко, те доставиха само част от оборудването, а за монтаж и конфигурация не можеше да се говори. Но месец по-късно IT директорът си купи ново BMW 7-ми модел. След няколко месеца целият проект пропълзя надолу, в крайна сметка трябваше да монтирам и конфигурирам всичко, тъй като оборудването беше глупаво в кутии до по-добри времена. И шест месеца по-късно ИТ директорът напусна)))
Използван и действащ. Пример: Роснано, Камаз. За да може SAP да работи в над 10 000 компании, е необходима скъпа ревизия, покриваща разходите за разработване на системата от нулата. Според някои експерти (в момента не мога да намеря връзката, видях я в LinkedIn в тематичната група), активно работещите в продукта SAP системи са персонализирани с повече от 50%.
Сега не искам да засягам темата за рушветите и други съкращения, защото. скучно е и не е интересно. Има и политически причини, свързани с получаване на кредити и др. Ако се абстрахираме от това, тогава SAP се внедрява, колкото и банално да звучи, за някаква ИТ стандартизация в компанията, предимно с цел продажба на чуждестранни инвеститори (в българските реалности) или увеличаване на капитализацията.
Ако оценяваме от гледна точка на потребителските свойства на продукта, тогава много интересна е частта, свързана с изпълнението на бизнес процесите на производство, дистрибуция, управление на материалните потоци и веригите на стойността. Това е случаят, когато алгоритъмът е по-важен,а не красив и удобен за потребителя интерфейс.
Що се отнася до счетоводството, въвеждането на SAP ERP FI/CO в България според мен е напълно безсмислено начинание, т.к. тук бизнес процесът се определя предимно от местното законодателство. И тук 1C е абсолютен шампион.