- Moderatör
-
- #1
x86-x64 Assembly
Kurucu
fk:
push eax // Bu registeri kaydetmek için
push ebx // Bu registeri kaydetmek için
push ecx // Bu registeri kaydetmek için
push edx // Bu registeri kaydetmek için
push esi // Bu registeri kaydetmek için
push edi // Bu registeri kaydetmek için
push ebp // Bu registeri kaydetmek için
push esp // Bu registeri kaydetmek için
lea eax,[eax-84] // eax registerindeki adresi control etmek için windows apisine gönderiyorum burası kontrol etmek istediğim adrestir.
call cntr
cmp esi,0 // 0 Değeri böyle memory bile yok demek
je yapma
cmp esi,1 // 1 Değeri böyle memory var ama no acces erişim yok demek
je yapma
pop esp // Bu kaydettiğimiz registeri geri getirmek için
pop ebp // Bu kaydettiğimiz registeri geri getirmek için
pop edi // Bu kaydettiğimiz registeri geri getirmek için
pop esi // Bu kaydettiğimiz registeri geri getirmek için
pop edx // Bu kaydettiğimiz registeri geri getirmek için
pop ecx // Bu kaydettiğimiz registeri geri getirmek için
pop ebx // Bu kaydettiğimiz registeri geri getirmek için
pop eax // Bu kaydettiğimiz registeri geri getirmek için
cmp [eax-84],(int)176293393 // Ben classda control yapıyorum, buradan bazen erişimi olmuyan bi yere eriştiğim için crash yiyorum bunu engelledim işte
je rcle
jmp hk
yapma:
pop esp // Bu kaydettiğimiz registeri geri getirmek için
pop ebp // Bu kaydettiğimiz registeri geri getirmek için
pop edi // Bu kaydettiğimiz registeri geri getirmek için
pop esi // Bu kaydettiğimiz registeri geri getirmek için
pop edx // Bu kaydettiğimiz registeri geri getirmek için
pop ecx // Bu kaydettiğimiz registeri geri getirmek için
pop ebx // Bu kaydettiğimiz registeri geri getirmek için
pop eax // Bu kaydettiğimiz registeri geri getirmek için
hk:
mov edx,[eax]
mov [ebp-2C],edx
jmp returnhere
pop esp // Bu kaydettiğimiz registeri geri getirmek için
pop ebp // Bu kaydettiğimiz registeri geri getirmek için
pop edi // Bu kaydettiğimiz registeri geri getirmek için
pop esi // Bu kaydettiğimiz registeri geri getirmek için
pop edx // Bu kaydettiğimiz registeri geri getirmek için
pop ecx // Bu kaydettiğimiz registeri geri getirmek için
pop ebx // Bu kaydettiğimiz registeri geri getirmek için
pop eax // Bu kaydettiğimiz registeri geri getirmek için
rcle:
mov [eax],0 // Hile için 0 değerini eax registerindeki adresin değerine yaz.
mov edx,[eax]
mov [ebp-2C],edx
jmp returnhere
cllcode:
push ebp
mov ebp,esp
sub esp,7C
lea eax,[ebp-08]
push eax
push 1C
lea ecx,[ebp-7C]
push ecx
push 00
mov edx,[ebp+08]
push edx
push -01 // Handlesi -01 gösteriyoruz böylece api bizim uygulamamızı tarıyor
call NtQueryVirtualMemory // Windows apisi
mov [ebp-0C],eax
mov eax,[ebp-68]
mov [ebp-04],eax
mov esi,eax// Erişim olup olmadığının değeri
mov esp,ebp
pop ebp
ret
cntr:
push ebp
mov ebp,esp
mov [ebp-04],eax
mov eax,[ebp-04]
push eax
call cllcode
pop eax
pop ebp
ret
mx1:
jmp newmem
returnhere:
What can I say.
64 bit olanını ne zaman eklersin abi
Bekliyoruz Ozaman
Eline sağlık, 64 Bit gelmesini bekliyorum.
Harika bir iş çıkartmışsınız Hocam dediğiniz gibi mimari ile uğraşanlar için altın değerinde bir paylaşım
güzel detaylı bir konu olmuş senden bu kadar detaylı konu beklemiyodum açıkcası
hell yeah!you really are pro master. Thankss
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?