Научная статья на тему 'ЗАЩИТА WEB-ПРИЛОЖЕНИЙ ОТ УЯЗВИМОСТИ COMMAND EXECUTION'

ЗАЩИТА WEB-ПРИЛОЖЕНИЙ ОТ УЯЗВИМОСТИ COMMAND EXECUTION Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
224
31
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
WEB-ПРИЛОЖЕНИЕ / ИНФОРМАЦИОННАЯ БЕЗОПАСНОСТЬ / WEB-УЯЗВИМОСТЬ / ТЕСТИРОВАНИЕ НА ПРОНИКНОВЕНИЕ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Беликов Георгий Витальевич, Крылов Илья Дмитриевич, Селищев Валерий Анатольевич

Рассматривается веб-уязвимость Command Execution как наиболее опасная из угроз современным вэб-сервисам. Изложены основные методы защиты.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

PROTECTING WEB APPLICATIONS FROM COMMAND EXECUTION VULNERABILITY

The article is devoted to the consideration of the Command Execution web vulnerability as the most dangerous of the threats to modern web services. The main methods of protection are described.

Текст научной работы на тему «ЗАЩИТА WEB-ПРИЛОЖЕНИЙ ОТ УЯЗВИМОСТИ COMMAND EXECUTION»

8. Антонов А.В., Антонов В.И., Барченко А.Г., Быстров Е.В., Кожемякин В.И., Лукашевич Р.В. Блоки детектирования гамма-излучения в защищенных корпусах // Доклады Белорусского государственного университета информатики и радиоэлектроники. 2015. № 2 (88). С. 221-222.

9. Бетенеков Н.Д. Элементы радиометрии и спектрометрии ионизирующих излучений/ Н.Д. Бетенеков, Е. И. Денисов, В.Д. Пузако // ГОУ ВПО УГТУ-УПИ. Екатеринбург. 2004.

10. Teran J., Aguilar J., Cerrada M. Integration in industrial automation based on multiagent systems using cultural algorithms for optimizing the coordination mechanisms. Journal Computers in Industry. 2017. №91. Pp 11-23.

11. Hansinger R. Basics of Scada and applications in iOS. Handbook on the Internet of Things and Data Analysis. 2017. pp.283-293.

12. Улитенко К.У., Котик У.И. Устройства и системы, управление, контроль, диагностика. 2013. №10. С. 30-34.

Войтюк Ирина Николаевна, канд. техн. наук, доцент, voytuk_irina@mail.ru, Россия, Санкт-Петербург, Санкт-Петербургский Горный университет,

Пантюшин Иван Всеволодович, канд. техн. наук, главный специалист по АСУТП, van_piv@mail.ru, Россия, Санкт-Петербург, ООО «Сумма технологий»

AUTOMATED CONTACTLESS MONITORING OF CRUDE OIL GAS CONTENT IN THE PIPELINE

I.N. Voytyuk, I.V. Pantuyshin

When monitoring oil production from polluted wells, it is necessary to measure the concentration of free gas in the oil and gas mixture. The article describes the method of contactless control of the gas content of oil well products in the pipeline and the system for its implementation, and also presents the results of industrial tests of the proposed method at existing oil fields. It was experimentally established that the limit value of the absolute error in measuring the concentration of free gas in crude oil did not exceed 0.001 (1 liter of free gas per 1 m3 of oil). Recommendations are given to ensure the automation of measurements.

Key words: gamma radiation, pipeline, oil and gas mixture, density, fluctuation, gas concentration, structural function, elementary volume, software.

Voytyuk Irina Nikolaevna, candidate of technical sciences, docent, voytuk_irina@mail.ru, Russia, Saint-Petersburg, Saint-Petersburg Mining University,

Pantyushin Ivan Vsevolodovich, candidate of technical sciences, chief specialist of the automated control system, van_piv@mail.ru, Russia, Saint Petersburg, Summa Technologies LLC

УДК 004.492.3

DOI: 10.24412/2071-6168-2021-11-266-272

ЗАЩИТА WEB-ПРИЛОЖЕНИЙ ОТ УЯЗВИМОСТИ COMMAND EXECUTION

