PDA

Просмотр полной версии : php\ajax injection


Pirotexnik
02.08.2011, 12:12
Доброго времени суток, господа.

Такая вот история: забанили на сервере за обход фильтра мата , причём аж на месяц! Нечесно как-то...

Так вот, удалось высосать скрипт аута. Вот он:


Code:
function try_login()
{
ajax_get_request("/auth?l=" + document.getElementById("login-user").value + "&p=" + document.getElementById("login-pass").value, on_login_result)
}

Вот такой запрос:


Code:
GET /auth?l=Pirotexnik&p=my_true_pass HTTP/1.1
Host: test17.mcserver.ru
Cache-Control: no-cache
Connection: Keep-Alive
Header-name: Header-value

выдаёт такой ответ:


Code:
HTTP/1.1 200 OK
Server: nginx/0.7.67
Date: Mon, 01 Aug 2011 09:43:30 GMT
Content-Type: text/html; charset=utf-8
Transfer-Encoding: chunked
Connection: keep-alive
Set-Cookie: PHPSESSID=iq459c6u0g7h3uhmtvk2trj517; path=/

ok

Но, увы, если я делаю так вот:


Code:
GET /auth?l=Pirotexnik&p=my_true_pass" or 1==1)}// HTTP/1.1

, то ловлю failed.

Почему? Ведь условие или на входе с 2-мя тру!

Помогите, господа просвящённые...

И исчО! Там прямо в корне хоста лежит файли users.txt, в котом следующаа структара

UserName:userStatus

тобишь

Admin:admins

Premium_userremium

итд.

так вот, там ещё есть 1 скриптик вот он:

[CODE]
Code:
function init() {
ajax_get_request("users.txt", on_load_users_info)
addr = window.location.toString().substr(7)
if ("WebSocket" in window && addr.indexOf(":") > 0) {
addr = (addr.indexOf(":") > 0) ? ('ws://' + addr + 'sock') : "ws://minecraft.hiasm.com:8080/sock"

var webSocket = new WebSocket(addr);

webSocket.onopen = function(event) {
//addText('onopen');
};

webSocket.onmessage = function(event) {
//code = event.data.substr(0, 1)
//alert(event.data)
on_load_log('[{"id":"0", "value":"' + event.data + '"}]')
};

webSocket.onclose = function(event) {
//addText('onclose');
};
} else {
setInterval("load_log()", 20000)
}
setInterval("check_state()", 30000)
check_state()
load_log()
}
function select_page(i) {
for(p = 1; p [/COLOR][/COLOR]
[/PHP]
О чём это значит?

Pirotexnik
11.08.2011, 12:41
Ок, а как же тогда писать иньекцию, если должен совпадать мд5? 0_о

Да и как он может проверятся до запроса в бд если пароль у всех разный?

Можно поподробней?

Там на сайте есть еще свн но без уязвимостей.

Точнее я не нашел.