이 도구의 이름은 좀 이쁘다?
유니콘이라니,,
여튼, 이 도구에 대한 개요는 칼리리눅스 홈페이지(https://www.kali.org/tools/unicornscan/)에서
확인할 수 있으며,
대략적으로 네트워크 수집 도구의 한 종류로서,
IP 대역대에 속한 호스트 확인 및 각 호스트의 포트 오픈 여부를 확인 가능한 도구이다.
이 도구의 몇 가지 주요 특징으로,
- 비동기식 stateless TCP 스캔 - 비동기식 stateless TCP 배너 수집 - 비동기식 UDP 스캔 - 수동적 및 능동적 원격 OS, 응용프로그램 그리고 컴포넌트 식별 - PCAP 파일 로깅 및 필터링 - 관계형 DB 출력 - 개별 모듈 지원 - 개별 data-set 뷰 |
등으로 설명되고 있다.
또한 이 도구는 옵션들이 너무너무나 많다.
옵션의 적절한 사용으로 원하는 형태의 정보수집을 해야한다.
기본적인 사용 형태는 unicornscan -h 를 입력하여 확인할 수 있다.
보다시피 옵션을 줄 수 있는 형태가 아주 다양하다.
unicornscan [options `b:B:cd:De:EFG:hHi:Ij:l:L:m:M:o:p:P:q:Qr:R:s:St:T:u:Uw:W:vVzZ:' ] X.X.X.X/YY:S-E
-b, --broken-crc *set broken crc sums on [T]ransport layer, [N]etwork layer, or both[TN] -B, --source-port *set source port? or whatever the scan module expects as a number -c, --proc-duplicates process duplicate replies -d, --delay-type *set delay type (numeric value, valid options are `1:tsc 2:gtod 3:sleep') -D, --no-defpayload no default Payload, only probe known protocols -e, --enable-module *enable modules listed as arguments (output and report currently) -E, --proc-errors for processing `non-open' responses (icmp errors, tcp rsts...) -F, --try-frags -G, --payload-group *payload group (numeric) for tcp/udp type payload selection (default all) -h, --help help -H, --do-dns resolve hostnames during the reporting phase -i, --interface *interface name, like eth0 or fxp1, not normally required -I, --immediate immediate mode, display things as we find them -j, --ignore-seq *ignore `A'll, 'R'eset sequence numbers for tcp header validation -l, --logfile *write to this file not my terminal -L, --packet-timeout *wait this long for packets to come back (default 7 secs) -m, --mode *scan mode, tcp (syn) scan is default, U for udp T for tcp `sf' for tcp connect scan and A for arp for -mT you can also specify tcp flags following the T like -mTsFpU for example that would send tcp syn packets with (NO Syn|FIN|NO Push|URG) -M, --module-dir *directory modules are found at (defaults to /usr/lib/unicornscan/modules) -o, --format *format of what to display for replies, see man page for format specification -p, --ports global ports to scan, if not specified in target options -P, --pcap-filter *extra pcap filter string for reciever -q, --covertness *covertness value from 0 to 255 -Q, --quiet dont use output to screen, its going somewhere else (a database say...) -r, --pps *packets per second (total, not per host, and as you go higher it gets less accurate) -R, --repeats *repeat packet scan N times -s, --source-addr *source address for packets `r' for random -S, --no-shuffle do not shuffle ports -t, --ip-ttl *set TTL on sent packets as in 62 or 6-16 or r64-128 -T, --ip-tos *set TOS on sent packets -u, --debug *debug mask -U, --no-openclosed dont say open or closed -w, --safefile *write pcap file of recieved packets -W, --fingerprint *OS fingerprint 0=cisco(def) 1=openbsd 2=WindowsXP 3=p0fsendsyn 4=FreeBSD 5=nmap 6=linux 7:strangetcp -v, --verbose verbose (each time more verbose so -vvvvv is really verbose) -V, --version display version -z, --sniff sniff alike -Z, --drone-str *drone String *: options with `*' require an argument following them |
먼저, 간단하게 사용해 보자면
unicornscan -m U -Iv 192.168.0.0/24:1-10000
이렇게 입력한다.
그런데, 이렇게 사용을 하면 시간이 2시간 22분 이상 소요 될 것이라고 한다.
왜냐하면 pps(packet per seconds)가 300이 기본이기 때문이다.
따라서, pps를 조절할 수 있는데, 옵션에 -r 을 사용한다.
unicornscan -r 100000 -m U -Iv 192.168.0.0/24:1-10000
그러면, 32초 이상 소요될 것이라고 나온다. 시간이 확 줄었다.
그런데, 이것도 사실은 아니다. 기대값이 32초지 IP 대역설정이나 원하는 서비스 검색 대역이 크면 클수록
저 시간대로 결과값을 볼 수 있는 것이 아니다.
따라서, 시간과 자원의 배분을 잘하여 옵션을 주어햐 한다는 것이다.
예를들어, unicornscan -r 100000 -m U -Iv 192.168.0.0/24:53 이런식으로 말이다.
시간에 구속받지 않는 환경이라면 얼마든지 큰 값을 넣어서 사용하면 되겠지만 말이다.
또 하나,
주의해야 할 것은 내가 원하는 IP 대역에서 53번 포트가 열려 있는지 보기 위함인데,
중간에 다른 대역이 함께 보인다.
본 도구를 사용하는 동안 firefox를 잠시 실행했더니 이렇게 결과가 보였던 것이다.
기본적으로 내 네트워크 인터페이스를 이용하기 때문에,
도구가 실행되는 동안 다른 패킷이 끼어들면 함께 수집이 되는 점도 있으니 주의해야 한다.
여튼 위와 같이 사용한다면,
내가 검색하고자 하는 IP대역에서 53번 포트가 열려있는 IP를 확인할 수 있다.
unicornscan이 설치되어 있지 않다면,
sudo apt install unicornscan
이렇게 입력하여 설치하면 되겠다.
내가 확인하고자 하는 IP 대역에서 호스트의 정보와 그 호스트들이 사용하는 서비스 확인 방법, 확인 할 수 있는 도구 unicornscan 이었다.
강력하지만, 적절한 옵션 사용으로 최적의 결과를 만들 수 있어야 한다.
'===취미 세상 : 공부=== > 칼리리눅스' 카테고리의 다른 글
[정보수집] NMAP (0) | 2022.11.26 |
---|---|
[정보수집] scapy (0) | 2022.11.25 |
[정보수집] netenum (0) | 2022.11.14 |
[정보수집] protos (0) | 2022.11.13 |
[정보수집] hping3 (0) | 2022.11.06 |