Г.В. Беликов, И.Д. Крылов, В.А. Селищев

Рассматривается веб-уязвимость Command Execution как наиболее опасная из угроз современным вэб-сервисам. Изложены основные методы защиты.

Ключевые слова: WEB-приложение, информационная безопасность, WEB-уязвимость, тестирование на проникновение.

Цель статьи - исследование одной из основных уязвимостей веб-сервисов, методов и инструментов «Тестирование на проникновение».

266

Тестирование на проникновение - метод оценки безопасности информационных систем и сетей различными средствами, похожими на те, которыми пользуются злоумышленники. Чаще всего весь процесс сводится к активному поиску и эксплуатации уязвимости систем.

Рассмотрим WEB-уязвимости Command Execution (исполнение команд) по той причине, что они до сих пор занимают лидирующие позиции в списке самых опасных уязвимостей.

В настоящее время существует список «OWASP TOP 10» (рис. 1), в котором собраны самые опасные уязвимости, которые чаще всего используются злоумышленниками для нанесения существенного ущерба как частным лицам, коммерческим организациям, так и целым государствам [1].

OWASP TOP 10 1

\

^ Authentication and Brol.n O Authentication and

Ф} <p ¡ssskli n

ö% о -¿►'щ, aa- §

/\ s.nri»i« А Uli, i ' i OitíExpOJUf» >fk {tl Security '■F ф*'- Mlt<irfl9Uf»tkm

A |™| ^^ " Scripting IHU)

/X Cr«. Site Hewlett Ж \У f....I * Fofflery 1С5ЯЯ v insecure ▲ <Ж> Deterlallulion

A em U»lnj Component! <A9> hHg wit,hKl^n| ^TW ®r=-i~ wl'th'Known0"*"" ^JT Vulnerabilities

