네트워크 보안

정보수집

JNU 2022. 11. 7. 12:15
반응형

모의해킹을 위한 setting은 끝났다. 이제 해킹을 하기 위한 단계를 정리해보자

 


해킹 공격의 순서
1. 정보수집 -> 2. Hacking 공격 -> 3. 공격 전이 -> 4. 흔적 지우기
첫 번째로 수행할 단계는 정보수집 단계다. 정보수집에는 크게 두 가지 방식이 있다.

공격하는데 순서도 엄청 복잡한데, 단계별로 종류도 다양하다 (으.......)

아무튼 하나씩 파헤쳐보자!

 



 

1) 직접 수집: foot printing, social engineering, fishing
- foot printing: 발자국 찍기, 모든 단계를 하나씩 밟아가는 방식
- social engineering: 현대사회에서의 공격 기법. 산업스파이와 같이 인간의 약점을
이용하여 공격하는 방식이다. 제일 약한 연결인 인간관계를 노리는 것

조심하세요! 옆에 있는 분이 스파이일 수도 있어요!!(장난)
- fishing: 개인정보를 빼가는 방식, 주로 E-mail 송신 후 특정 사이트 접속을 유도한다.

2) Scanning: DNS scanning, network scanning, port scanning
DNS, network, port 정보들을 scan 하여 정보를 수집하는 방식
DNS는 도메인을 통한 IP 정보 수집,
network는 network 대역을 통한 IP 정보 수집,
Port는 service port를 통한 IP 정보 수집이다.



직접수집은 의외로 쉽게 할 수 있다는 점! 

밑에 명령어가 직접수집에 사용되는데 리눅스를 조금이라도 다뤄봤다면 아는 명령어들이다.
ex) ping, traceroute, netstat, ipconfig, ifconfig, nslookup, netdiscover

-ping: icmp packet을 보내 상대로부터 응답을 받을 수 있도록 하는 신호
상대측에서 응답이 오면 인터넷 연결이 성공하고 있음을 알 수 있다.
(ICMP reply <-> ICMP request)
이를 통해 자신의 인터넷 환경을 확인할 수 있고 상대방의 인터넷 환경이 열려있음을 또한 알 수 있다.

windows의 cmd창에서 ping명령으로 쉽게 알 수 있다.



-traceroute(linux), tracert(win): 송신자가 수신자를 향하여 가는 길을 추적하는 명령
ping의 route를 파악할 수 있다.
ping이 어느 route를 거쳐서 도착하게 되는지 파악할 수 있는 명령
ping을 추적할 때 용이하게 사용할 수 있다.

window cmd창에서 google까지 가는 경로를 보여준다.
linux에서 google로 가는 경로는 * 로 표시하여 경로를 보여주지 않는다.



-netstat: 네트워크 프로토콜 통계를 위한 네트워크 연결을 보여주는 명령 줄 도구
주로 netstat -antp | grep [LISTEN/ESTABLISHED/CLOSE-WAIT] 같이 쓰이며,
grep 명령으로 서비스의 상태를 기준으로 출력할 수 있다.

netstat -antp 명령으로 현재 system에서 작동하는 service 확인가능하다.

 

netstat명령을 grep 명령을 pipe로 연결하여 option처럼 사용할 수 있다.


<option>
개인적으로 사용하는 option 몇가지만 적어보았다.
-a : 현재 다른 PC와 연결(Established)되어 있거나 대기(Listening) 중인 모든 포트 번호 확인
-r : 라우팅 테이블 확인 및 연결된 포트번호를 확인
-n : 현재 다른 PC와 연결되어 있는 포트번호를 확인
-t : tcp protocol
-u : udp protocol
-p : 프로토콜 사용 PID 노출
(주로 antp 명령을 많이 사용한다.)


- ipconfig(linux)

- ifconfig(win) 

interface별 ip, network, netmask, mac 정보를 확인 가능한 명령어

eth0의 ip,netmask,mac,packet송수신정보 등 다양하게 확인가능하다.



-nslookup [domain name]
도메인 이름을 입력하여 해당 도메인의 IP주소를 알아낸다.

naver와 google의 도메인을 통해 ip 주소를 확인할 수 있다.


nslookup을 통해 naver와 google의 서버 IP 주소를 수집할 수 있다.
각 사이트별로 하나의 server만을 사용하지 않아서 여러 개의 IP주소가 나오니까 당황하지 말 것!
지역별로도 dns server의 IP주소가 다를 수 있다는 것도 알아두자.

server 하나로 모든 트래픽을 감당하기에는 부담이 되니까 분할하여 server를 관리하는 것임을 알아두자



-netdiscover
자신이 속한 network 대역에 연결된 IP들을 확인할 수 있다.

<option>
-i: 연결된 interface 이름 scan
netdiscover -i eth0: eth0 인터페이스의 network scan
-r: 지정된 network 범위 scan
netdiscover -r 192.168.10.0/24

현재 구동되는 CentOS의 ip인 192.168.10.100도 확인할 수 있다.

 

이 명령이 꽤 강력한게 만약에 내가 192.168.10.0/24 대역에 있는 상황에서 이 명령을 수행하면,

해당 대역에 있는 모든 host들의 정보를 수집할 수 있어......

그래서 카페나, 지하철의 보안성이 떨어지는 공용 와이파이 사용은 되도록 안하는게 좋겠지?

하나의 AP가 곧 하나의 네트워크 안에 같이 소속되었다는 뜻이니까



이처럼 정보수집은 system에서 사용하는 간단한 명령으로도 쉽게 가능하다.
이러한 정보들이 하나씩 쌓이면 공격하려고 하는 대상에 대해 분석할 수 있게 되고,
공격의 기반이 다져지는 것이다.
이제 다음 편에서는 scanning의 종류에 대해 알아보고 scanning에 사용하는 명령어를 알아보도록 하자!

반응형