Ю. М. Маллаева
Новосибирский государственный университет
Parallels HRSoft – система поддержки бизнес-процессов компании Parallels в области работы с персоналом, служащая для автоматизации деятельности отдела персонала компании. Приложение работает с базой данных, содержащей персональные данные сотрудников и информацию о ресурсах компании, поддерживает несколько языков и содержит несколько десятков веб-форм (до сотни полей ввода в одной форме), причем некоторые из них доступны анонимным пользователям Интернет.
В процессе использования и разработки HRSoft неоднократно обнаруживались уязвимости, позволяющие внедрение пользовательского кода в код приложения. Поскольку приложение содержит тысячи полей ввода, в том числе доступных из открытого Интернет, периметр атаки очень велик. А так как HRSoft работает с персональными данными сотрудников и информацией о ресурсах компании, вопрос информационной безопасности заслуживает особого внимания.
Цель данной работы – разработка методов обеспечения информационной безопасности программного продукта Parallels HRSoft.
В рамках работы проведен краткий обзор техник взлома сетевых приложений, по результатам которого наиболее распространенной техникой является межсайтовое внедрение сценариев (cross-site scripting, XSS). Проведен анализ информационной безопасности приложения HRSoft методами «белого ящика» и «черного ящика», в ходе которого получен список уязвимых страниц, параметров и веб-форм. Разработаны требования к модулю безопасности приложения HRSoft и проведен обзор существующих в настоящее время решений для разработки модуля безопасности на основе специализированной библиотеки, после чего выбранная библиотека (htmLawed) внедрена в приложение.
Затем во всех обнаруженных ранее уязвимых точках применен фильтр htmLawed, настроенный так, чтобы обеспечить наиболее безопасный вывод пользовательских данных. Использована стратегия фильтрации вывода, то есть предполагается, что пользователь может отправлять на сервер любые данные, в том числе и вредоносный код, а фильтрация будет производиться при отображении страниц, содержащих введенные данные, в браузере. Таким образом, при отображении страницы нельзя доверять информации, полученной не только непосредственно от пользователя, но и из базы данных приложения.
Научный руководитель – доцент ФИТ НГУ, зав.лаб. НГУ Д. В. Иртегов.