ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [CCIT] 8/12 정리
    Network hacking training/Knowledge 2018. 8. 18. 00:32
    지하철에서 패킷을 잡다보면 wireshark가 죽는 경우가 종종 발생한다.
    이유는 network manager가 어댑터를 계속 잡고 있기 때문이다.

    해결 방법은 다음과 같다.

    ~$ airmon-ng check kill
    ~$ wpa_supplicant -iwlan0 -c<(wpa_passphrase myap mypassword) -B
    ~$ dhclient wlan0

    or .conf file 수정

    [keyfile] unmanaged-devices=mac:00:11:22:33:44:55

    /etc/NetworkManager/NetworkManager.conf 파일을 위와 같이 수정하면 된다.
    mac address는 해당 어댑터의 mac address를 적으면 되고 수정했다면 네트워크 서비스를 restart 해주면 된다.

    두번째로 불편했던 점이 ubuntu에서 wireless interface 이름이 너무 길었던 것인데
    다음과 같이 하면 해결이 가능하다.

    ⚡ root@ubuntu  ~  cd /etc/udev/rules.d
    ⚡ root@ubuntu  /etc/udev/rules.d  vi 10-network.rules

    먼저 /etc/udev/rules.d 디렉토리로 이동한 후 vi 에디터를 이용하여 파일 하나를 만들어준다.

    SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="aa:bb:cc:dd:ee:ff", NAME="wlan0"

    해당 파일에 위의 내용을 적고 재시작해주면 된다. (네트워크 서비스 restart 말고 reboot로 다시 시작을 해줘야 한다.)

    혹은

    ⚡ root@ubuntu  ~  ifconfig [old interface name] down
    ⚡ root@ubuntu  ~  ip link set [old name] name [new name]
    ⚡ root@ubuntu  ~  ifconfig [new interface name] up

    이렇게 네트워크 인터페이스를 죽여놓고 ip link set 으로 새로운 이름을 지정해주면 된다고 한다.
    참고로 이 방법은 직접해보지 않았다.ㅎ


    과제 : airodump-ng 구현

    802.11 type subtype 구글링해서 공부

    radiotap -> Network byte ordering이 아님. Host byte ordering임(그냥 두면 될듯)
    beacon -> AP가 주기적으로 존재 정보를 broadcast로 보냄

    type subtype 이 beacon(0008)인것들을 출력 -> 0008 다음에 beacon 헤더가 온다.

    [중요!]
    Channel 정보를 출력하는 것이 중요하다.

    data -> beacon 안에 없기 때문에 C++의 str을 써서 출력해야한다.
    pwr -> radiotap header에 있다. (계속 바뀜)
    CIPHER -> 암호화 방식을 의미한다.

    암호화 방식에는 WEP, WPA, WPA2가 있고 WPA3가 나올 예정이라고 한다.
    • open : 암호화가 안걸려있다.
    • WEP : 최초의 암호, 크랙이 쉽다.
    • WPA, WPA enterprise
    • WPA2, WPA2 enterprise
    • WPA3 : WPA2의 bruteforce 공격을 막기 위해 탄생 / 아직 제품이 나오지 않았다.

    여기서 enterprise는 ID, PW 모두를 받고 enterprise가 아닌 암호화 방식은 PW만 받는다.
    참고로 enterprise는 radius server(ID, PW관리 서버)와 통신을 한다.
    이에 대한 정보는 beacon에 있기 때문에 구분할 수 있다.

    enterprise 환경을 구성하기 위해서는 먼저 ID와 PW를 관리하는 서버인 radius server를 구축하고 공유기 설정을 바꿔주면 된다.

    PWR을 알아내는 사이트 : https://www.radiotap.org/
    위 사이트는 C언어 structure 를 제공해주기 때문에 radiotap을 파싱할 때 유용하다.

    hidden ssid?
    -> hidden ssid란 말 그대로 ssid를 숨기는 것을 의미한다.
    이 hidden ssid는 beacon을 쏘지 않기 때문에 보안에 살짝 유리해 보이지만 monitor mode로 패킷을 잡으면 다 잡힌다.
    sniffing은 된다는 얘기다.

    그렇다면 어떻게 우리는 존재 정보인 beacon을 쏘지 않는 AP에 연결을 할까?
    -> 이는 Station와 AP간의 prob request, prob response를 주고받기 때문에 가능하다.
    일반적으로 스마트폰은 prob request를 보내게 되는데 AP가 이에 대해 응답을 해주는 것이다.

    beacon flooding : 실제 유효한 beacon을 못 보게 하는 공격 (사소한 공격이다.)
    dummy interface 802 만들어서 해보면 디버깅이 쉽다. (gilgil.net에 있음)

    반응형

    'Network hacking training > Knowledge' 카테고리의 다른 글

    ip_change 구현하면서 정리  (0) 2018.10.01
    tcp_data_change 구현하면서 정리  (0) 2018.09.27
    airodump 구현하면서 정리  (0) 2018.09.06
Designed by Tistory.