Exetools  

Go Back   Exetools > General > General Discussion

Notices

Reply
 
Thread Tools Display Modes
  #1  
Old 09-01-2004, 15:31
hobgoblin hobgoblin is offline
Friend
 
Join Date: Jan 2002
Posts: 124
Rept. Given: 0
Rept. Rcvd 0 Times in 0 Posts
Thanks Given: 2
Thanks Rcvd at 5 Times in 5 Posts
hobgoblin Reputation: 0
Arma question (again...)

Hi guys,
I'm currently looking at a target that somehow puzzles me, and I could use some input. (Target is DVDCoverprint from northcardinal.com). When I scan with PEID is says that the file is protected with Arma 3.00a - 3.61. When I run the program, I can see that there are two processes created (copymem2). Okey, it looks good. Then I use Olly, and use HideDebugger and set a bp WriteProcessMemory. And nothing happens. Olly doesn't stop at breakpoint. The program ends up in a loop without getting out of it. The loop can be beaten, but then the program terminates. When I try to set other bps like ReadProcessMemory, Olly doesn't stop then either. Okey, maybe the program detects Olly. When I try to use a renamed version of Olly, the same thing happens. And same things happens when I use he instead of bp.
When I try to set a bp GetProcAddress from the beginning (to take a look at what kind of api's that's being used in the creation of the second process (son), Olly only stops at FindWindowA. After that, same thing as described above happens.
Have anyone seen this? And if so, have anyone successfully managed to unprotect a program with this version of Arma?
All kinds of input is welcomed.

hobgoblin
Reply With Quote
  #2  
Old 09-01-2004, 16:06
nikita@work
 
Posts: n/a
Quote:
Originally Posted by hobgoblin
Hi guys,
I'm currently looking at a target that somehow puzzles me, and I could use some input. (Target is DVDCoverprint from northcardinal.com). When I scan with PEID is says that the file is protected with Arma 3.00a - 3.61.hobgoblin
It's a custom build of 3.70 version.
Reply With Quote
  #3  
Old 09-01-2004, 20:16
sTfN0X
 
Posts: n/a
Hi,

I had the same problem some time ago. When i set a bp on WriteProcessMemory, the app kept running in an endless loop.

It seems the new Arma detect bp's. I used he instead.
"HE WriteProcessMemory" worked without any problems, but only after I renamed every "OllyDbg" to something else.

Hope this helps.



Regards,

sTfN0X

Last edited by sTfN0X; 09-01-2004 at 20:21.
Reply With Quote
  #4  
Old 09-02-2004, 00:10
hobgoblin hobgoblin is offline
Friend
 
Join Date: Jan 2002
Posts: 124
Rept. Given: 0
Rept. Rcvd 0 Times in 0 Posts
Thanks Given: 2
Thanks Rcvd at 5 Times in 5 Posts
hobgoblin Reputation: 0
hmmm

I can't get he breakpoints to work either on this one. But memory on access on the api WriteProcessMemory worked.:-)
Still can't get a dump though. Somehow I run into problems with the child process after detaching it. Even if I rename Olly (in addition I used windowsjuggler). Well, guess I have to dig deeper....

hobgoblin
Reply With Quote
  #5  
Old 09-02-2004, 01:10
Kyrios Kyrios is offline
Friend
 
Join Date: Feb 2003
Posts: 48
Rept. Given: 0
Rept. Rcvd 0 Times in 0 Posts
Thanks Given: 0
Thanks Rcvd at 1 Time in 1 Post
Kyrios Reputation: 0
In Olly Exception box, uncheck Memory Access Violation. Hide Is DebuggerPresent, then press Run (F9). After pressing 2 times Shift+F9, you will land here (similar look likes the following codes):
POP DWORD PTR DS:[EAX]
POP DWORD PTR FS:[0]
ADD ESP,4
PUSHAD/POPAD
PUSH EAX
PUSH ECX
PUSH EBX
PUSH EDX

then you may use Bp command. Bp detection trick no longer work.

kyrios
Reply With Quote
  #6  
Old 09-02-2004, 02:09
hobgoblin hobgoblin is offline
Friend
 
Join Date: Jan 2002
Posts: 124
Rept. Given: 0
Rept. Rcvd 0 Times in 0 Posts
Thanks Given: 2
Thanks Rcvd at 5 Times in 5 Posts
hobgoblin Reputation: 0
???

I did run Olly without having the Memory Access Violation checked. After one F9 and two SHIFT F9's I end up here:

004978F4 F0:F2: LOCK PREFIX REPNE: ; LOCK prefix is not allowed
004978F6 F9 STC
004978F7 B0 F4 MOV AL,0F4
004978F9 B1 B0 MOV CL,0B0
004978FB B0 B0 MOV AL,0B0
004978FD B0 F0 MOV AL,0F0
Reply With Quote
  #7  
Old 09-02-2004, 05:21
zzsx
 
Posts: n/a
Many packers and protectors checks the first bytes of the API functions to decide whether breakpoints, "INT3" (CCh), are placed.

Thefore, you could defeat the API detector by breaking at the next second or third instructions.
Reply With Quote
  #8  
Old 09-02-2004, 16:21
nikita@work
 
Posts: n/a
Not so easy... many protectors use disasm engine (like zombie's xde) and check more than 2-3 instructions.
Reply With Quote
  #9  
Old 09-03-2004, 00:26
Kyrios Kyrios is offline
Friend
 
Join Date: Feb 2003
Posts: 48
Rept. Given: 0
Rept. Rcvd 0 Times in 0 Posts
Thanks Given: 0
Thanks Rcvd at 1 Time in 1 Post
Kyrios Reputation: 0
Quote:
I did run Olly without having the Memory Access Violation checked. After one F9 and two SHIFT F9's I end up here:
Then u another Shift+F9 pressing till you meet the similar codes i type above. Because i set some custom exceptions in "Ignore also following custom exceptions or ranges".

kyrios
Reply With Quote
  #10  
Old 09-03-2004, 03:47
ilya
 
Posts: n/a
Quote:
Originally Posted by Kyrios
Then u another Shift+F9 pressing till you meet the similar codes i type above. Because i set some custom exceptions in "Ignore also following custom exceptions or ranges".

kyrios
completely agree
Reply With Quote
  #11  
Old 09-03-2004, 04:10
hobgoblin hobgoblin is offline
Friend
 
Join Date: Jan 2002
Posts: 124
Rept. Given: 0
Rept. Rcvd 0 Times in 0 Posts
Thanks Given: 2
Thanks Rcvd at 5 Times in 5 Posts
hobgoblin Reputation: 0
Hmmm

Thanks for the input, but it doesn't work on my computer. when I hit Shift F9 once more I end up here:

0049F1B1 EC IN AL,DX ; I/O command
0049F1B2 8BF5 MOV ESI,EBP
0049F1B4 2031 AND BYTE PTR DS:[ECX],DH
0049F1B6 3132 XOR DWORD PTR DS:[EDX],ESI

If I push Shift F9 once more after this,the program terminates.
Reply With Quote
  #12  
Old 09-03-2004, 06:11
xastey
 
Posts: n/a
make sure you have all bp removed includeing hw bps.. Also just keep restarting the program over and over.. after a while i will run. I have seen this problem with a lot of arma apps.

BTW anyone that runs winxp sp2 does the hidedebugger plugin work for you?
Reply With Quote
  #13  
Old 09-03-2004, 16:47
ilya
 
Posts: n/a
Quote:
Originally Posted by hobgoblin
If I push Shift F9 once more after this,the program terminates.
try use Hide Debugger v1.0.1,must operate
Reply With Quote
  #14  
Old 09-06-2004, 03:14
Kyrios Kyrios is offline
Friend
 
Join Date: Feb 2003
Posts: 48
Rept. Given: 0
Rept. Rcvd 0 Times in 0 Posts
Thanks Given: 0
Thanks Rcvd at 1 Time in 1 Post
Kyrios Reputation: 0
Hi hobogoblin,

I set some custom exception. And after press Run(F9), i land here:
POP DWORD PTR DS:[EAX]
POP DWORD PTR FS:[0]
ADD ESP,4
POP EAX
XOR EDI,EDI
INC EDI
PUSHAD

Then i hit Shift+F9, land here:
POP DWORD PTR DS:[EAX]
POP DWORD PTR FS:[0]
ADD ESP,4
POP EAX
MOV ESI,EAX
AND ESI,FFFF0000
MOV EBX,0BF1
ADD EBX,EBP
CALL EBX
PUSHAD

The second hit i land here:
POP DWORD PTR DS:[EAX]
POP DWORD PTR FS:[0]
ADD ESP,4
POPAD
PUSH EAX
PUSH ECX
BSWAP EDX
NOT EDX
PUSHFD

Sorry if the second exception codes does not look similar with previous i typed. But this is the correct one. After this point, you may use the Bp command.
If your target still silently quit, Look likes you didn't hide olly very well. You should read this
Code:
http://www.woodmann.com/forum/showthread.php?t=6167
kyrios
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
ASPR, ARMA question sgdt General Discussion 3 04-09-2006 03:38
About Arma hobgoblin General Discussion 1 02-02-2004 19:53


All times are GMT +8. The time now is 18:26.


Always Your Best Friend: Aaron, JMI, ahmadmansoor, ZeNiX, chessgod101
( Since 1998 )