Сейчас на форуме: (+3 невидимых)

 eXeL@B —› Дневники и блоги —› Mak Blog
. 1 . 2 . >>
Посл.ответ Сообщение


Ранг: 673.3 (! !), 400thx
Активность: 0.40.31
Статус: Участник
CyberMonk

Создано: 31 июля 2008 18:39 · Поправил: mak
· Личное сообщение · #1


.386
.model flat, stdcall
option casemap:none
include w2k\ntstatus.inc
include w2k\ntddk.inc
include w2k\ntoskrnl.inc
include w2k\w2kundoc.inc
includelib w2k\ntoskrnl.lib
include Strings.mac
.data?
DeviceName dd ?
BaseAddress dd ?
.data
CreateProcess db "NtCreateProcess",0
SourceString dw 5ch
.const
CCOUNTED_UNICODE_STRING "\Device\ring0code", g_usDeviceName, 4
CCOUNTED_UNICODE_STRING "\??\ring0code", g_usSymbolicLinkName, 4

.code

_Shell proc Source:DWORD,ea
local ObjectAttributes:OBJECT_ATTRIBUTES
local hFile,hSection,ViewSize
local IoStatusBlock:IO_STATUS_BLOCK
push esi
xor esi,esi
;OBJECT_ATTRIBUTES
mov [ebp+ObjectAttributes.ObjectName],ea
mov [ebp+ObjectAttributes.Length], 18h
mov [ebp+ObjectAttributes.RootDirectory], esi
mov [ebp+ObjectAttributes.Attributes], 40h
lea edi, [ebp+ObjectAttributes.SecurityDescriptor]
InitializeObjectAttributes addr ObjectAttributes, addr g_usDirName,
OBJ_CASE_INSENSITIVE + OBJ_KERNEL_HANDLE, NULL, NULL
invoke ZwOpenFile,100020h,addr ObjectAttributes,addr IoStatusBlock,FILE_SHARE_READ
mov hFile,eax
invoke ZwCreateSection,hSection,SECTION_ALL_ACCESS,addr ObjectAttributes,
0,PAGE_EXECUTE, SEC_IMAGE, hFile
invoke ZwMapViewOfSection,hSection,0FFFFFFFFh,BaseAddress,0,3E8h,0,addr ViewSize,1,100000h,4
ret
_Shell endp

_Ring proc RingApi:DWORD
invoke RtlInitUnicodeString,RingApi,addr SourceString
lea eax,RingApi
invoke _shell,offset SourceString,eax
ret
_Ring endp

_CachedMemory proc pDeviceObject:PDEVICE_OBJECT
local FastMutex:FAST_MUTEX

pushad
invoke MmAllocateNonCachedMemory,0FA0h
if eax!=NULL
mov BaseAddress,eax
.elseif
jmp close
.endif
push esi
xor esi, esi
push edi ; State
inc esi
push esi ; Type
push offset FastMutex.Event ; Event
mov FastMutex.Count, esi
mov FastMutex.Owner, edi
mov FastMutex.Contention, edi
call ds:KeInitializeEvent ; APC
mov edi, BaseAddress
mov ecx, 3E8h
mov edi, BaseAddress
mov ecx, 3E8h
xor eax, eax
rep stosd

close:
mov ebx, 0C0000001h
popad
ret
_CachedMemory endp

_DispatchControlIo proc pDeviceObject:PDEVICE_OBJECT, pIrp:PIRP
mov eax,pIrp
assume eax:ptr _IRP
mov [eax].IoStatus.Status,STATUS_SUCCESS
;IoCompleteRequest
and [eax].IoStatus.Information,0
assume eax:nothing
invoke IoCompleteRequest,pIrp,IO_NO_INCREMENT;
xor eax,eax
mov eax, STATUS_SUCCESS
ret
_DispatchControlIo endp

DriverEntry proc uses ebx edi esi, pDriverObject:PDRIVER_OBJECT, pusRegistryPath:PUNICODE_STRING
local status:NTSTATUS
local pDeviceObject:PDEVICE_OBJECT
local DriverObject

