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

11.07.2007, 15:06
|
|
Познавший АНТИЧАТ
Регистрация: 02.06.2006
Сообщений: 1,187
Провел на форуме: 6023777
Репутация:
2642
|
|
Не мог придумать, что написать 
Решил написать, как избавиться от самых известных багов.
XSS.
PHP код:
<?
...
$_REQUEST['xss'] = htmlspecialchars($_REQUEST['xss']);
echo($_REQUEST['xss']);
...
?>
PHP-include.
PHP код:
<?
...
if($_REQUEST['file'])
{
$_REQUEST['file'] = str_replace('/','',$_REQUEST['file']);
$_REQUEST['file'] = str_replace('%','',$_REQUEST['file']);
$_REQUEST['file'] = str_replace(':','',$_REQUEST['file']);
include($_REQUEST['file']);
}
...
?>
SQL-injection.
PHP код:
<?
...
$_REQUEST['id'] = str_replace("'","",$_REQUEST['id']);
$_REQUEST['id'] = str_replace('-','',$_REQUEST['id']);
$_REQUEST['id'] = str_replace('+','',$_REQUEST['id']);
$_REQUEST['id'] = str_replace('/','',$_REQUEST['id']);
$_REQUEST['id'] = str_replace('*','',$_REQUEST['id']);
$_REQUEST['id'] = str_replace(' ','',$_REQUEST['id']);
mysql_query('UNION SELECT id FROM news WHERE id='.$_REQUEST['id']);
...
?>
|
|
|

11.07.2007, 16:09
|
|
Познавший АНТИЧАТ
Регистрация: 02.05.2006
Сообщений: 1,191
Провел на форуме: 7364332
Репутация:
1276
|
|
Сообщение от NOmeR1
[/php]
SQL-injection.
PHP код:
<?
...
$_REQUEST['id'] = str_replace("'","",$_REQUEST['id']);
$_REQUEST['id'] = str_replace('-','',$_REQUEST['id']);
$_REQUEST['id'] = str_replace('+','',$_REQUEST['id']);
$_REQUEST['id'] = str_replace('/','',$_REQUEST['id']);
$_REQUEST['id'] = str_replace('*','',$_REQUEST['id']);
$_REQUEST['id'] = str_replace(' ','',$_REQUEST['id']);
mysql_query('UNION SELECT id FROM news WHERE id='.$_REQUEST['id']);
...
?>
Зачем изобретать велосипед, если в PHP уже есть готовое решение
PHP код:
function secure_sql($value) {
if( get_magic_quotes_gpc() ) {
$value = stripslashes( $value );
}
if( function_exists( "mysql_real_escape_string" ) ) {
$value = mysql_real_escape_string( $value );
} else {
$value = addslashes( $value );
}
return $value;
}
|
|
|

12.07.2007, 05:44
|
|
Постоянный
Регистрация: 05.06.2007
Сообщений: 335
Провел на форуме: 4319431
Репутация:
677
|
|
мой первый скрипт который я выкладываю =) флудит камментами к фотке на сайте vkontakte.ru, м.б. потом переделаю его в спамер, как я понял ограничений на комментарии там нет, спасибо KSURi и genom-- за то что отвечали на мои вопросы по перл
Код:
#!/usr/bin/perl
###CONFIG###
$login = 'milo@mail.ru';
$password = 'Pas$W@rD';
$tg = 100; #сколько сообщений слать
$target = '50343443'; #id фотки которую будем камментировать
$text = 'Йа фотокамментомёт!'; #текст каммента
$pause = 0.5; #задержка между запросами
###CONFIG###
use LWP::UserAgent;
use HTTP::Cookies;
$ua = LWP::UserAgent->new;
$cookies = HTTP::Cookies->new;
$ua->cookie_jar($cookies);
$res = $ua->post('http://vkontakte.ru/login.php', {
'referer' => '',
'email' => $login,
'pass' => $password,
'CookieDate' => 1 });
$res = $ua->get('http://vkontakte.ru/profile.php');
while($count < $tg){
$res = $ua->get("http://vkontakte.ru/photos.php?act=show&id=$target&act=post&comment=$text");
print $res->as_string;
$count++;
sleep($pause);
}
Последний раз редактировалось C!klodoL; 12.07.2007 в 05:46..
|
|
|

12.07.2007, 12:00
|
|
Познавший АНТИЧАТ
Регистрация: 09.06.2006
Сообщений: 1,359
Провел на форуме: 5301021
Репутация:
1879
|
|
Только что заметил... В посимвольном бруте паролей указывают массив из букв и в цикле начинают перебирать все возможные комбинации из них. Не путать с использованием rand().!
На мой взгляд проще сделать так:
PHP код:
<?php $string = "aaaaa"; while(strlen($string) == 5) { echo $string .'<br>'; $string++; } ?>
Последний раз редактировалось BlackLogic; 12.07.2007 в 12:03..
|
|
|

