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

12.03.2010, 13:37
|
|
Познавший АНТИЧАТ
Регистрация: 15.01.2008
Сообщений: 1,166
Провел на форуме: 2459557
Репутация:
606
|
|
Сообщение от Jokester
Угу, этот способ просто класс 
file.php?page=ftp://vasa:qwerty@ftp.narod.ru/shell.php
PS Я так полагаю в str_replace ты просто опечатался, как и в '\', а то вообще работать не будет.
почему? точка вырезается же, с ftp не проканает.
А "\" вырезается, чтобы не передать в хексе путь
\x2f\x65\x74\x63\x2f\x70\x61\x73\x73\x77\x64 = /etc/passwd
Про опечатку - действительно два слеша надо, т.к. экранирование.
PHP код:
<?
if ($page=="") {
$page="any.php";
include($page);
}else{
str_replace('.', '', $page);
str_replace('/', '', $page); // прямые тоже вырезать
str_replace('\\', '', $page);
if(file_exists($page)){
include($page);
}
}
?>
Последний раз редактировалось попугай; 12.03.2010 в 13:55..
|
|
|

12.03.2010, 14:21
|
|
Постоянный
Регистрация: 25.01.2009
Сообщений: 368
Провел на форуме: 5290740
Репутация:
912
|
|
попугай, ничего твой "фильтр" не вырезает. Проверь сам
PHP код:
if ($page=="") {
$page="any.php";
include($page);
}else{
str_replace('.', '', $page);
str_replace('/', '', $page); // прямые тоже вырезать
str_replace('\\', '', $page);
if(file_exists($page)){
include($page);
}
}
//test.php?page=../xek.txt
//test.php?page=ftp://vasa:qwerty@ftp.narod.ru/shell.php
Проверял бы..
|
|
|

12.03.2010, 14:52
|
|
Познавший АНТИЧАТ
Регистрация: 15.01.2008
Сообщений: 1,166
Провел на форуме: 2459557
Репутация:
606
|
|
Сообщение от .:[melkiy]:.
попугай, ничего твой "фильтр" не вырезает. Проверь сам
PHP код:
if ($page=="") {
$page="any.php";
include($page);
}else{
str_replace('.', '', $page);
str_replace('/', '', $page); // прямые тоже вырезать
str_replace('\\', '', $page);
if(file_exists($page)){
include($page);
}
}
//test.php?page=../xek.txt
//test.php?page=ftp://vasa:qwerty@ftp.narod.ru/shell.php
Проверял бы..
добавь
Да, надо переменной присваивать результат str_replace. Написал просто в общем виде алгоритм, над правильностью кода не задумывался поначалу.
Вот так будет полностью в-общем.
PHP код:
<?php
$page = $_GET['page'];
if ($page=="") {
$page="any.php";
include($page);
}else{
$page = str_replace('.', '', $page);
$page = str_replace('/', '', $page);
$page = str_replace(':', '', $page);
$page = str_replace('\\', '', $page);
if(file_exists($page)){
include($page);
}
}
?>
Strilo4ka, да это не идея, это обычная практика.
Последний раз редактировалось попугай; 12.03.2010 в 15:17..
|
|
|

12.03.2010, 17:16
|
|
Участник форума
Регистрация: 12.07.2009
Сообщений: 158
Провел на форуме: 2510517
Репутация:
334
|
|
Есть запрос -
Код:
... GROUP BY f.id ORDER BY [сюда можем впихнуть что хотим] LIMIT 0, 15
Можно ли провести sql-inj , и как? 
|
|
|

12.03.2010, 17:37
|
|
Постоянный
Регистрация: 25.01.2009
Сообщений: 368
Провел на форуме: 5290740
Репутация:
912
|
|
Сообщение от Jerri
Есть запрос -
Код:
... GROUP BY f.id ORDER BY [сюда можем впихнуть что хотим] LIMIT 0, 15
Можно ли провести sql-inj , и как? 
Инъекция после order by
_http://www.securitylab.ru/contest/212101.php
|
|
|

12.03.2010, 20:48
|
|
Участник форума
Регистрация: 11.10.2009
Сообщений: 116
Провел на форуме: 472147
Репутация:
211
|
|
Сообщение от попугай
добавь
Да, надо переменной присваивать результат str_replace. Написал просто в общем виде алгоритм, над правильностью кода не задумывался поначалу.
Вот так будет полностью в-общем.
PHP код:
<?php
$page = $_GET['page'];
if ($page=="") {
$page="any.php";
include($page);
}else{
$page = str_replace('.', '', $page);
$page = str_replace('/', '', $page);
$page = str_replace(':', '', $page);
$page = str_replace('\\', '', $page);
if(file_exists($page)){
include($page);
}
}
?>
Strilo4ka, да это не идея, это обычная практика.
в принципе да помогло инклуда больше нету...
но теперь неоткрываются другие странички
http://www.site.ru/index.php?page=activ.htm
http://www.site.ru/index.php?page=presentations.htm
вопрос как их туда добавить? чет у меня не получилось пока....
|
|
|

12.03.2010, 21:36
|
|
Members of Antichat - Level 5
Регистрация: 18.02.2008
Сообщений: 1,136
Провел на форуме: 17621293
Репутация:
4915
|
|
Сообщение от 547
в принципе да помогло инклуда больше нету...
но теперь неоткрываются другие странички
http://www.site.ru/index.php?page=activ.htm
http://www.site.ru/index.php?page=presentations.htm
вопрос как их туда добавить? чет у меня не получилось пока....
А зачем делать через зад, если вот дали нормальный вариант:
https://forum.antichat.ru/showpost.php?p=1973181&postcount=12068
Или нужно понаставить фильтров, и думать обойдут их или нет?
|
|
|

12.03.2010, 21:49
|
|
Участник форума
Регистрация: 11.10.2009
Сообщений: 116
Провел на форуме: 472147
Репутация:
211
|
|
Сообщение от Jokester
А зачем делать через зад, если вот дали нормальный вариант:
https://forum.antichat.ru/showpost.php?p=1973181&postcount=12068
Или нужно понаставить фильтров, и думать обойдут их или нет?
PHP код:
<?
$page = $_GET['page'];
if ($page=="") {
switch($page) {
case 'page1':
include("page1.html");
break;
case 'page2':
include("page2.html");
break;
case 'page3':
include("page3.html");
break;
...
default:
include("home.html");
break;
}
?>
да я так поначалу и пробовал,но!!!
parse error: syntax error, unexpected '.' in /web/clients/index.php
|
|
|

12.03.2010, 21:55
|
|
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
Провел на форуме: 9220514
Репутация:
3338
|
|
посчитай фигурные скобки, вообще проверь код (надеюсь троеточие догадался удалить)
|
|
|

12.03.2010, 22:08
|
|
Участник форума
Регистрация: 11.10.2009
Сообщений: 116
Провел на форуме: 472147
Репутация:
211
|
|
Сообщение от Pashkela
посчитай фигурные скобки, вообще проверь код (надеюсь троеточие догадался удалить)
да там одна лишняя фигурная 
но всеравно странички которые написал вместо xxx.htm неоткрываются вместо них просто пустое место....
PHP код:
case 'page1':
include("xxx.htm");
break;
case 'page2':
include("xxxx.htm");
break;
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|