wifi가 보내는 beacon frame 패킷 분석
이 글은 2019 code gate에서 체험 부스를 보고, 그와 관련된 정보를 찾아 정리한 글이다.
우리는 스마트 폰이나 노트북으로 인터넷을 하기 위해 WIFI를 찾는다.
그런데 우리 주변에 WIFI의 존재와 WIFI의 이름, 신호세기 등을 어떻게 아는 것인가?
Beacon Frame
Beacon Frame은 무선 네트워크 속에서 자신을 알리고, 무선 네트워크에 참여 할 수 있도록 broadcast로 주기적으로 전송하는 패킷이다.
이러한 패킷 때문에 우리는 장비들을 통해 주변의 WIFI의 존재 유무를 알 수 있게 된다.
Beacon frame 패킷안에는 AP의 SSID, Channel, 암호화, 전송률 등이 포함되어 있다.
여기서 AP는 WIFI와 같다고 생각하면 되고, SSID는 SubSystem Identification으로 WIFI의 이름을 나타낸다.
802.11 Beacon Frame Capture
Beacon Frame 패킷을 capture 하기 위해서는 다음과 같은 과정이 필요하다.
- Npcap 설치
https://nmap.org/download.html 에 들어가서 windows 용 npcap 을 설치한다.
위 파일을 다운 받은 뒤 실행하면 아래와 같은 화면이 나올건데, 이때 추가적으로 3가지의 체크 박스를 추가한다.
- monitor mode 지원 여부
1 |
netsh wlan show wirelesscapabilities |
위 명령어를 cmd 창에서 입력한뒤,
해당 무선 랜 카드가 ‘네트워크 모니터 모드’ 를 지원하지 않는다면 패킷을 분석 할 수가 없다.
필자는 iptime N150UA 모델을 이용하여 실습을 진행했다.
아래 무선 랜 카드를 이용해서 아까와 같은 명령어를 입력한뒤 확인을 해보면
아래 사진처럼 모니터 모드가 지원 되는 것을 확인했다.
- wireshark를 이용한 패킷 분석
https://www.wireshark.org/download.html 에서 wireshark를 다운받고, 관리자 모드로 실행을 하게 되면 아래와 같은 네트워크 인터페이스가 나온다.
필자는 iptime N150UA 외장 무선 랜 카드를 사용했기 때문에 WI-FI 2 네트워크 인터페이스를 선택했다. 아마 이 부분은 PC 마다 다를 것으로 예상이 된다.
(아마 관리자 모드로 wireshark를 실행하면 WIFI가 끊어지는 현상이 발생한다. 외장 무선 랜 카드와 wireshark 간에 충돌이 있어서 그런거 같은데, 만약 WIFI가 끊어진다면 그냥 다시 연결하면 문제 없이 실습이 가능하다.)
아래 사진처럼 802.11 protocol을 이용해 broadcast로 beacon frame 패킷을 보내는 것을 확인 할 수 있다.
실제로 엄청나게 많은 beacon frame 패킷이 많이 잡히는 것을 확인 할 수 있었다.
맨 첫번째 패킷을 분석하면 다음과 같다.
Beacon frame 패킷 안에는 아래 사진처럼 SSID와 channel 이 보인다. 이것 말고도 여러가지 정보를 알 수 있다.
이렇게 Beacon frame 에 대해 알아보았다.
'🔒Security' 카테고리의 다른 글
[php] - strcmp를 이용한 취약한 인증절차 (0) | 2019.04.12 |
---|---|
[php] - register_globals on 취약점 (2) | 2019.04.11 |
python을 이용한 beacon flooding attack (0) | 2019.04.06 |
[Network] – tcp 연결 분석 (0) | 2019.04.06 |
[System] – 리눅스 백쿼터 (back quote) with curl (0) | 2019.04.06 |
댓글
이 글 공유하기
다른 글
-
[php] - register_globals on 취약점
[php] - register_globals on 취약점
2019.04.11 -
python을 이용한 beacon flooding attack
python을 이용한 beacon flooding attack
2019.04.06 -
[Network] – tcp 연결 분석
[Network] – tcp 연결 분석
2019.04.06 -
[System] – 리눅스 백쿼터 (back quote) with curl
[System] – 리눅스 백쿼터 (back quote) with curl
2019.04.06