PDA

Просмотр полной версии : Помогите разобраться с аутенификацией


rObad
03.05.2007, 23:23
Есть следующий код в админке, помогите понять как происходит залогинивание (.htpasswd в дире нету, вроде не через БД, а в php я не разбираюсь :( )
session_start();
while(list($col_name, $col_value) = each($_GET)) {
$$col_name = stripcslashes($col_value);
}
while(list($col_name, $col_value) = each($_POST)) {
$$col_name = stripcslashes($col_value);
}

include ("../modules/cfg.php"); // настройки
include ("../modules/kickhacker.php");
include ("../modules/font_array.php");
include ("../modules/dbcfg.php"); // настроики БД
include ("../modules/functions.php");
include ("modules/functions.php");
include ("modules/sql_functions.php");
include ("../modules/http_path.php");
include ("tmedit.php");
if (isset($admin)) {$_SESSION['admin1'] = true;}
if (isset($_SESSION['admin1']) and $_SESSION['admin1']) {$admin = true;} else {$admin = false;}
if (!isset($_SESSION['wysiwyg'])) $_SESSION['wysiwyg'] = true;
if (isset($wysiwyg) and $wysiwyg=='true') {$_SESSION['wysiwyg'] = true;}
elseif (isset($wysiwyg) and $wysiwyg=='false') {$_SESSION['wysiwyg'] = false;}

Talisman
03.05.2007, 23:25
тут самой адмники нету. попробуй зайти с адресом?admin=1

Isis
03.05.2007, 23:30
тут самой адмники нету. попробуй зайти с адресом?admin=1
ЫЫЫ, а можно узнать причем тут имя сессии и гет запрос?:)

Talisman
03.05.2007, 23:33
if (isset($admin)) {$_SESSION['admin1'] = true;}
вот в этой строчке)))
100% гарнтии канешна нет) можт это команда на лок админки и смс админу... )

Isis
03.05.2007, 23:41
ну если только
register_globals=on

rObad
04.05.2007, 15:37
Всем спасибо проблема снята.

/etc/named.conf
zone "admin.*.ru" IN {
type master;
file "zone.admin.*.ru";
allow-update { none; };
allow-query { 192.168.30.0/24; };
allow-transfer { none; };
notify no;
наверное так?

blackybr
04.05.2007, 21:09
if (isset($_SESSION['admin1']) and $_SESSION['admin1']) {$admin = true;}

проверка на наличие админской сессии, которая скорее всего ставится при логине еще.. смотри include ../modules/dbcfg.php ищи таблу с админами, расшифровывай пасс (если конечно захэшэн) и тогда тебя пустят в админку =)

DRON-ANARCHY
04.05.2007, 23:48
а мона посмареть, что содержит
include ("../modules/kickhacker.php");
чисто так... для общего развития)))

rObad
05.05.2007, 12:10
blackybr
на тот момент я только мог кривым скриптом файлы читать произвольные, и пасс/логин от БД мне не помогали (там тока localhost был allowed to connect). когда залил шелл дальше по накатанной пошло ;)
DRON-ANARCHY
меня за такую порнографию зобанят :rolleyes: ,=> в приват

DRON-ANARCHY
19.05.2007, 15:46
Да ладно.. че ты обламываешься? Не обламывайся)))
вылаживай. или там

if ($login=='Hacker') {echo 'fuck you, hacker';exit;}

rObad
21.05.2007, 20:44
Specially for DRON_ANARCHY

<?php
if (!defined('IN_SITE')) {
define('IN_SITE', true); // если эта константа не доступна в модулях, то ошибка
include ("cfg.php"); // настройки
$obj_error->return_error(PAGE_404, $obj_error->txt_access_error());
}else {
//[>NO_CACHE<]//
while(list($col_name, $col_value) = each($_GET)) {
$$col_name = "$col_value";
}
while(list($col_name, $col_value) = each($_POST)) {
$$col_name = "$col_value";
}
function castr_level ($level) {
global $obj_error;
$level_castr = eregi_replace("[^a-z,_,0-9,-]","",$level);
$level_castr = (string)$level_castr;
if ($level!=$level_castr) $obj_error->return_error(PAGE_404, $obj_error->txt_level_error());
return ($level_castr);
}
$n = 1;
$level = 'level'.$n;
while (isset($$level) or !empty($$level)) {
$$level = castr_level($$level);
$n++;
$level = 'level'.$n;
}
//[>NO_CACHE<]//
}
?>
Вот такой кикер для хакеров.