Jump to content

Patching doesn't work [solved]


Recommended Posts

Hi MUsers,

 

I'm currently doing practices under Linux w/ blah crackmes:

Link: http://crackmes.de/users/lord/easy_linux_crackme/

 

This is the dump result:

 

blah:     file format elf32-i386


Disassembly of section .text:

08048094 <.text>:
8048094:	31 c0                	xor    %eax,%eax
8048096:	b8 2f 00 00 00       	mov    $0x2f,%eax
804809b:	cd 80                	int    $0x80
804809d:	3d ad de 00 00       	cmp    $0xdead,%eax
80480a2:	75 16                	jne    0x80480ba <-- I want to NOP this line
80480a4:	b8 04 00 00 00       	mov    $0x4,%eax
80480a9:	bb 01 00 00 00       	mov    $0x1,%ebx
80480ae:	b9 c4 90 04 08       	mov    $0x80490c4,%ecx
80480b3:	ba 06 00 00 00       	mov    $0x6,%edx
80480b8:	cd 80                	int    $0x80
80480ba:	31 c0                	xor    %eax,%eax
80480bc:	40                   	inc    %eax
80480bd:	31 db                	xor    %ebx,%ebx
80480bf:	cd 80                	int    $0x80

 

As I comment above, I want to patch that line by 2 - NOP bytes.

I wrote this code:

 

#include <stdio.h>

int
main( int argc, char *argv[] )
{
int offset[2] = { 0x75, 0x16 }; /* origin */
char patch[2] = { 0x90, 0x90 }; /* nop */
FILE *file;
int i;

file = fopen( "blah", "rb+" );
if( file != NULL ) {
	for( i = 0; i < 2; ++i ) {
		fseek( file, offset[i], SEEK_SET ); /* search */
		fprintf( file, "%c", patch[i] ); /* patch */			
	}
	printf("Patched Done.\n");
} else {
	printf("[Error]: file not found. \n");
}		
fclose( file );
return 0;
}

 

However, I don't know why it doesn't work???

May some1 help me this?

Edited by Xcross87
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...