invoke RtlInitUnicodeString,addr DeviceName,addr g_usDeviceName
mov esi,DriverObject
mov status,STATUS_DEVICE_CONFIGURATION_ERROR
invoke IoCreateDevice,DriverObject,0,addr g_usDeviceName,FILE_DEVICE_UNKNOWN,100,FALSE,addr pDeviceObject
.if eax!=STATUS_SUCCESS
jmp exit
.endif
mov eax,offset _DispatchControlIo
mov [esi+38h],eax
mov [esi+40h],eax
push offset g_usDeviceName
lea eax,offset g_usSymbolicLinkName
push eax
mov [esi+70h],offset _DispatchControlIo
mov [esi+34h],offset _DispatchControlIo
call RtlInitUnicodeString
invoke IoCreateSymbolicLink,addr g_usSymbolicLinkName,addr g_usDeviceName
.if eax == STATUS_SUCCESS
mov eax,pDriverObject
.elseif
invoke IoDeleteDevice, pDeviceObject
.endif
jmp GetHookApi

GetHookApi:
mov eax,offset pDeviceObject
add [eax+1Ch],7FH
invoke _CachedMemory
invoke _Ring,addr CreateProcess

exit: mov eax,STATUS_DEVICE_CONFIGURATION_ERROR
ret
DriverEntry endp
end DriverEntry


-----
RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube





Ранг: 355.4 (мудрец), 55thx
Активность: 0.320
Статус: Uploader
5KRT

Создано: 10 августа 2008 15:21 · Поправил: coderess
· Личное сообщение · #2

[СТЕР]

-----
Gutta cavat lapidem. Feci, quod potui. Faciant meliora potentes





Ранг: 462.8 (мудрец), 468thx
Активность: 0.280
Статус: Участник
Only One!

Создано: 10 августа 2008 20:54
· Личное сообщение · #3

Помоему, если я не ошибаюсь, это какой-то инфектор... mak поправь если ошибаюсь.

-----
aLL rIGHTS rEVERSED!





Ранг: 673.3 (! !), 400thx
Активность: 0.40.31
Статус: Участник
CyberMonk

Создано: 11 августа 2008 00:14 · Поправил: mak
· Личное сообщение · #4

=) Я долго думал какую тематику выбрать , но потом решил просто постить различные дровины ,, чтобы было на чем практиковаться в написании драйверов. Основной функционал описан в кмдтут от Фоур Ф , но иногда границы фантазии у некоторых на этом иссекают , чтобы нарушить этот баланс и будет вестись этот блог =). Выйти из повседневности рутинных программистских задач.

Конечно хотелось бы посветить этот блог какой то основной задаче типо проекта на асм. Но мои идеи чаще не воспринимаются серьезно многими людьми. Что лично я считаю просто сложившейся ситуацией и причинами , вызывающими непонимание проблематики или желания. Поэтому освящением своих идей здесь я заниматься не буду. Ибо буду кодить в тихоря

coderess =) юзать этот драйвер можешь как хочешь , переписывать дописывать , а особой ценности он не представляет , попал просто под руку , типо ТЕСТ провел.

На ВАСМ ру обсуждалась тема про коолбэк с ринг0 в ринг 3 =) , вот тут дровина как раз осуществляющая эту идею , в дополнените можно найти статью на ВАСМ. Как говориться в статье идея эта бесполезна и почему с ней все носятся не понятно.

-----
RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube





Ранг: 673.3 (! !), 400thx
Активность: 0.40.31
Статус: Участник
CyberMonk

Создано: 11 августа 2008 00:26
· Личное сообщение · #5

=) не прикрепилась

45dd_10.08.2008_CRACKLAB.rU.tgz - r0r3.asm

-----
RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube





Ранг: 673.3 (! !), 400thx
Активность: 0.40.31
Статус: Участник
CyberMonk

Создано: 12 августа 2008 17:01
· Личное сообщение · #6

=) Вообщем такая проблема , скомпилил дллку , это плагин для OllzDBG , но без начинки. Ольга его почему то не видит.

Есть вот эти проки
LIBRARY
EXPORTS
_ODBG_Plugininit
_ODBG_Plugindata
_ODBG_Pluginmenu
_ODBG_Pluginaction
_ODBG_Plugindestroy
;_ODBG_Pluginreset
_ODBG_Pluginclose

