Fatal error: Maximum execution time of 30 seconds

Время от времени веб-разработчики, сталкиваются с ошибкой
Fatal error: Maximum execution time of 30 seconds exceeded in…<путь к файлу> in <номер строки>

Из-за чего же это происходит?

А дело тут в ограничении ресурсов. Точнее в одной из его составляющих – во времени исполнения. Очень часто эта ошибка возникает, когда сервер перегружен процессами.

Как исправить ошибку?

Режим Бога в Windows 7




Знаете ли вы, что вы тоже можете стать Богом!? Ну, по крайней мере, на Windows 7 (по сообщениям пользователей это так же работает и на Windows Vista).

Этот режим позволит вам управлять всеми настройками Windows из удобного графического меню. Вот как его активировать:

1. Щелкните правой кнопкой мыши на любом пустом пространстве рабочего стола.
2. Перейдите в меню Создать и создайте новую папку.
3. Переименуйте папку следующим образом:
GodMode.{ED7BA470-8E54-465E-825C-99712043E01C}
4. НЕ используйте эту возможность на Windows 7 x64 (а также Windows Vista x64) — это приводит к обрушению системы Как сообщают пользователи, на системах х64 это тоже работает. Но используйте это на свой страх и риск.

Маскировка шелла под картинку


Задача: Замаскировать шелл под местность с помощью .htaccess

Решение
Заливая шелл на какой-нибудь ресурс, ты, конечно, хочешь, чтобы он прожил максимально долго, и не был удален злобными админами в первый же день. Для этого шеллы прячут и маскируют под местность, чтобы файл не вызывал подозрений. А какие файлы в первую очередь вызывают подозрения? Ну, конечно же, скрипты. То есть, файлы с расширением .php .phtml .cgi .pl и т.д. будут проверены первыми. И, напротив, не вызывают подозрения, например, картинки. Но какая же польза от файла с расширением .jpg или .gif, скажешь ты. Ведь он не исполняемый и, если даже засунуть в него .php-код, то, чтобы он заработал, нужен будет инклуд. Это не совсем так, а точнее, совсем не так. Заставить апач воспринимать файл с любым расширением как .php нам поможет .htaccess.

Посмотрим, как это делается:

Узнать имена колонок в таблице, зная ее название

Задача: Узнать имена колонок в таблице, зная ее название
Решение: Представлю недавно опубликованный на форуме sla.ckers.org юзером Paic способ, с помощью которого можно узнать имена колонок, если они имеют тип NOT NULL. Отправляем первый запрос, чтобы узнать, сколько колонок в нужной нам таблице:
id=1 and (select * from users) = (1)
В результате MySQL вернет ошибку «Operand should contain 7 column(s)». Это значит, что в таблице users 7 полей. Тогда составим логически верный запрос:
id=1 and (1,2,3,4,5,6,7) = (select * from users union select 1,2,3,4,5,6,7 limit 1)
Запрос верный и ошибки мы не увидим. А теперь о том, как узнать имена колонок. Для каждого поля в запросе поочередно подставляем последовательность символов %0 и, если у поля стоит ключ NOT NULL, мы увидим ошибку. Посмотрим на примере:
id=1 and (1,2,3,4,5,6,7) = (select * from users union select 1%0,2,3,4,5,6,7 limit 1)
В итоге видим ошибку – «Column ‘id’ cannot be null».
(c)xakep.ru

Обход фильтрации пробелов в SQL-injection


Задача: Обойти фильтрацию пробелов в SQL-injection
Решение

В прошлом номере я уже рассказал, как можно обойти фильтрацию запятых, но подобная фильтрация встречается крайне редко, совсем другой случай – фильтрация пробелов. Скажем, ты нашел инъекцию на крупном новостном портале, но никак не можешь ее раскрутить, так как все известные тебе варианты пробелов не работают. Давай рассмотрим такой код
<?php
if(isset($_GET['id']) && $_GET['id']!=»){
if(strstr($_GET['id'],» «) {die «HACK ALERT»};
if(strstr($_GET['id'],»/**/») {die «HACK ALERT»};
if(strstr($_GET['id'],»+») {die «HACK ALERT»};
if(strstr($_GET['id'],»%20″) {die «HACK ALERT»};

Обход фильтрации символов запятой при проведении SQL-Injection

Задача: Обойти фильтрацию символов запятой при проведении SQL-Injection
Решение:
Задача не банальная. Хоть и встречается редко, но, как правило, ставит в тупик многих людей. Допустим, мы имеем такой код:
<?php
if(isset($_GET['id']) && $_GET['id']!=»){
$replaced = preg_replace(/,/,»,$_GET);

….
здесь какие-то запросы с использованием переменной $replaced
К чему же мы приходим? Невозможно использовать конструкцию union select, если в запросе участвует больше 2-х полей. ОК, крутим как слепую, скажешь ты. Но в данном случае большинство известных способов, таких как использование функций substring(), mid(), ExtractValue(), а также последние наработки Qwazar’a в области раскрутки слепых инъекций работать не будут. Что же делать? Будем использовать логику SQL-выражений, и здесь поможет нам LIKE.
Для начала узнаем версию:

Собственный анонимайзер


HTTP Local Proxy–это анонимайзер  работающий через php гейт(ы), пригодиться тем кто хочет скрыть свой IP но не имеет доступа к прокси/сокс серверам. Сам процесс выбор нужного IP адреса сводиться к выбору хостинга. Что делать? Заливаем на сервер обычный php скрипт, запускаем у себя на тачке клиента, настраиваем адрес прокси в браузере и работаем. Как работает? При запуске клиент загружает из файла адреса наших скриптов, и работает как прокси. Мы отправляем инфу клиенту, он скрипту, скрипт получает то что мы хотеле и отправляет ответ клиенту а он нам) В архиве 3 файла gate.php, host.txt, proxy.exe