본문 바로가기

Network Hacking

(23)
22일차] wireshark (arp spoof, arp security) 와이어샤크(Wireshark)는 자유 및 오픈 소스 패킷 분석 프로그램이다. 네트워크의 문제, 분석, 소프트웨어 및 통신 프로토콜개발, 교육에 쓰인다. 원래 이름은 Ethereal이었으나 2006년 5월에 상표 문제로 말미암아 와이어샤크로 이름을 바꾸었다.[위키백과] [실습] telnet과정 살펴보기. 1). NETWORK-V(10.10.10.20) 서버역할을 한다. 먼저 텔넷 서버를 다운받는다. 2). #> vi /etc/xinetd.d/telnet 다음 그림의 12번행을 yes -> no로 변경 해준다. 3). 원활한 실습을 위해 방화벽을 꺼준다. 4). #> vi /etc/securetty에 다음 그림의 빨간 박스 부분을 추가해준다. /etc/securetty는 Telnet 접속 시 root 접근 ..
21일차] 환경구성 1. vmware 환경구성 (1). NETWORK-A ( IP : 10.10.10.10 , MAC : 00:0C:29:AA:AA:AA ) # 설정을 적용하고 난 후 기존의 내용이 남아있기 때문에 다음 명령어를 통해서 갱신해준다. #>rm -f /etc/udev/rules.d/70-persistent-net.rules #>reboot (2). NETWORK-V ( IP : 10.10.10.20, MAC : 00:0C:29:BB:BB:BB ) # 설정을 적용하고 난 후 기존의 내용이 남아있기 때문에 다음 명령어를 통해서 갱신해준다. #>rm -f /etc/udev/rules.d/70-persistent-net.rules #>reboot (3). NETWORK-R ( IP : 10.10.10.2 , 100.1..
16~19일차] TCP 통신 raw_socket으로 직접 구현 및 테스트 # 위의 통신내용은 echo이다. 단순하게 클라이언트가 문자열(hello)을 보내면 그 문자열(hello)을 서버가 되돌려주는 통신내용이다. # 위의 사진은 sniffer을 통해 TCP 통신과정을 캡쳐한 것이다. sequence와 ack를 잘 보자. 바로 밑 그림은 flag가 나타내는 것이다. # 플래그의 각각의 뜻은 https://ko.wikipedia.org/wiki/%EC%A0%84%EC%86%A1_%EC%A0%9C%EC%96%B4_%ED%94%84%EB%A1%9C%ED%86%A0%EC%BD%9C 위키 백과를 참조하면 쉽게 이해할 수 있다. TCP 통신과정을 큰그림으로 본다면 다음과 같다. 1). 여기서 SEQ는 ISN(초기 시퀀스 넘버)라고하며 최초 서버에 의해 랜덤으로 설정된다. 1~42억 사이..
15일차] UDP 공격 기법, TCP Header 1. 포트 스캔 포트스캔은 UDP패킷을 이용해서 서버의 열린 포트를 파악하는 것이다. 예를들어, 서버에 847번의 포트가 열려있다고 가정하자. 그럼 다음 예문처럼 UDP패킷에 846번의 포트로 전달했을 경우 서버에서는 ICMP를 통해 에러메시지를 전달해 준다. 정상적은 847번의 포트로 패킷을 전달하면 아무 응답이 오지 않는다. 이 점을 이용해서 포트의 번호를 0 ~ 65535번까지이기 때문에 에러메시지를 통해서 열린 포트를 유추 할 수 있다. 하지만 응답이 안오는 이유가 여러 상황으로 있기 때문에 완벽하게 확인하는 것은 불가능하다. 하지만 이것을 통해 해킹의 중요 요소인 정보 수집이 가능하다. 1). raw_udp 2). sniffer을 통해 error massege를 확인 3). 잘못된 포트번호로 패..
13일차, 14일차] UDP Header Class 1. UDP Class 정의하기 2. UDP Packet 보내기 192.168.3.118의 서버에게 UDP패킷을 보낼 것이다. 서버의 PORT는 20000번이다. 4계층의 전송계층의 주소체계는 포트번호이니 잘 확인해야한다. 여기서 udp.chksum은 다른 체크섬과 다른 점이 있다. 바로 Pseudo Header( 의사 헤더 )로 checksum을 구하기 때문이다. ※ Pseudo Header( 의사 헤더 ) Pseudo Heaer는 Ip Header 와 Udp Header로부터 선택된 필드들로 구성된다. (그림 참고) Pseudo Header는 실제로 destination에 전송되지 않고 UDP Checksum계산을 보조하기 위해 논리적으로 구성된 것이다. 즉, 데이터가 목적지에 정확하게 도착했는지( ..
11일차] Macke Ip Header Class, Checksum Function, ICMP 1. Ip Header Class 1) class 만들기 Class를 만들 때 다른 헤더와 달리 ver과 len 그리고 flag와 offset은 비트단위로 값을 나눠 갖는다. 따라서 이 것을 처리해주는 것이 가장 큰 중요 포인트가 된다. 2) Class test 객체에 생성자를 넣고 값을 출력해본다. --- > 다시 객체를 만들고 setter를 통해 값을 넣어보고 get_header를 통해 나온 바이너리를 확인해 보자. 최초 생성자에 넣은 바이너리와 같으면 잘 되는 것이다. ! 2. Checksum Function Checksum을 구하는 방법은 다음과 같은 과정을 거친다. 1). Checksum 부분을 제외한 모든 헤더의 값을 더해준다. 2). Checksum은 2바이트를 넘어가면 안되기 때문에 2바이..
9,10 일차] Spoofing 스푸핑이란 ? 스푸핑의 사전적 의미는 '속이다'이다. 네트워크에서 스푸핑 대상은 MAC주소, IP주소, 포트 등 네트워크 통신과 관련된 모든 것이 될 수 있고, 스푸핑은 속임을 이용한 공격을 총칭한다. [위키 백과] 실습] A, B, C라는 컴퓨터가 있다. A(공격자)는 본인이 B인척 가장하여 C에게 MAC주소를 속여보낸다. 그럼 C는 ARP의 MAC주소에 A의 MAC주소가 저장된다. 그럼 C가 B에게 답장을 보낼때 MAC주소가 A것으로 되어있기 떄문에 A에게 전달된다. SNIFFER을 통해 확인해보자. 실습에서 A컴퓨터의 IP : 192.168.3.120 MAC : 00:0C:29:10:F9:13 B 컴퓨터의 IP : 192.168.3.118 MAC : 00:0C:29:10:F9:11 C 컴퓨터의 IP..
8일차] ARP Module + Sniffing 이 전시간에 ARP를 클래스로 정의하였다. 이 ARP가 실제로 MAC주소를 획득하는지 Sniffing을 통해 확인해 보자. # ethernet 브로드캐스팅에게 묻는다. 목적지의 MacAdr는 00으로 채워놓았다. 목적지의 정보는 다음 사진과 같다. #목적지의 정보 # 패킷 전체를 출력하면 너무 많은 패킷이 쏟아지기 때문에 목적지의 ip의 캣치해서 출력하고 있다. # 목적지의 답장은 opcode : 2를 보면되는데 위와같이 mac address를 가져오는 것을 확인 했다.