сам длл.

96bc_12.08.2008_CRACKLAB.rU.tgz - mak.dll

-----
RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube




Ранг: 222.2 (наставник), 115thx
Активность: 0.140.01
Статус: Участник

Создано: 12 августа 2008 17:18
· Личное сообщение · #7

А ты на таблицу экспорта посмотри откомпиленного варианта

-----
все багрепорты - в личные сообщения




Ранг: 48.8 (посетитель), 17thx
Активность: 0.020
Статус: Участник

Создано: 12 августа 2008 17:20
· Личное сообщение · #8

дело не в экспорте. В DLL_Main эксепшн, система сама выгружает твою длл, оля ее видит




Ранг: 673.3 (! !), 400thx
Активность: 0.40.31
Статус: Участник
CyberMonk

Создано: 12 августа 2008 18:13
· Личное сообщение · #9

Olenevod =) спсб ..какой код экзепшн не помнишь ?

-----
RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube




Ранг: 48.8 (посетитель), 17thx
Активность: 0.020
Статус: Участник

Создано: 12 августа 2008 18:23
· Личное сообщение · #10

код 0хC0000005.
но что то не ясно, толи длл кривая, толи еще что, в общем олька только одну секцию видит




Ранг: 673.3 (! !), 400thx
Активность: 0.40.31
Статус: Участник
CyberMonk

Создано: 12 августа 2008 22:27
· Личное сообщение · #11

ну тогда HandMill прав , это код ошибки знакомый всем. У меня скачанная длл показывает 5 секций , и сразу скомпилинная тоже , но ошибка явно присутсвует. Может просто есть особенности использования АПИ адресов в библиотеках оли ? .. может динамически поиском искать ? .. и забивать таблицу адресов. Млин ..

-----
RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube




Ранг: 48.8 (посетитель), 17thx
Активность: 0.020
Статус: Участник

Создано: 12 августа 2008 23:19
· Личное сообщение · #12

АПИ тут ни при чем. ошибка скорее всего в другом.
У меня написано несколько плагинов, нигде подобного не возникало.
если выложишь полные сорцы, тогда разберемся, а так... хз что там.




Ранг: 990.2 (! ! !), 380thx
Активность: 0.680
Статус: Модератор
Author of DiE

Создано: 12 августа 2008 23:33
· Личное сообщение · #13

посмотри внимательно импорт в своей dll
из OllyDbg.exe импортируется только 2 функции, и инита там нету =)

-----
[nice coder and reverser]





Ранг: 673.3 (! !), 400thx
Активность: 0.40.31
Статус: Участник
CyberMonk

Создано: 13 августа 2008 00:51
· Личное сообщение · #14

Точно , вижу , там 2 функции только импортируются. Причина тогда в компилировании , видимо не правильно собираю

@echo on

c:\MASM32\BIN\Rc.exe clicker.rc
if errorlevel 1 goto errRC
c:\MASM32\BIN\Ml.exe /c /coff clicker.asm
if errorlevel 1 goto errasm
c:\MASM32\BIN\Link.exe /SUBSYSTEM:WINDOWS /RELEASE /DLL /align:16 /DEF:clicker.def /section:.text,ERW clicker.obj clicker.res
if errorlevel 1 goto errlink

dir dialogs
goto TheEnd

:errlink
echo _
echo Link error
goto TheEnd

:errasm
echo _
echo Assembly Error
goto TheEnd

:errRC
echo _
echo RC Error
goto TheEnd
:TheEnd

pause

и вот это в дэф ..
LIBRARY
EXPORTS
_ODBG_Plugininit
_ODBG_Plugindata
_ODBG_Pluginmenu
_ODBG_Pluginaction
_ODBG_Plugindestroy
;_ODBG_Pluginreset
_ODBG_Pluginclose


DllEntryPoint proc hi:HINSTANCE, reason:dword, res:dword
.IF reason == DLL_PROCESS_ATTACH
m2m hinst, hi
.ENDIF
return 1
DllEntryPoint endp

ODBG_Plugindata proc C shortname:ptr byte
invoke lstrcpy, shortname, offset sPluginTitle
mov eax,PLUGIN_VERSION
ret
ODBG_Plugindata endp

