네트워크 통신을 위한 넷캣(Netcat) 설치 및 사용법
네트워크 상에서 특정한 컴퓨터와와 통신하기 위한 유틸리티(Utility)로 넷캣(Netcat)을 사용할 수 있습니다. TCP/UDP 프로토콜을 이용하는 환경에서는 범용적으로 적용이 가능하다는 점에서 간단한 네트워크 통신을 위한 목적으로 간단히 사용할 수 있습니다. 줄여서 NC(Network Connection)라고도 부르며 해킹(Hacking)에 있어서도 이용범위가 넓다는 특징이 있습니다. 리눅스 운영체제에서는 Netcat을 사용하기 어렵지 않지만 윈도우(Windows) 운영체제를 사용하는 사람들은 별도의 소프트웨어를 설치해서 사용할 수 있답니다.
▶ Netcat 다운로드 사이트: https://eternallybored.org/misc/netcat/
사이트 접속 이후에는 위와 같이 netcat 1.12 버전을 다운로드하여 윈도우에서 사용할 수 있습니다.
다운로드 이후에는 압축을 풀어줍니다. 저는 위와 같이 C 드라이브에 압축을 풀어주었습니다.
이후에 제어판 -> 시스템 -> 고급 시스템 설정 -> '환경 변수'로 들어가서 우리가 방금 다운로드 해 준 Netcat 유틸리티를 커맨드 라인에서 사용할 수 있도록 변수 설정을 해주도록 하겠습니다.
시스템 변수 -> 'Path'에서 사용할 유틸리티의 경로를 설정해 줄 수 있습니다. 여기에서 새롭게 자신이 압축을 푼 Netcat 폴더의 위치를 넣어주시면 됩니다. 이후에 명령 프롬프트(CMD)에서 Netcat 유틸리티를 사용하실 수 있습니다.
1. 서버 열기 및 접속하기
서버를 열 때는 nc -l 명령어를 사용합니다. l(Listen)은 단순한 채팅 서버와 같은 역할을 수행합니다. 클라이언트에서 접속할 때는 호스트 주소와 포트 번호를 공백으로 구분하여 이어서 작성하면 됩니다.
일반적으로 다음과 같이 해킹 문제풀이 서버에 접속하면 서버에서 미리 준비된 메시지를 출력하고, 사용자와 상호작용을 하는 식입니다.
Netcat은 말 그대로 네트워크 통신 도구이므로 다음과 같이 웹 사이트에 접속할 수도 있습니다. 다음 사진은 제 개인 웹 사이트에 접속하여 요청(Request) 패킷을 Netcat 유틸리티 상에서 전송해 본 것입니다. 서버에서 성공적으로 응답(Response) 패킷이 날아온 것을 알 수 있습니다.
'해킹 방어 대회(CTF)' 카테고리의 다른 글
[해킹 대회 문제] pwnable.kr - lotto 문제풀이(Write Up) (2) | 2018.07.14 |
---|---|
[해킹 대회 문제] pwnable.kr - coin1 문제풀이(Write Up) (0) | 2018.07.14 |
자바(Java)를 이용해 Netcat 없이 문제풀이 서버와 통신하기 (0) | 2018.07.14 |
해킹 방어 대회(CTF)를 위한 기본적인 도구 알아보기 (2) | 2018.07.14 |
해킹 방어 대회(CTF) 소개 및 공부하는 방법 (3) | 2018.07.03 |