12.07.2007, 15:29
|
|
Познавший АНТИЧАТ
Регистрация: 02.06.2006
Сообщений: 1,187
Провел на форуме: 6023777
Репутация:
2642
|
|
Вот ещё придумал способ защиты админки или любого скрипта от постаронних глаз, если нету MySQL или того, где бы хранилась информация о админе. Ввод пароля не нужен
PHP код:
<?
...
if($REMOTE_ADDR != 'тут.введите.ваш.ip') //не забудьте изменить эту строчку
exit('Вы не админ :)');
...
?>
Однако, этот способ не очень безопасный.
Последний раз редактировалось NOmeR1; 14.07.2007 в 01:55..
|
|
|

12.07.2007, 16:27
|
|
наркоман с медалью
Регистрация: 07.05.2005
Сообщений: 3,704
Провел на форуме: 19975136
Репутация:
4536
|
|
Однако, этот способ не очень безопасный.
если куплен внешний ип, то вполне безопасно =)
|
|
|

12.07.2007, 23:32
|
|
Постоянный
Регистрация: 06.12.2006
Сообщений: 762
Провел на форуме: 5352530
Репутация:
2062
|
|
Подкиньте скрипт плиз - нужно пропарсить файл по количеству символов в слове, то есть нужен скрипт, который примет на вход файл с текстом (каждое слово с новой строки), а на выходе будeт созданы файлы в которых будут слова с определенным количеством символов - с 6, 7, 8 etc символов
perl/php
ЗЫ еще вспомнил, нужен второй - обрезать слова частями, то есть нужно обрезать слово на N символов в один файл, а всё что после N слить в другой
Последний раз редактировалось Thanat0z; 12.07.2007 в 23:43..
|
|
|

13.07.2007, 00:06
|
|
Познающий
Регистрация: 21.05.2007
Сообщений: 61
Провел на форуме: 79888
Репутация:
145
|
|
По колличеству символов:
PHP код:
<?php
$file = file ( 'filename.txt' );
foreach ( $file as $word )
{
$word = trim ( $word );
if ( $word == '' )
{
continue;
}
$len = strlen ( $word );
$fo = fopen ( $len . ".txt", "ab" );
fwrite ( $fo, $word . "\r\n" );
fclose ( $fo );
}
?>
Разделение слова на части:
PHP код:
<?php
$filename = 'filename.txt';
$file = file ( $filename );
$max_len = 10;
$main = fopen ( $filename, 'wb' );
foreach ( $file as $word )
{
$word = trim ( $word );
if ( $word == '' )
{
continue;
}
$to_main = substr ( $word, 0, $max_len );
$to_add = substr ( $word, $max_len );
fwrite ( $main, $to_main );
if ( $to_add == '' )
{
$add = fopen ( 'add.txt', 'ab' );
fwrite ( $add, $to_add );
fclose ( $add );
}
}
fclose ( $main );
?>
|
|
|

12.07.2007, 23:52
|
|
наркоман с медалью
Регистрация: 07.05.2005
Сообщений: 3,704
Провел на форуме: 19975136
Репутация:
4536
|
|
PHP код:
<?php
$fp = fopen('file.txt', 'r');
$f = array();
while(!feof($fp)){
$word = rtrim(fgets($fp));
$len = strlen($word);
if(!file_exists($len.'.txt') || !$f[$len]){
$f[$len] = fopen($len.'.txt', 'w');
}
fwrite($f[$len], $word."\n");
}
foreach($f as $k=>$v) fclose($f[$k]);
fclose($fp);
?>
|
|
|