ODBG_Plugininit proc C ollydbgversion:dword, hwnd:HWND, features:ptr dword
.if ollydbgversion < PLUGIN_VERSION
mov eax,TRUE
.else
m2m hWin,hwnd
invoke Addtolist,0,0,offset sPluginTitle
invoke Addtolist,0,-1,offset sPluginInfo
mov eax,FALSE

.endif
ret
ODBG_Plugininit endp


-----
RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube





Ранг: 990.2 (! ! !), 380thx
Активность: 0.680
Статус: Модератор
Author of DiE

Создано: 13 августа 2008 00:57
· Личное сообщение · #15

я масм32 всегда в RadASM собираю, никогда проблем не было

-----
[nice coder and reverser]





Ранг: 793.4 (! !), 568thx
Активность: 0.740
Статус: Участник
Шаман

Создано: 13 августа 2008 05:04
· Личное сообщение · #16

mak там не в импорте дело. У тебя директория экспорта пустая, а там должны быть
mak пишет:
LIBRARY
EXPORTS
_ODBG_Plugininit
_ODBG_Plugindata
_ODBG_Pluginmenu
_ODBG_Pluginaction
_ODBG_Plugindestroy
;_ODBG_Pluginreset
_ODBG_Pluginclose


У тебя экспорт не создается, что оля должны вызывать из библы?

Я свой плуг вот так собирал
@echo off
if exist AntiDRxFucker.obj del AntiDRxFucker.obj
if exist AntiDRxFucker.dll del AntiDRxFucker.dll
@echo "--> Compiling..."
@\masm32\bin\ml /c /coff /Cp /Fl AntiDRxFucker.asm
@echo "--> Building resources..."
@\masm32\bin\rc resources.rc
@echo "--> Linking..."
@\masm32\bin\Link /SUBSYSTEM:WINDOWS /DLL /DEF:AntiDRxFucker.def /SECTION:.text,EWR /IGNORE:407 AntiDRxFucker.obj resources.res
if not exist AntiDRxFucker.dll goto error
@echo "--> OK, Finish!"
goto end
:error
@echo "--> !! ERROR !!"
:end
pause

-----
Yann Tiersen best and do not fuck





Ранг: 990.2 (! ! !), 380thx
Активность: 0.680
Статус: Модератор
Author of DiE

Создано: 13 августа 2008 11:17
· Личное сообщение · #17

мля протупил, имел ввиду экспорт, написал импорт ппц)))

-----
[nice coder and reverser]





Ранг: 673.3 (! !), 400thx
Активность: 0.40.31
Статус: Участник
CyberMonk

Создано: 13 августа 2008 12:07
· Личное сообщение · #18

Hellspawn да неважно , я тебя понял

PE_Kill спсб =) я так тоже пробовал , щас скомпилю выложу , да я заметил что нет экспорта. Просто вновь склмпиленный вариант вновь не сработал.

9840_13.08.2008_CRACKLAB.rU.tgz - OllydbgPlugin.rar

-----
RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube





Ранг: 990.2 (! ! !), 380thx
Активность: 0.680
Статус: Модератор
Author of DiE

Создано: 13 августа 2008 12:42 · Поправил: Hellspawn
· Личное сообщение · #19

чтож ты кодишь то))

int __cdecl ODBG_Plugininit(unsigned int a1, int a2)
{
int result; // eax@2

if ( a1 >= 0x6C )
{
dword_100007F4 = a2;
OllyDbg_2(0, 0, "clicker");
OllyDbg_2(0, -1, "CR@CKLAB");
result = MessageBoxA(0, "About", "About", 0);
}
else
{
result = 1;
}
return result;
}

надо 0 вернуть, чтобы плаг появился, и кто в инит пихает messagebox??

-----
[nice coder and reverser]





Ранг: 271.6 (наставник), 2thx
Активность: 0.30
Статус: Участник

Создано: 13 августа 2008 12:49
· Личное сообщение · #20

А чо вообще данный плаг делоет?

-----
iNTERNATiONAL CoDE CReW





Ранг: 673.3 (! !), 400thx
Активность: 0.40.31
Статус: Участник
CyberMonk

Создано: 13 августа 2008 14:06
· Личное сообщение · #21

