05.11.2014 Views

ЛУЧШИХ ВИРУСОВ - Xakep Online

ЛУЧШИХ ВИРУСОВ - Xakep Online

ЛУЧШИХ ВИРУСОВ - Xakep Online

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

взлом<br />

Содержимое архива<br />

тому я не стал спешить и для загрузки образа зашел в режим rommon по<br />

. И — со своего компьютера загрузил образ по tftp напрямую<br />

в RAM:<br />

rommon 1>tftpdnld -r<br />

После загрузки маршрутизатор я сказал:<br />

TFTP flash copy: Error, image size (16507470) mismatches<br />

netsize (16507472).<br />

Оказалось, что при редактировании размера 5й секции я ошибся на 2<br />

байта (те самые 20 байт с 0xFEEDFACE + 2).<br />

После второй попытки загрузки выяснилось, что контрольная сумма<br />

запакованного образа — 0xB0257B0D:<br />

Head Total(b) Used(b) Free(b) Lowest(b) Largest(b)<br />

Processor 82A44240 20244772 8718640 11526132 10171028<br />

10098348<br />

I/O 3CA3400 3525632 1650536 1875096 1875096 1875068<br />

<br />

router#show flash:<br />

System flash directory:<br />

File Length Name/status<br />

1 15947076 c2600-advsecurityk9-mz.124-21-shad-pk.bin<br />

[15947140 bytes used, 830072 available, 16777212 total]<br />

16384K bytes of processor board System flash (Read/<br />

Write)<br />

Error : compressed image checksum is incorrect<br />

0xB99D8823<br />

Expected a checksum of 0x48000000<br />

*** System received a Software forced crash ***<br />

signal= 0x17, code= 0x5, context= 0x800805f0<br />

PC = 0x0, Vector = 0x0, SP = 0x0<br />

Корректируем соответствующее поле после 0xFEEDFACE (загружаем<br />

файл в HT по , переходим по смещению с помощью и редактируем<br />

по , не забывая сохраняться по ). Снова грузимся.<br />

Остается еще одна небольшая проблема. Если запустить проверку:<br />

router#verify flash:c2600-advsecurityk9-mz.124-21-<br />

shad-pk.bin<br />

— маршрутизатор обругает нас, сообщив, что Embedded hash и<br />

Calculated hash не совпадают. Исправить это очень просто — 16 байт<br />

контрольной суммы находится в самом конце бинарного файла образа.<br />

Обнаружить это можно даже с помощью простого поиска:<br />

После исправления маршрутизатор сообщает, что контрольная сумма<br />

успешно подсчитана и совпадает:<br />

rommon 4>reset -s<br />

Дальше все нормально, однако затем IOS вываливается и отказывается<br />

работать по причине недостатка памяти.<br />

НИКОГДА НЕ СДАВАЙСЯ<br />

Я не расстроился и решил взяться за другой образ — c2600-<br />

advsecurityk9-mz.124-21.bin. После аналогичных манипуляций с байтами,<br />

даже при использовании 128-битного слова в 7zip, размер составил<br />

15947076 (против изначальных 16635336), что позволило загрузить его во<br />

flash. Помимо прочего, этот образ уже не ругался на недостаток памяти<br />

RAM и прекрасно чувствовал себя на этой платформе:<br />

router#show version<br />

Cisco IOS Software, C2600 Software (C2600-<br />

ADVSECURITYK9-M), Version 12.4(21), RELEASE SOFTWARE<br />

(fc1)<br />

<br />

router#show memory summary<br />

062<br />

Embedded Hash MD5 : 3DD2C6591FF4F033425147DE4540F9CD<br />

Computed Hash MD5 : 3DD2C6591FF4F033425147DE4540F9CD<br />

CCO Hash MD5 : 79020945BDFE2A354E012C8303136360<br />

Embedded hash verification successful.<br />

File system hash verification successful.<br />

ЛОГИЧЕСКОЕ ЗАКЛЮЧЕНИЕ<br />

Новый образ готов и правильно сформирован. Усвоив эту статью, ты<br />

получишь опыт:<br />

1) по формату PKZIP;<br />

2) по формату исполняемых файлов ELF;<br />

3) по внутреннему устройству образов Cisco IOS;<br />

4) по работе в режиме rommon маршрутизатора.<br />

Кроме того, готов задел для дальнейших извращений над маршрутизаторами.<br />

Для общего развития можно поковырять распакованные образы в<br />

IDA, изучить вирусы в *nix-like системах, чтобы проинфицировать образ<br />

своим бекдором, ну и собственно, написать бекдор. A мои изыскания здесь<br />

успешно заканчиваются. Все вопросы, пожелания и, в особенности, идеи,<br />

мой дорогой друг, я готов получить по электронной почте. С радостью отвечу<br />

и помогу по мере сил. Удачи в бинарном патчинге... и не только. z<br />

XÀÊÅÐ 04 /124/ 09

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!