본문 바로가기

쉘코드

해킹 프레임워크 메타스플로잇(Metasploit) 사용하기 /* written by kaspy (kaspyx@gmail.com)*/ 메타스플로잇 프레임워크는 취약점을 공유하는 사이트로써 취약점 DB에 존재하는 바이너리에 대한 자동화된 공격코드를 제공해줍니다. 따라서 해킹에 대해서 깊은 지식이 없어도 조금의 개념만 익히면 자동화된 공격을 통해 시스템의 권한을 획득하거나, 불법적인 바이러스를 유포하거나 악의적인 공격 또한 할 수 있습니다. 취약점의 종류는 여러 가지가 있지만 대표적으로 버퍼 오버플로우, 웹 취약점, 암호노출 등을 들 수 있습니다. 실제 테스트한 방법은 아래와 같습니다. 1. 메타스플로잇 DB에 존재하는 취약점 바이너리 다운로드2. 취약점이 있는 바이너리를 가지고 가상의 해킹환경 구축3. 메타스플로잇 프레임워크를 통한 해킹 시연 1. 메타스플로잇 DB.. 더보기
리눅스 쉘코드(Shell Code)만들기 /* written by kaspy (kaspyx@gmail.com)*/ 버퍼 오버플로우나 포맷스트링버그 등의 취약점을 이용해서 해킹을 하는데이때 임의의 데이터를 입력할때, 쉘을 실행 시켜주는 루틴을 넣어주는데 이것이 바로 쉘코드입니다.그럼 이번 장에서는 쉘코드를 어떻게 만드는지 써보고자합니다.리눅스상에서는 쉘을 실행시켜주는 명령어 함수가 뭐가 있을까요??system(), execve(), execpl() 등등이 있는데 비교적 사용법이 단순한 execve() 함수로 작성을 해보겠습니다.아래와 같이 간단한 코딩을 해보겠습니다. ** 테스트한 환경은 32비트 우분투 리눅스 9.x 입니다.** 1. 쉘코드 프로그래밍 하기 void main(){ execve("/bin/sh",NULL,NULL);}// comp.. 더보기