[=Л R«№*£H*ftd V/ Forward! ^ ^ffiv j <Z>T Ic.g9ir.9ll 'If ТГ ManllOflftj ^

Рис. 1. Список уязвимостей OWASP TOP 10

Поэтому мы должны понимать основные векторы атак, каким образом их реализуют злоумышленники, а также как не стать жертвой подобных злодеяний.

Принцип действия атаки. WEB-уязвимость Command Execution (исполнение команд) позволяет удаленным пользователям передавать произвольную команду WEB-сайту или WEB-приложению, а затем выполнять ее. Команда может выполняться без ведома владельца WEB-приложения или WEB-сайта, что является главной опасностью данной уязвимости.

С помощью уязвимости Command Execution любой неавторизованный пользователь может выполнять команды, используя оболочку сайта как промежуточный этап для обращения к серверу.

Сегодня ни для кого не секрет, что все WEB-приложения базируются на серверах, которые, в свою очередь, имеют доступ в сеть «Интернет». В большинстве случаев эти серверы работают на программном обеспечении Linux. Таким образом, если на WEB-сайте или WEB-приложении отсутствуют фильтрация и политика безопасности, то любой пользователь может получить доступ к командной строке сервера, а точнее вводить команды на сайте, которые будут исполняться на сервере. Подобные действия называются полезной нагрузкой, которую выполняет пользователь [2].

Любой пользователь имеет возможность получить власть над конкретным сервером, зная только команды Linux, вплоть до удаления файлов WEB-приложения.

В случае использования уязвимости Command Execution пользователь может иметь удаленную оболочку на вашем сервере, то есть он может оставить «лазейку» только для себя, чтобы в следующий раз получить доступ к серверу гораздо быстрее, чем при изначальном взломе.

В подобных случаях команды выполняются с теми же привилегиями, которыми обладает администратор WEB-сервера.

Демонстрация Command execution. Для демонстрации уязвимости выберем стенд DVWA (Damn Vulnerable Web Application), потому что этот стенд более ориентирован на начинающих специалистов в области тестирования на проникновение. На нём легко можно выбирать нужную уязвимость и практиковаться, не тратя времени на изучение особенностей утилиты. Чтобы авторизоваться, в поле «Username» пишем admin, в поле «Password» - password (рис. 2).

a IB ■в«ы- * 1*1 •о™. т™ MiHmpMi О « * 0 ДО

AftnwtSnw > : * ■ = к +

с ù m.Hf.№,(4» 0 О Л ID * i

Рис. 2. Вид стенда Damn Vulnerable Web Application

Переходим во вкладку с уязвимостью. На стенде есть возможность эксплуатации уязвимости на разных уровнях. Для начала рассмотрим низкий уровень, на котором нет защиты. Далее будем тестировать повышенный уровень сложности.

Первым запросом напишем ip-адрес «127.0.0.1». Затем делаем команду «ping», то есть определяем, доступен ли нам ip-адрес [3]. Доступ к серверу у нас есть, 2 секунды понадобилось на доставку пакетов. Теперь становится понятно, что есть возможность исполнять другие запросы (рис. 3).

Vulnerability: Command Execution

иигшши

С SR F

File Inclusion SQL Injection SQL Injection (Blind) Upload I

XSS reflected

Ping for FREE

Enter an IP address below:

127.0,0,1

submit

PING 127.9.6.1 {127.9,9.1) 56(84) bytes of data. 64 bytes from 127.9.9.1: i<«p_seq-l ttl-64 time-9.997 ms 64 bytes from 127,9.9,1: ic»p^seq-2 ttl-64 time-6.931 ins 64 bytes from 127,6.9,1: ic«p_seq*»3 ttl-64 time-6.946 ms

--- 127.6.0.1 ping statistics --3 packets transmitted, 3 received, 6% packet loss, time 2961ms rtt nin/avg/max/mdev - 0-6Ö7/6.028/0.046/0.Ö16 ms

More info

U »rname: admin Security Level: tow PHPIDS: disabled

View Source View Help

Damn Vulnerable Web Application {DVWAJ vL0.7

Рис. 3. Определение доступности ip-адреса с помощью пинг-системы

Например, напишем команду «1 | ls -1», чтобы узнать директории и их содержимое

(рис. 4).

Команда срабатывает, и мы получаем информацию о директориях и файлах с правами доступа. Следовательно, мы имеем доступ ко всем файлам, хранящимся на данном сервере.

Продолжаем исследовать WEB-приложение. Сделаем запрос, в котором отобразятся текущее положение на сервере и версия операционной системы с помощью команды: «1 | uname -a & pwd & ps» (рис. 5).

Ключевая информация, которую можем для себя узнать, представляет собой список логинов и паролей текущего стенда, с помощью команды «1 | cat /etc/passwd» (рис. 6).

Исследуем уязвимость стенда на более высоком уровне. На уровне medium присутствует фильтрация, что несомненно увеличивает защищенность стенда, но не защищает его полностью [3].

Для начала выставим средний уровень сложности (рис. 7).

SQL InftCtiOO (Blind)

XSS F «-fleeted

Vulnerability: Command Execution

Bmt* Fore*

Ping for FREE ЕЯИ an IP ЬеНян

1 114 J iUDma

total 12 drwxr-xr-x 2 ww-data wi Гц» г«■Г■ 1 www'data и drvxr-xr-x 2 utAi-data и м-data data Af-data 4096 Hay 20 1)09 Наг 16 4096 Hay 2« 2012 help 2010 index.php 2012 sour«

V»w sou«* VWw He*)

Рис. 4. Полученное содержимое директорий

Vulnerability: Command Execution

Ping for FREE

ewm

CSH*

Fie Inclusion SQL InjrcUon SQ*. |nJ«lKHi (Bllrt.1)

XSSMOWtf DVWA SKumy

U Apr 19 13:50:00 «ТС «И 16S6 <51 ü/tiiw*

PIG ttï time сне

¡Mi 7 00:04:0« apachc2

4644 7 00:00:0« apaçh«ï

46*8 f 00:00:0« apitheî

46s8 7 00:00:00 apacK*2

46S2 f 00:04:0« ip*tb*2

47SB 7 00:04:0« apach«2

4SÎ4 ? 00:04:0« php

4BJS 7 04:04:0« ïh

4SÎ9 7 00:04:0« pi

IrtcwSouM ViewИс*.

Dürrn V^eiJlO* Wfft A«*C*ion (DVWA) Vl.O.T

Рис. 5. Вывод информации

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Vulnerability: Command Execution

J

SQL Injt-cSlon

5QC Injection (Blind}

XSS reflected

DVWA Secur

3

Ping for FREE

Entu ал IP atfd>#» ЫЛмг

root :*:в:0: root ; /root:/bin/frasfi d л топ: x: 1:1 : datrr-au :/ulr/$bin :/bîrl/sb binrx:2:2:bin: /bin:/bin/sh syS :д: 3:3:Sy4: /d«v :/bin/Sit sync : * ;4 :bSSS4 r jyat : /Ы n ; /bid/ iync gutes : * ; 5:68 :ga*tes :/usr/gwes : /bm/sh un:i;{: 12:илп: /v>r/cachc/eiaii ;/bin/sh

:7:lp:/var/spool/lpe

:8:8:nAll :/vjr/ùiïl : i4W ; « : 9 ; 9 : :/va г/spool /<wws : /bm/ï h uucp : * : 10 .10 : uucp : /va r/spool/uucp: /bin/ si) proxy :к:13:13:proxy:/bin :/bid/»h www-data:*: 33:33 :w*w-data: /var/nw;/bin/sti backup:x : 34:34 : ba с Мир:/war/backups :/bin/ih litt;x;30:JS;HaiUdg Lift (tanai«r:/var/liit:/bin/fh ireix : 39:39 :lrcd!/va r/run/ircd;/bin/sb

gnat* :x:41:41:GruliS Hug■ ftc-рогling SyttH iadainl : /yar/lib/gnali :/bjn/sh

nobody; x:65534:65534; nobody: /nonexistent :/biri/sh

tibuuid:x:100:lDl: :/vaf/lib/ltbuuid:/bift/sh

dhep: x ; 10 J : 1« ; ;/nen*xx stent;/bin/false

syslofl: * :102; 103 : :/ftow/syslog :/bin/false

kl&g:x : 103:104: : /honc/klog: /bin/fal«

sstoi:*; 104:65534: :/var/run/sshd;/usr/sbid/nologm

■sfadmin:.*: 1000: löeo:esf»muri,.. :/ho*e/nsfadiun:/bin/bash

bi nd ; x ; MS : 1 IS : ; /va г/cacbe/bmd : /bin/false

postf1x;xj106:115:;/vaг/spool/postfix:/bid/false

ftp: л: lQ7:6SSi4: : /doiw/ftp:/bin/false

postures;*:ieo: 117:PostgreSQL admmst rater,,,:/irar/1lb/postgresqI:/bin/bash ■ysql : * : 109:118 : MySQL Server /var/lib/aysqt : /bit»/ false toecat«;*: 1IU;655J4: :/usr/shar®/te«cati,S;/bin/fats* dis t ccd:x;111:65534::/:/bin/false

user :*: 1001:IDDÏ : Just a user , 111., :/h«w/u&er:/bir»/bash service:* ; 1002:1W2:,., ;/boee/service: /Ып/bash telMt<t:x:112:120 ::/nonexist«it:/biivf aise proftpd;x:tlJ:«5>4;;/var/ru»i/proftpd;/bid/falw statd:x:114:65534 ::/var/lib/nf si/bin/false

Рис. 6. Вывод информации

269

DV^AJ

Instruction» Stmp вш(* Fore* Command Execution CS«f dvwa Security Ь Script Security Security Level is сшгепПу medium Vau can 4« ibe secmity level to low, meauti« hqn The security level changes ihe vJnetaMiry level ol DVWA.

SQL Injection SQL Injection (Blind) Upload _ *5S и-п«с<«<1 XSS stored PHPIDS PHPIOS w.o. 6 [PHP-intnitttKi ОмкИол System) Is a securty layer tor PHP Dated web адоеанп*. Уои tan enable PHPIDS »№ Ms sue tor it* duranton of your session PHPIDS to cwrerey disabled. (enaiWe PHP1DS| ВчпиЦИ «Mi« - MödDSJMl

PHP into About Logout_| Security Level: medium PHPIDS: disabled

Damn Vl* lerabte WOb Ар^йсаСюл (DVWA) vl.O.T

Рис. 7. Уровень сложности medium

Рассмотрим непосредственно уязвимость. Так как уровень сложности выше, то наверняка должны быть ограничения на ввод команд (рис. 8).

Рис. 8. Исходный код страницы

Изучив код страницы, видим, что есть ограничения, что массив с фильтрацией значений символов «&&» и «;» добавляются в черный список и отбрасываются приложением.

На самом деле такая фильтрация никак нас не ограничивает, и мы можем написать команду с одним амперсандом «&».

Команда примет следующий вид: «127.0.0.1 & ls -la», она будет выводить полный список директорий и файлов (рис. 9).

Таким образом, продемонстрированы возможности подобного рода атак. Если обойти ограничения, то можно исполнить множество команд, нацеленных на операционную систему. Подобно показанным выше запросам пользователь, который умеет пользоваться командной строкой Linux и понимает структуру данной операционной системы, может провести любые действия в личных и корыстных целях. Методы предотвращения Command Execution Для защиты WEB-приложений необходимо использовать: функции по типу escapeshellcmd(), которые экранируют команды; фильтрацию входных значений; белые списки.

IniUUCElOni Setup

Brime Force

File IneluaJM SQL InJUUUon

XS5 j enured

KSS ':I<>1; J DVWA Security

Vulnerability: Command Execution

Ping for FREE

Enter ал IP address below:

127.0.0.1 & is 4a submit

PING 127.3-0. (127.0,0. L) 56184} bytes of data.

64 bytes fro« 127.0.0.1: i«ip_seq-l ttl-64 t ■te-0 008 ms

total 20

drwxr-xr-x 4 vMW-data w. rfw-data 4096 Hay 20 2812

drwxr-xr-x 11 www-data ws Ai-data 4096 Hay 20 2812

drwxr-xr-x 2 www-data wi Af-data 4096 Hay 20 2012 help

-rw-Г'-Г"- 1 www-data wi лг-data 1S60 Har 16 2010 index.php

drwxr-xr-x 2 www-data wy м-data 4096 Kay 20 2012 source

64 bytes froe 127.0.0.1: leap seq-2 ttl-6J t me*0 009 ms

64 byt« froe 127.0.0.1: itrp $eq-3 ttl-64 t ee-a 008 as

--- 127.0.6.1 ping statistics —

3 packets transeitted, 3 received, OS packet loss time 199&tis

rtt »m/avg/eax/KJev - 0 008/0.808/0.009/0.002 ms

More info

Usemamer Ertmm vmt ^^ | нгйр

security Level: rrwrtum PHPIDS. diluted

Рис. 9. Вывод результатов команды

Экранирование - замена в коде WEB-приложения управляющих символов на другие, текстовые символы. Когда пользователь вводит команды в надежде на их исполнение на стороне сервера, этот защитный способ меняет команду на другие символы, из-за чего теряется возможность эксплуатирования сервера. В данном способе придется использовать функции экранирования, которые автоматизируют эту задачу [2].

Основным методом защиты следует использовать фильтрацию с помощью белых списков. Белый список противоположен черному списку, он представляет собой шаблон, который пропускает только определенные заранее заданные значения и отмечает ввод недействительным, если он не соответствует этому шаблону. Подобный способ проще в использовании, так как легче идентифицировать безопасный ввод текста, чем перебирать набор всех запрещенных команд.

Список литературы

1. OWASP Top 10 - 2017. The Ten Most Critical Web Application Security Risks // OWASP the free and open software security community. 2017. [Электронный ресурс] URL: https://www.owasp.org/images/7/72/OWASP_Top_1Q- 2017 (дата обращения: 12.11.2021).

2. DVWA: Command Execution Vulnerability [Электронный ресурс]. URL: https:// ethi-calhackx. com/dvwa-command-execution/ (дата обращения: 12.11.2021).

3. DVWA: Command Execution solutions (Low, Medium, High). [Электронный ресурс]. URL: https://n3dx0o.medium.com/dvwa-command-execution-solutions- low- medium-high-6ee354dc 2974 (дата обращения: 12.11.2021).

Беликов Георгий Витальевич, студент, belikvita@mail.ru, Россия, Тула, Тульский государственный университет,

Крылов Илья Дмитриевич, студент, nikplay2000@mail.ru, Россия, Тула, Тульский государственный университет,

Селищев Валерий Анатольевич, канд. техн. наук, доцент, sel648val@,rambler. ru, Россия, Тула, Тульский государственный университет

PROTECTING WEB APPLICATIONS FROM COMMAND EXECUTION VULNERABILITY

G.V Belikov, I.D. Krylov, V.A. Selishchev 271

The article is devoted to the consideration of the Command Execution web vulnerability as the most dangerous of the threats to modern web services. The main methods of protection are described.

Key words: web application, information security, web vulnerability, penetration testing.

Georgy Vitalievich Belikov, student, belikvita@mail.ru, Russia, Tula, Tula State University,

Ilya Dmitrievich Krylov, student, nikplay2000@mail.ru, Russia, Tula, Tula State University,

Selishev Valeryi Anatolievich, сandidate of technical sciences, doc., sel648val@rambler.ru, Russia, Tula, Tula State University

УДК 004.772

DOI: 10.24412/2071-6168-2021-11-272-279

ПОСТРОЕНИЕ СЕТИ ПЕРЕДАЧИ ДАННЫХ КАК ПРОГРАММНО-КОНФИГУРИРУЕМОЙ СЕТИ

Н.В. Евглевская, Н.А. Хмелляр, С.А. Шинкарев

Одним из вариантов развития телекоммуникационных сетей является переход к программно-конфигурируемым сетям. При таком подходе разделяются уровни управления и передачи данных путем переноса функций управления на отдельное устройство (контроллер). Для построения сети связи как программно-конфигурируемой, необходимо решение ряда задач, а именно: определение основных параметров сети связи и постановка новых целевых функций; синтез структуры системы связи с учетом полученных целевых функций; оптимизация полученной структуры системы связи.

Ключевые слова: программно-конфигурируемая сеть, система управления, сеть связи специального назначения, сеть передачи данных, пункт управления.

В настоящее время система управления (СУ) является децентрализованной, т.е. управление осуществляется на сетевых устройствах. Такой подход не позволяет в полной мере реализовать весь потенциал современных устройств. Одним из вариантов решения данной проблемы является переход к программно-конфигурируемой сети (ПКС). Важной задачей при построении сети передачи данных (СПД) как ПКС является учет требований к СУ.

Между структурой СУ и структурой СПД нет полного соответствия. Однако эти структуры взаимосвязаны, так как СУ в основном определяет направленность потоков информации, циркулирующих в СПД. Полагая, что СУ зависит от структуры СПД, синтез перспективной сети должен включать в себя основные требования, предъявляемые к СУ в целом. В известных работах [1 - 3] построение сети связи основано на определении целевых функций системы с последующей декомпозицией и ступенчатым решением поставленных задач.

В настоящее время решены задачи создания систем и СПД, структуры которых повторяют структуры СУ.

Синтез структуры СПД является сложным процессом по преобразованию исходных данных, которые задаются общими требованиями к системе связи в целом, элементы которой обеспечивают ее функционирование в сложной обстановке.

Постановка задачи для построения сети передачи данных специального назначения как программно-конфигурируемой сети. Общая структура СПД может быть представлена как совокупность узлов и каналов связи, специально созданных для организации передачи данных между источником и получателем данных [4].

Требования, предъявляемые к СУ по пропускной способности, устойчивости, приведенной стоимости, вероятностно-временным характеристикам доставки сигналов, могут быть реализованы при условии выполнения требований к СПД, а также обеспечивающим подсистемам.

i Надоели баннеры? Вы всегда можете отключить рекламу.