MP3 player в SoftICE

Тема в разделе "WASM.RESEARCH", создана пользователем rpy3uH, 5 янв 2007.

  1. rpy3uH

    rpy3uH New Member

    Публикаций:
    0
    Регистрация:
    14 сен 2006
    Сообщения:
    503
    Недавно почитал readme к примочке к SoftICE - IceExt 0.65

    IceExt v0.65 - Implemented as internal NTIce commands:
    memory dumping, SoftICE screen dumping, tetris game,
    kernel-mode MP3 player , .......


    какие только команды не вводил не нашёл команды для ядерного MP3 плеера, мне это фактически и не нужно, но просто интересно .....
    может у кого нибудь заработал MP3 плеер
     
  2. amitophia

    amitophia New Member

    Публикаций:
    0
    Регистрация:
    28 мар 2004
    Сообщения:
    44
    Посмотри исходники команды !test (cmd_test.cpp)
     
  3. rpy3uH

    rpy3uH New Member

    Публикаций:
    0
    Регистрация:
    14 сен 2006
    Сообщения:
    503
    откуда же мне взять этот файл cmd_test.cpp
     
  4. Asterix

    Asterix New Member

    Публикаций:
    0
    Регистрация:
    25 фев 2003
    Сообщения:
    3.576
    IceExt распространяется с исходниками
     
  5. amitophia

    amitophia New Member

    Публикаций:
    0
    Регистрация:
    28 мар 2004
    Сообщения:
    44
    http://stenri.pisem.net/
     
  6. iNTA_SYS

    iNTA_SYS New Member

    Публикаций:
    0
    Регистрация:
    12 ноя 2007
    Сообщения:
    38
    Настоящие хакеры слушают музыку на нулевом кольце!

    Вобщем идея такая:
    > грузить сайс и IceExt
    > I3HERE ON
    >X
    > загрузить mp3 в память с помощью SISND (специально только что накодил см. в аттаче SISND.ASM,
    например SISND C:\MP3\mysound.mp3)
    > при всплытии SoftIce набираем: !test eax ecx
    ...но звука однако у меня так и нет :dntknw:
    И почему то в исходном коде стоит return?
    cmd_test.cpp
    Код (Text):
    1. ***
    2.     si_Exec("u KERNEL32!UnhandledExceptionFilter");       //<<Выполняется только это
    3.     return;
    4.    DbgPrint("Current KTHREAD: %08X\n", *si_CurrentContext);
    5.     return;
    6.     // parse command line                 <<А надо это
    7.     __asm                                          
    8.     {
    9.             mov      esi, args
    10.             cmp      byte ptr [esi], 0
    11.             jz       syntax_error
    12.  ***
    Так что надо либо патчить IceExt (заменить ret'ы на nop'ы) либо перекомпилить,
    но make файл какой-то странный.

    ----------------------------------------------------
    Продолжение:
    Сам IceExt находится в IceExt.exe в виде бинарного ресурса, и экспортирует все свои функции: bc, dump, trace...
    дизассемблированное начало 'test':
    Код (Text):
    1. 0001A050                 mov     edi, edi
    2. 0001A052                 push    ebp
    3. 0001A053                 mov     ebp, esp
    4. 0001A055                 sub     esp, 8
    5. 0001A058                 push    esi
    6. 0001A059                 push    1
    7. 0001A05B                 push    offset aUKernel32Unhan ; "u KERNEL32!UnhandledExceptionFilter"
    8. 0001A060                 call    sub_14670
    9. 0001A065                 jmp     loc_1A16A
    10. 0001A06A                 mov     esi, [ebp+18h]
    11. 0001A06D                 cmp     byte ptr [esi], 0
    12. 0001A070                 jz      loc_1A15D
    13.                 * * *
    14. 0001A0A4                 push    eax
    15. 0001A0A5                 push    offset aPlayingAddr08x ; "Playing Addr=%08X Len=%08X\n"
    16. 0001A0AA                 call    DbgPrint
    17. 0001A0AF                 add     esp, 0Ch
    18. 0001A0B2                 cmp     dword_4A4E4, 0
    19. 0001A0B9                 jz      short loc_1A12F
    При вызове этой функции её выполнение заканчивается 1A065: jmp loc_1A16A, с последующим выходом;
    Когда забил код с 1A059 по 1A065 (бряки не работают, видимо аддр. пр-во сайса) выполнение передалось на 1A0B9: jz short loc_1A12F, с последующей выдачей сообщения "AC97 codec is not found.\n". Интересно какой кодек он имеет ввиду - в винде то есть AC97 кодек; а может это функция ещё сыровата: в сорце написано Only for debugging purposes.

    [Этот код можно найти в SI поиском 8B FF 55 8B EC 83 EC 08 56 6A 01 (версия IceExt - 0.70)]
     
  7. CodeTao

    CodeTao Евгений

    Публикаций:
    0
    Регистрация:
    31 окт 2006
    Сообщения:
    177
    Адрес:
    штаты
    Сам пытался заставить работать год назад - нивкакую...
    Решил проблему установкой сайса под Virtual PC и слушать музыку на реальной машине + и доки можно читать параллейно.