Посл.ответ |
Сообщение |
Ранг: 673.3 (! !), 400thx Активность: 0.4↘0.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.32↘0 Статус: Uploader 5KRT
|
Создано: 10 августа 2008 15:21 · Поправил: coderess · Личное сообщение · #2
[СТЕР]
----- Gutta cavat lapidem. Feci, quod potui. Faciant meliora potentes | Сообщение посчитали полезным: |
Ранг: 462.8 (мудрец), 468thx Активность: 0.28↘0 Статус: Участник Only One!
|
Создано: 10 августа 2008 20:54 · Личное сообщение · #3
Помоему, если я не ошибаюсь, это какой-то инфектор... mak поправь если ошибаюсь.
----- aLL rIGHTS rEVERSED! | Сообщение посчитали полезным: |
Ранг: 673.3 (! !), 400thx Активность: 0.4↘0.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.4↘0.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.4↘0.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.14↘0.01 Статус: Участник
|
Создано: 12 августа 2008 17:18 · Личное сообщение · #7
А ты на таблицу экспорта посмотри откомпиленного варианта
----- все багрепорты - в личные сообщения | Сообщение посчитали полезным: |
Ранг: 48.8 (посетитель), 17thx Активность: 0.02↘0 Статус: Участник
|
Создано: 12 августа 2008 17:20 · Личное сообщение · #8
дело не в экспорте. В DLL_Main эксепшн, система сама выгружает твою длл, оля ее видит
| Сообщение посчитали полезным: |
Ранг: 673.3 (! !), 400thx Активность: 0.4↘0.31 Статус: Участник CyberMonk
|
Создано: 12 августа 2008 18:13 · Личное сообщение · #9
Olenevod =) спсб ..какой код экзепшн не помнишь ?
----- RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube | Сообщение посчитали полезным: |
Ранг: 48.8 (посетитель), 17thx Активность: 0.02↘0 Статус: Участник
|
Создано: 12 августа 2008 18:23 · Личное сообщение · #10
код 0хC0000005.
но что то не ясно, толи длл кривая, толи еще что, в общем олька только одну секцию видит
| Сообщение посчитали полезным: |
Ранг: 673.3 (! !), 400thx Активность: 0.4↘0.31 Статус: Участник CyberMonk
|
Создано: 12 августа 2008 22:27 · Личное сообщение · #11
ну тогда HandMill прав , это код ошибки знакомый всем. У меня скачанная длл показывает 5 секций , и сразу скомпилинная тоже , но ошибка явно присутсвует. Может просто есть особенности использования АПИ адресов в библиотеках оли ? .. может динамически поиском искать ? .. и забивать таблицу адресов. Млин ..
----- RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube | Сообщение посчитали полезным: |
Ранг: 48.8 (посетитель), 17thx Активность: 0.02↘0 Статус: Участник
|
Создано: 12 августа 2008 23:19 · Личное сообщение · #12
АПИ тут ни при чем. ошибка скорее всего в другом.
У меня написано несколько плагинов, нигде подобного не возникало.
если выложишь полные сорцы, тогда разберемся, а так... хз что там.
| Сообщение посчитали полезным: |
Ранг: 990.2 (! ! !), 380thx Активность: 0.68↘0 Статус: Модератор Author of DiE
|
Создано: 12 августа 2008 23:33 · Личное сообщение · #13
посмотри внимательно импорт в своей dll
из OllyDbg.exe импортируется только 2 функции, и инита там нету =)
----- [nice coder and reverser] | Сообщение посчитали полезным: |
Ранг: 673.3 (! !), 400thx Активность: 0.4↘0.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.68↘0 Статус: Модератор Author of DiE
|
Создано: 13 августа 2008 00:57 · Личное сообщение · #15
я масм32 всегда в RadASM собираю, никогда проблем не было
----- [nice coder and reverser] | Сообщение посчитали полезным: |
Ранг: 793.4 (! !), 568thx Активность: 0.74↘0 Статус: Участник Шаман
|
Создано: 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.68↘0 Статус: Модератор Author of DiE
|
Создано: 13 августа 2008 11:17 · Личное сообщение · #17
мля протупил, имел ввиду экспорт, написал импорт ппц)))
----- [nice coder and reverser] | Сообщение посчитали полезным: |
Ранг: 673.3 (! !), 400thx Активность: 0.4↘0.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.68↘0 Статус: Модератор 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.3↘0 Статус: Участник
|
Создано: 13 августа 2008 12:49 · Личное сообщение · #20
А чо вообще данный плаг делоет?
----- iNTERNATiONAL CoDE CReW | Сообщение посчитали полезным: |
Ранг: 673.3 (! !), 400thx Активность: 0.4↘0.31 Статус: Участник CyberMonk
|
Создано: 13 августа 2008 14:06 · Личное сообщение · #21
Hellspawn млин , там он случайно появился , Честное слово ! Все работает =) Спасибо
Spirit Пока ничего =) , кодит Isaev и я , плагин упрощающий поиск событий функций в прогах на делфе. Посмотрим что получится
----- RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube | Сообщение посчитали полезным: |
Ранг: 673.3 (! !), 400thx Активность: 0.4↘0.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.4↘0.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.14↘0 Статус: Участник
|
Создано: 18 сентября 2008 01:54 · Личное сообщение · #24
mak
Спасибо, а по АПИ ф-циям так не напишешь ?
----- PSP-Gamer.ru | Сообщение посчитали полезным: |
Ранг: 673.3 (! !), 400thx Активность: 0.4↘0.31 Статус: Участник CyberMonk
|
Создано: 18 сентября 2008 12:19 · Личное сообщение · #25
ПО АПИ ))))) по апи же есть хоть и не полная. От борланда справка по апи кажется. Кстати ! Они должны были ее обновить , для висты же нужно знать новые АПИ у кого есть новая справка по апи ?
----- RE In Progress [!] Coding Hazard [!] Stay Clear of this Cube | Сообщение посчитали полезным: |
Ранг: 2014.5 (!!!!), 1278thx Активность: 1.34↘0.25 Статус: Модератор retired
|
Создано: 18 сентября 2008 12:30 · Личное сообщение · #26
Может, я не шарю, но чем мсдн не рулит?
| Сообщение посчитали полезным: |
Ранг: 118.1 (ветеран) Активность: 0.14↘0 Статус: Участник
|
Создано: 18 сентября 2008 13:06 · Личное сообщение · #27
mak У мя метроф на 15 есть, вообще не удобная например, нужно триал кильнуть, стандартные ф-ции для этого не используются, а вот справка такая б помогла.
----- PSP-Gamer.ru | Сообщение посчитали полезным: |
Ранг: 226.0 (наставник), 67thx Активность: 0.16↘0 Статус: Участник
|
Создано: 18 сентября 2008 13:21 · Личное сообщение · #28
mak пишет:
Биос и дос справочник прерываний , делал для себя
красавчег
вот бы мне такой справочник лет 10-15 назад пригодился...
| Сообщение посчитали полезным: |
Ранг: 673.3 (! !), 400thx Активность: 0.4↘0.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.4↘0.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 | Сообщение посчитали полезным: |