Hellspawn млин , там он случайно появился , Честное слово ! Все работает =) Спасибо

Spirit Пока ничего =) , кодит Isaev и я , плагин упрощающий поиск событий функций в прогах на делфе. Посмотрим что получится

-----
RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube





Ранг: 673.3 (! !), 400thx
Активность: 0.40.31
Статус: Участник
CyberMonk

Создано: 11 сентября 2008 02:28 · Поправил: mak
· Личное сообщение · #22

ктонить знает , есть ли сборники IDA signature многих в одном флаконе ? И еще чтонить полезное для разбора ВМ , в виде плага для иды?

Встречал плагин с исходниками для анализа и разбора VM и востановления обфусцированного кода , но сейчас найти не могу. Кто знает ?

-----
RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube





Ранг: 673.3 (! !), 400thx
Активность: 0.40.31
Статус: Участник
CyberMonk

Создано: 16 сентября 2008 14:34
· Личное сообщение · #23

=) Биос и дос справочник прерываний , делал для себя , вот думаю выложить , есть вторая часть но ее надо разложить по полкам и добавить в этот файл. Поэтому это чуть позже. Инфа для востановления добавлена на всякий.

1382_16.09.2008_CRACKLAB.rU.tgz - s036h.rar

-----
RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube





Ранг: 118.1 (ветеран)
Активность: 0.140
Статус: Участник

Создано: 18 сентября 2008 01:54
· Личное сообщение · #24

mak
Спасибо, а по АПИ ф-циям так не напишешь ?

-----
PSP-Gamer.ru





Ранг: 673.3 (! !), 400thx
Активность: 0.40.31
Статус: Участник
CyberMonk

Создано: 18 сентября 2008 12:19
· Личное сообщение · #25

ПО АПИ ))))) по апи же есть хоть и не полная. От борланда справка по апи кажется. Кстати ! Они должны были ее обновить , для висты же нужно знать новые АПИ у кого есть новая справка по апи ?

-----
RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube





Ранг: 2014.5 (!!!!), 1278thx
Активность: 1.340.25
Статус: Модератор
retired

Создано: 18 сентября 2008 12:30
· Личное сообщение · #26

Может, я не шарю, но чем мсдн не рулит?




Ранг: 118.1 (ветеран)
Активность: 0.140
Статус: Участник

Создано: 18 сентября 2008 13:06
· Личное сообщение · #27

mak У мя метроф на 15 есть, вообще не удобная например, нужно триал кильнуть, стандартные ф-ции для этого не используются, а вот справка такая б помогла.

-----
PSP-Gamer.ru




Ранг: 226.0 (наставник), 67thx
Активность: 0.160
Статус: Участник

Создано: 18 сентября 2008 13:21
· Личное сообщение · #28

mak пишет:
Биос и дос справочник прерываний , делал для себя

красавчег
вот бы мне такой справочник лет 10-15 назад пригодился...




Ранг: 673.3 (! !), 400thx
Активность: 0.40.31
Статус: Участник
CyberMonk

Создано: 18 сентября 2008 18:47
· Личное сообщение · #29

Archer пишет:
Может, я не шарю, но чем мсдн не рулит?

Дело вкуса , у меня стоит МСДН на винте , но честно чем то он меня отталкивает по функциям поиска и разложенности информации. Чем тогда не проще сделать справку всех апи в одном ?

Legal Information
Microsoft® Win32® Programmer's Reference вот это у меня от борланда. А новее кажется не выпускали.

SergX пишет:
mak пишет:
Биос и дос справочник прерываний , делал для себя
красавчег
вот бы мне такой справочник лет 10-15 назад пригодился...

щас тоже пригодится думаю ,нужно вторую часть добить там 99 процентов всего.

-----
RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube





Ранг: 673.3 (! !), 400thx
Активность: 0.40.31
Статус: Участник
CyberMonk

Создано: 01 октября 2008 23:17
· Личное сообщение · #30

=) Для перевода на Си

24dc_01.10.2008_CRACKLAB.rU.tgz - javaС++.rar

-----
RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube



. 1 . 2 . >>
 eXeL@B —› Дневники и блоги —› Mak Blog
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати