전체 글153 리버싱 7(수정 예정) [2024.08.19] local1이 30, local2가 501D가 29고 프로그램은 현재 실행 흐름을 중단하고0x404006 주소로 점프하여 그 위치에 있는 코드를 실행하게 된다 현재 코드에서 명령어를 조작하여 출력 값을 20으로 만드는 것을 연습한다 해당 부분을 JLE가 아닌 JG로 바꾸게 되어도 값이 20으로 출력된다 명령어 조작 후 출력된 값을 확인했을 때 20이라는 값이 나온 걸 확인할 수 있다 해당 부분에서 JLE가 아닌 JGE로 수정시켜도 값이 20으로 출력된다 위의 코드에서 CRACK을 진행하는데, 변경된 메모리 값과 코드를 드래그 후오른쪽 마우스를 클릭하고 Edit에서 Copy to executable을 선택한다 그렇게 되면 선택한 화면들이 나열되고 그 각각의 화면에서 .. 2024. 8. 19. 리눅스 마스터 18 [2024.08.18] [DNS Server] 01. DNS 레코드 > SOA: DNS 서버의 권한의 시작점> NS: DNS 서버 지정> A: 도메인과 IPv4를 매핑> AAAA: 도메인과 IPv6를 매핑> PTR: IP 주소를 도메인 이름으로 매핑> CNAME: 별칭> MX: 메일 서버 지정 > 정방향: 도메인 이름 -> IP 주소로 매핑> 역방향: IP 주소 -> 도메인 이름으로 매핑 실습 진행을 위해 기존 test, test2, test7을 제외하고 domain을 하나 더 생성한다host domain.co.kr을 했을 때 100번 서버가 나오며, ping도 정상적으로 돌아가게끔 하면 된다 이번에는 www 외에도 server2와 client1이 가능하게끔 설정하고,해당 별칭에 따르는 IP 주소도.. 2024. 8. 18. 리눅스 마스터 17 [2024.08.17] 리눅스 설치 후 필요한 환경 설정 시 다운로드받고 실행한다 dnf -y install gnome-tweaksdnf -y install gnome-extentiongnome-extentions-app & www는 호스트 네임, naver.com 도메인 네임 http://www.test.co.krtest.co.kr192.168.10.100MAC DNS 서버에는 test.co.kr과 192.168.10.100이 저장된다 01. 프로그램 설치 #dnf -y install bind* 02. 환경 설정 파일 > /etc/named.conf > /etc/named.rfc1912.zones > /var/named/test.co.kr.zone 먼저 etc 디렉터리의 na.. 2024. 8. 18. 리버싱 6 [2024.08.16] [C Code] [Assem Compile 32Bit] # nasm -f elf32 hello.asm -o hello.o# gcc -m32 -o hello hello.o #apt-get -y install gcc-multilib #apt-get -y install nasm dev c++ 프로그램에서 Hello World를 출력하는 소스 코드를 생성한다 ollydbg에서도 파일을 열어 Hello World가 나오는 것을 확인하고 Kali Linux로 넘어간다 hello.c라는 파일을 생성하고 화면과 같이 입력해 주고 저장한다 파일명을 hello.asm으로 변경시켜 주고 필요한 개발 도구를 설치시킨다 어셈블리어로 작성된 hello.asm 파일을 32비트ELF(Exec.. 2024. 8. 16. 리버싱 5 [2024.08.14] 지난 시간에 이어서 오늘도 복습 시간을 가져 본다F2를 눌러 블랙 포인트를 설정한다 블랙 포인트는 특정 명령어에 도달할 때 프로그램 실행을 중지하도록 설정하는 중단점이며,이를 통해 디버깅 시 원하는 위치에서 코드 실행을 멈추고 상태를 검사할 수 있다 F9 키를 누르면 프로그램 실행이 시작된다프로그램은 설정한 블랙 포인트까지 실행되고,해당 블랙 포인트에 도달하면 자동으로 멈추게 된다 *이 과정은 디버깅할 때 코드의 특정 지점까지 빠르게 이동하는 데 유용하다 그런 다음 F8로 실행해 주게 되면 EBP-C, 8, 4에 각각 값이 저장된다 현재 EAX와 EDX를 더하여 레지스터 값이 현재 2가 되었다 mov 명령어를 통해 3을 만들어 준다 과정을 다 거친 후 실행 파일을 보게.. 2024. 8. 14. 리버싱 4 [2024.08.13] [데이터 전송 명령어] 01. mov 02. add 메모리와 메모리끼리는 더하기가 불가하다 03. sub 오늘은 지난 시간에 이어 사칙연산을 연습해 보는 실습 시간을 가진다먼저 mov를 이용해 eax 레지스터에 10을 저장시키고 sub로 eax에서 5를 뺀다 10에서 5를 빼면 5라는 결과값이 나오기 때문에 eax 레지스터 값은 5가 된다 다시 5를 빼서 6이라는 숫자를 저장하게 되고 현재 상태에서 3을 두 번 빼서 eax 레지스터 값을 0으로 만든다 이번에는 eax에 10, ecx에 5, edx에 3이라는 값을 넣고,[402000]의 메모리 주소 헥사값을 5로 만든다 이미지에서 볼 수 있는 것처럼, 마지막 명령어 실행 이후 32비트의 음수 값으로 16진수 .. 2024. 8. 14. 이전 1 ··· 9 10 11 12 13 14 15 ··· 26 다음