본문 바로가기

분류 전체보기137

[Toddler's Bottle] input 문제풀이 오늘의 문제는 뭔소린지 잘 모르겠으니 우선 문제에 접속해보자! 문제에 접속하고 나서, ls 명령을 사용해 디렉터리 안에 어떤 파일들이 있는지 확인해봤다. input.c 파일을 확인해보자! cat 명령을 이용해 input.c 의 내용을 확인해보았다. 지금까지 봤던 문제 중 가장 긴 main함수 인 것 같다...;; 우선 main함수의 첫부분에서 printf문으로 옳은 input을 입력하면, 플래그를 얻을 수 있다는 내용을 출력하고 있다. 각 주석처리 된 부분의 if문들을 통과하고 나면 stage1~5까지를 clear할 수 있다. stage 1~5를 통과해야지만, 마지막의 system("/bin/cat flag")명령을 실행해 flag를 얻을 수 있다. Stage1의 조건(argv)를 확인해보자! 첫번째 i.. 2021. 4. 7.
[Toddler's Bottle] random 문제풀이 오늘의 문제는 random value와 관련되는 것 같다. ssh random@pwnable.kr -pppp(pwd: guest)로 접속을 해준다. cat 명령을 사용해서 random.c 파일의 내용을 확인해보았다. unsigned int random; random=rand(); 랜덤함수를 사용해 만들어진 랜덤값(random value)를 unsigned int 변수 random에 넣어주고 있다. unsigned int key=0; scanf("%d", &key); unsigned int 변수 key에는 scanf를 통해 입력값을 받는다. if(key ^ random) == 0xdeadbeef){ printf("Good!\n"); system("/bin/cat flag"); return 0; } 이렇게 .. 2021. 4. 5.
4. 전송계층의 헤더 기능 UDP 헤더와 TCP 헤더의 기능을 공부해보자! UDP 헤더 UDP 헤더의 크기는 8byte로 고정이며, 버퍼링과 단편화 기능이 없어 단순하다. 출발지 포트 번호 항목과 목적지 포트 번호 항목은 16비트 크기이며, 이는 응용 계층에 속하는 프로토콜의 종류가 65536(2^16)개인 이유가 된다. 길이(Length) 항목에는 UDP 페이로드와 UDP 헤더를 더한 데이터그램 크기 정보가 담긴다. 오류 검사(Checksum) 항목은 기본적으로 비활성 상태다. TCP 헤더 TCP 헤더는 버퍼링(Buffering)과 단편화(Fragmentation) 기능을 수행하므로, UDP 헤더보다 조금 더 복잡하다. UDP 헤더의 크기는 고정적이지만, TCP 헤더는 가변적이다. 일반적으로 20 바이트 크기를 사용하지만, 경우.. 2021. 4. 5.
3. 네트워크 계층에서의 주요 공격 유형 네트워크 계층에서는 랜드공격, 티얼드롭공격, ICMP 플러딩 공격, ICMP 스머핑 공격 등이 있다. ' 랜드(LAND) 공격 랜드 공격은 IP 스푸핑 공격을 변형한 기법이다. 이때 IP 스푸핑(IP Spoofing) 공격이란 출발지 IP 주소를 조작해 자신을 은폐하는 공격을 의미한다. 랜드 공격의 과정 1. 출발지 IP 주소를 목적지 IP 주소와 동일하게 설정한 뒤 ICMP 요청 패킷을 공격 대상자에게 전송한다. 2. 그러면 공격 대상자는 ICMP 응답 패킷을 전송하기 위해 출발지 IP 주소를 참조하는데, 이 경우 출발지와 목적지 IP 주소가 동일하기 때문에 ICMP 응답 패킷을 자신(공격 대상자)에게 보내게 된다. 3. 네트워크 계층의 플러딩 공격을 하게 된다. ※플러딩(Flooding): 공격 대상.. 2021. 4. 5.
2. 네트워크 계층의 헤더 기능 보안 장비 운영과 관련해 IP 헤더 구조는 TCP 헤더 구조와 더불어 중요하게 간주하는 헤더이다. IP 헤더 버전(Version) 항목은 IPv4 주소라면 4가 들어가고, IPv6 주소라면 6이 들어간다. 헤더 길이(Header Length) 항목에는 IP 헤더의 크기가 들어간다. 일반적으로 20byte를 사용한다. Type of Service(ToS) 항목에는 해당 패킷의 전송 우선 순위를 저장한다. 즉, ToS 기능을 지정하면 회선이 혼잡할 경우에도 해당 패킷을 우선적으로 전송해준다. 전체 길이(Total Length) 항목에는 IP 헤더를 포함한 패킷 전체의 길이 정보가 담긴다. ID(Identification) 항목과 플래그(Flag) 항목, 그리고 플래그먼트 오프셋(Fragment Offset).. 2021. 4. 5.
1. 실습 환경 구축 VMware Workstation 15.5 Pro 버전의 가상머신을 사용했다. 두 개의 운영체제가 필요한데, 내용은 아래와 같다. 구분(명칭) 운영체제(OS) IP 주소 대체 운영체제 공격 대상자 우분투 (Ubuntu 64bit) 192.168.24.128 데비안, 주분투 공격자 칼리 리눅스(Kali Linux 2019.1) 192.168.198.128 백박스(BackBox) ip 주소는 ifconfig 명령어를 통해 확인할 수 있다. 공격대상자와 공격자의 ip주소를 확인해두자! 공격대상자와 공격자 모두 루트 계정을 이용하기 때문에 루트 계정을 활성 상태로 전환할 필요가 있다. passwd 명령어를 이용해 root의 비밀번호를 설정해주고, su 명령을 이용해 root 계정으로 잘 전환되는지 확인한다. 이.. 2021. 4. 5.