13.07.2007, 11:03
|
|
Познающий
Регистрация: 01.04.2007
Сообщений: 62
Провел на форуме: 241297
Репутация:
49
|
|
http://x0.6te.net/rating/
PHP код:
<?
########################################################
# CODED BY NOMER1... #
# Example for script here > http://x0.6te.net/rating/ #
# ЭТОТ СКРИПТ ПАРСИТ САЙТ, ОЦЕНИВАЮЩИЙ КАЧ-ВО СОЗДАНИЯ #
# ВАШЕГО САЙТА, ДИЗАЙН И ПРОЧЕЕ. СПС =FARAON= ЗА ТО, #
# ЧТО ПОДАЛ ИДЕЮ НАПИСАТЬ ЕГО :D ВЫРАЖАЮ БЛАГОДАРНОСТЬ #
# ОТ ПИОНЕРСКОЙ ОРГАНИЦИИ ГЛЕБОВСКОГО САВХОЗА, КАК #
# ГОВОРИТСЯ... ВООБЩЕМ, ЖДЁМС КОМЕНТАРИЕВ ПО СКРИПТУ.. #
# СОРРИ, ЧТО НАПИСАЛ ОЧЕРЕДНОЙ ПАРСЕР, ЩА ПРОСТО НЕТУ #
# НОВЫХ ИДЕЙ... СПАСИБО #
########################################################
?>
<html>
<body>
<head><style>
body
{
padding:10px;
background:#2A2E33;
font-family:tahoma, verdana, arial;
font-size:11px;
text-align:left;
color:#B9B9BD;
}
a:link, a:hover, a:visited
{
color:#B9B9BD;
text-decoration: none;
}
input
{
vertical-align:middle;
margin:1px 0;
padding-right:10px;
border:1px solid #336600;
padding:2px;
background:#363940;
color:#B9B9BD;
}
form
{
padding:10px;
padding-left:20px;
border:1px solid #666;
width:280px;
margin:0 auto;
}
.vstb
{
padding:10px;
padding-left:20px;
border:1px solid #666;
width:400px;
margin:0 auto;
}
</style>
<?
if($_GET['url'])
{
$ps = file_get_contents('http://www.cys.ru/cyber.html?url='.$_GET['url']);
$pattern = "#<index>(.*?)</index>#is";
preg_match_all($pattern, $ps, $out, PREG_SET_ORDER);
if(!preg_match_all($pattern, $ps, $out, PREG_SET_ORDER)) echo('<title>RaTiNg.SiTe{'.htmlspecialchars($_GET['url']).'}</title><div align="center">Невозможно просмотреть сайт <b>'.htmlspecialchars($_GET['url']).'</b></div>');
foreach($out as $row)
{
$row[1] = str_replace('<div class="vst">','<center><h2><font color="green">',$row[1]);
$row[1] = str_replace('</div>
<h1 class="diag">',' ',$row[1]);
$row[1] = str_replace('<a href="/','<a href="http://www.cys.ru/',$row[1]);
$row[1] = str_replace('</a></h1>','</a></font></h2></center>',$row[1]);
$row[1] = str_replace('<img src="/','<img src="http://www.cys.ru/',$row[1]);
$row[1] = str_replace('<div class="vstb"><br>Комментарии и пояснения</div>','<div class="vstb"><font color="green">Коментарии и предложения.</font><br><br><div align="left">',$row[1]);
$row[1] = str_replace('<div class="otcball">','<h4>',$row[1]);
$row[1] = str_replace('</div>
<div class="otc">','</h4><h4>',$row[1]);
$row[1] = str_replace('<strong>','<b><font color="YellowGreen">',$row[1]);
$row[1] = str_replace('</strong> ','</font></b> ',$row[1]);
$row[1] = str_replace('</strong></div>','</font>}</b><font color="YellowGreen">',$row[1]);
$row[1] = str_replace('</strong><br>','</font>}</b></h4>',$row[1]);
$row[1] = str_replace('value="/','value="http://www.cys.ru/',$row[1]);
$row[1] = str_replace('action="/','action="http://www.cys.ru/',$row[1]);
$row[1] = str_replace('</a>)<br>','</a>)</font><br>',$row[1]);
$row[1] = str_replace('предложить поправки</a></center>','предложить поправки</a></center></div>',$row[1]);
$row[1] = str_replace('%2F">','%2F" style="color:green;">',$row[1]);
$row[1] = str_replace('<img','<img border="0"',$row[1]);
$row[1] = str_replace('width="280" height="150"></center>','width="280" height="150"></center><br><br>',$row[1]);
$row[1] = str_replace('Результат оценки качества создания сайта','Качество создания сайта',$row[1]);
$row[1] = str_replace('Оценка: ','Quality{',$row[1]);
$row[1] = str_replace(' баллов',' баллов}',$row[1]);
$row[1] = str_replace('Фактор D: ','Фактор D{',$row[1]);
$row[1] = str_replace('Место в рейтинге: ','Место<b>{',$row[1]);
echo'<title>RaTiNg.SiTe{'.htmlspecialchars($_GET['url']).'}</title>
<table align="center" width="400" style="font-size:11px"><div align="left">'.$row[1].'</div></table>';
}
}
else
{
?>
<title>RaTiNg.SiTe{}</title>
<form method=get style='width:200px;'>
Url: <input type='text' name='url'><br>Example, <b>site.ru</b>.<br><br>
<center><input type='submit' name='submit'></center>
</form>
<?
}
?>
</body>
</html>
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|