Computer Language/System_Hacking
TRY!!!
Stack Buffer OverFlow ● Stack 영역에 OverFlow를 발생시켜 권한 상승을 취하는 방식으로, ● 할당된 버퍼보다 많은 데이터가 삽입되었을 때 인접 메모리를 덮어 쓰게 되는 취약점 ● 손상받는 데이터는 변수, 프로그램 흐름 제어다. 다음 과정 가운데 부분에서와 같이, 520byte 이후 ebp에 도달할 수 있다. 따라서 520byte+4byte(이전 EBP)+4byte(root권한 획득 코드) 와 같이 실행시킬 경우 권한을 획득할 수 있다. 따라서 반복되는 주소 가운데 성공할 확률이 높은 주소를 찾아 이를 공격 대상으로 정한다. 이는 nopsled 공격을 위해서 한국어 값으로 바꾼 것이다. /x90을 인지하기 위해서는 한국어 값으로 변경될 필요가 있다. 이와 같이 공격을 실행했을 ..
쉘코드(shellcode)란? ● 시스템의 특정 명령을 실행할 수 있는 작은 문자열의 집합. ● 즉, 쉘을 실행시키기 위한 기계어 코드. ● 소프트웨어 취약점을 이용하기 위한 내용부에 주로 사용된다. ● 대개 어셈블리어로 작성되며, 이를 기계어로 변환하여 사용한다. 익스플로잇(exploit)이란? ● 프로그램에 존재하는 취약점을 공격하는 행위 ● 대개 컴퓨터 혹은 서버 내 권한 획득 또는 서비스 거부 공격(DoS)가 목적이다. 페이로드(payload)란? ● 익스플로잇을 위해 프로그램에 입력되는 데이터 ● 해커의 명령을 수행하는 코드와 공격조건을 맞추기 위한 목적으로, ● 코드는 공격코드와 의미없는 값으로 구성 권한 상승을 위한 쉘코드 작성해보기 익스플로잇을 시도하기 위해, 리눅스 내 로컬 환경 상 동작..