범용쉘코드 썸네일형 리스트형 쉘코드 인코딩(Shellcode Encoding) 이 포스팅은 서적 '윈도우 시스템 해킹 가이드 : 버그헌팅과 익스플로잇'을 기반으로 작성한 포스팅입니다. 관련 포스팅 보러가기 쉘코드(Shellcode) 기초(1)쉘코드(Shellcode) 기초(2)범용 쉘코드(Universal Shellcode) (1)범용 쉘코드(Universal Shellcode) (2)메타스플로잇(Metasploit)을 이용한 쉘코드작성 쉘코드르 작성하는 방법을 포스팅을 다뤘었는데, 한가지 유의할 점이 있다. 실제 쉘코드를 작성하고 공격했을 경우 쉘코드가 정상적임에도 불구하고 이상하게 공격이 실행되지 않는 경우가 있다. 우리가 입력한 값을 프로그램 내부에서 처리하는 과정 중에 대문자가 소문자로 변환되기도 하고, 소문자가 대문자로 변하기도 하며, 유니코드로 변환되며 쉘코드 중간에 널.. 더보기 메타스플로잇(Metasploit)을 이용한 쉘코드 작성 이 포스팅은 서적 '윈도우 시스템 해킹 가이드 : 버그헌팅과 익스플로잇'을 기반으로 작성한 포스팅입니다. 이전 포스팅 보러가기 쉘코드(Shellcode) 기초(1) 쉘코드(Shellcode) 기초(2) 범용 쉘코드(Universal Shellcode) (1) 범용 쉘코드(Universal Shellcode) (2) 이전 포스팅 범용 쉘코드(Universal Shellcode) (2)를 보면 함수의 주소를 구할 때 어떠한 과정을 통해서 동적으로 구할수 있는지 확인하였다. 하지만 중요한 문제가 있다. 지금까지 다루었던 쉘코드는 단순히 cmd 명령을 실행시키는 코드였다. 이에 반해 실제 공격에 사용되는 쉘코드는 조금 더 다양하고 강력한 기능을 수행하게 된다. 조금더 다양하고 강력한 기능을 수행하기 위해서는 더.. 더보기 범용 쉘코드(Universal Shellcode) (2) 이 포스팅은 서적 '윈도우 시스템 해킹 가이드 : 버그헌팅과 익스플로잇'을 기반으로 작성한 포스팅입니다. 이전 포스팅범용 쉘코드(Universal Shellcode) (1) 보러가기 이전 포스팅에서는 범용 쉘코드의 필요성에 대하여 포스팅하였다. 그렇다면 ASLR기술이 적용된 시스템에서는 어떠한 과정을 통해 실질적으로 우리가 필요로 하는 함수를 구할 수 있을지 학습하여 보겠다. 프로세스에서 함수의 주소값을 구하기 위해서는 함수가 저장되어져있는 dll의 시작 주소값과 dll 시작 주소부터 함수까지의 offset을 알아야한다. ① dll의 시작 주소값 구하기 대체적인 주소값 계산의 흐름은 위와 같다. FS레지스터에는 TEB의 주소가 저장되어 있다. TEB란 현재 실행되고 있는 쓰레드에 대한 정보를 담고 있는 .. 더보기 범용 쉘코드(Universal Shellcode) (1) 이 포스팅은 서적 '윈도우 시스템 해킹 가이드 : 버그헌팅과 익스플로잇'을 기반으로 작성한 포스팅입니다. 현 포스팅[범용 쉘코드(Universal Shellcode)]을 읽기에 앞서 제시된 포스팅을 읽고 오시는 것을 추천드립니다. 이전 포스팅쉘코드(Shellcode) 기초(1)쉘코드(Shellcode) 기초(2) 범용 쉘코드(Universal Shellcode)의 필요성 이전 포스팅[ 쉘코드(Shellcode) 기초(1) ]에서 작성한 쉘코드를 컴퓨터를 재부팅한 후 실행하면 어떻게 될까? 다음과 같은 에러 메세지를 확인할 수 있다. 그렇다면 다음과 같이 재부팅전에 정상작동하던 쉘코드가 어떠한 부분에서 문제가 발생하며 어떠한 이유로 정상적으로 실행이 되지 않는 것인지 짚고 넘어가야 한다. 위의 작성한 쉘코.. 더보기 이전 1 다음