カスタム検索
このエントリーをはてなブックマークに追加
tomo.gif (1144 ツバツイツト)line.gif (927 ツバツイツト)line.gif (927 ツバツイツト)line.gif (927 ツバツイツト)To previous pageTo home pageMailing to me

hpingの話題と実験

Modified: 4 January 2005, 25 January 2004


hpingのダウンロードからインストール (23 January 2004)
hpingの使い方 (23 January 2004)
コマンドの表 (23 January 2004)

hpingの小技

SELinuxでhpingを使う方法 (4 January 2005)


 コマンドの表

基本オプション

-v バージョンを表示する
-c パケットの送信回数を指定する
-i パケットを送り出す間隔を指定する
-n ホスト名を逆引きしないようにする
-I ネットワークインターフェースを指定する
-V 詳細なメッセージを表示する


プロトコルの指定

-1 ICMPのパケット
-2 UDPのパケット


IPヘッダーにの指定

-a 送信元のIPアドレスを指定する
-t TTLを指定する


ICMPの
オプション

--icmptype  ICMPのタイプを指定する
--icmpcode ICMPのコードを指定する


TCPとUDPの
オプション

-s 送信元のポートを指定する
-keep 送信元のポートを固定する
-p 送信先のポートを指定する
-F FINフラグをONにしたパケット
-S SYNフラグをONにしたパケット
-R RSTフラグをONにしたパケット
-P PSHフラグをONにしたパケット
-A ACKフラグをONにしたパケット
-U URGフラグをONにしたパケット
-d パケットのデータサイズを指定する

 hpingのダウンロードからインストール

hpingのダウンロード

以下がhpingの本家のページです。
http://www.hping.org/index.html


Makeとインストール

$ tar zxvf hping2.0.0-rc2.tar.gz
hping2-rc2/
hping2-rc2/CVS/
hping2-rc2/CVS/Root
hping2-rc2/CVS/Repository
hping2-rc2/CVS/Entries
hping2-rc2/KNOWN-BUGS
hping2-rc2/BUGS
hping2-rc2/CHANGES
hping2-rc2/NEWS
hping2-rc2/INSTALL
hping2-rc2/docs/
hping2-rc2/docs/CVS/
hping2-rc2/docs/CVS/Root
hping2-rc2/docs/CVS/Repository
hping2-rc2/docs/CVS/Entries
hping2-rc2/docs/french/
hping2-rc2/docs/french/AS-BACKDOOR
hping2-rc2/docs/french/HPING2-HOWTO.txt
hping2-rc2/docs/french/HPING2-IS-OPEN
hping2-rc2/docs/french/MORE-FUN-WITH-IPID
hping2-rc2/docs/french/Makefile
hping2-rc2/docs/french/SPOOFED_SCAN.txt
hping2-rc2/docs/french/hping2-fr.8
hping2-rc2/docs/french/hping2-fr.8.txt
hping2-rc2/docs/french/CVS/
hping2-rc2/docs/french/CVS/Root
hping2-rc2/docs/french/CVS/Repository
hping2-rc2/docs/french/CVS/Entries
hping2-rc2/docs/french/CVS/CVS/
hping2-rc2/docs/french/CVS/CVS/Root
hping2-rc2/docs/french/CVS/CVS/Repository
hping2-rc2/docs/french/CVS/CVS/Entries
hping2-rc2/docs/french/INSTALL
hping2-rc2/docs/french/NEWS
hping2-rc2/docs/AS-BACKDOOR
hping2-rc2/docs/HPING2-HOWTO.txt
hping2-rc2/docs/HPING2-IS-OPEN
hping2-rc2/docs/MORE-FUN-WITH-IPID
hping2-rc2/docs/SPOOFED_SCAN.txt
hping2-rc2/docs/hping2.8
hping2-rc2/Makefile.in
hping2-rc2/AUTHORS
hping2-rc2/README
hping2-rc2/TODO
hping2-rc2/binding.c
hping2-rc2/byteorder.c
hping2-rc2/cksum.c
hping2-rc2/configure
hping2-rc2/datafiller.c
hping2-rc2/datahandler.c
hping2-rc2/display_ipopt.c
hping2-rc2/gethostname.c
hping2-rc2/getifname.c
hping2-rc2/getlhs.c
hping2-rc2/getusec.c
hping2-rc2/globals.h
hping2-rc2/hcmp.h
hping2-rc2/hping2.h
hping2-rc2/if_promisc.c
hping2-rc2/ip_opt_build.c
hping2-rc2/libpcap_stuff.c
hping2-rc2/linux_sockpacket.c
hping2-rc2/listen.c
hping2-rc2/logicmp.c
hping2-rc2/main.c
hping2-rc2/memlock.c
hping2-rc2/memlockall.c
hping2-rc2/memstr.c
hping2-rc2/memunlock.c
hping2-rc2/memunlockall.c
hping2-rc2/opensockraw.c
hping2-rc2/parseoptions.c
hping2-rc2/release.h
hping2-rc2/relid.c
hping2-rc2/resolve.c
hping2-rc2/rtt.c
hping2-rc2/sendhcmp.c
hping2-rc2/sendicmp.c
hping2-rc2/sendip.c
hping2-rc2/sendip_handler.c
hping2-rc2/sendrawip.c
hping2-rc2/sendtcp.c
hping2-rc2/sendudp.c
hping2-rc2/sockopt.c
hping2-rc2/statistics.c
hping2-rc2/usage.c
hping2-rc2/version.c
hping2-rc2/waitpacket.c
hping2-rc2/utils/
hping2-rc2/utils/CVS/
hping2-rc2/utils/CVS/Root
hping2-rc2/utils/CVS/Repository
hping2-rc2/utils/CVS/Entries
hping2-rc2/utils/Makefile
hping2-rc2/utils/README.HEX2BIN
hping2-rc2/utils/hex2bin.c
hping2-rc2/getifname.c.orig
hping2-rc2/COPYING
hping2-rc2/signal.c
hping2-rc2/send.c
hping2-rc2/parseoptions.c.orig
hping2-rc2/antigetopt.c
hping2-rc2/antigetopt.h
hping2-rc2/strlcpy.c
$ cd hping2-rc2/
$ ./configure

build byteorder.c...
create byteorder.h...
--------------------------------------
system type: LINUX

FORCE_LIBPCAP:
LIBPCAP :
PCAP_INCLUDE :
MANPATH : /usr/local/man

(to modify try configure --help)
--------------------------------------
creating Makefile...
now you can try `make'
$ make
gcc -c -O2 -Wall -g main.c
gcc -c -O2 -Wall -g getifname.c
getifname.c: In function `get_if_name':
getifname.c:137: warning: implicit declaration of function `exit'
gcc -c -O2 -Wall -g getlhs.c
gcc -c -O2 -Wall -g linux_sockpacket.c
gcc -c -O2 -Wall -g parseoptions.c
gcc -c -O2 -Wall -g datafiller.c
datafiller.c: In function `datafiller':
datafiller.c:67: warning: implicit declaration of function `exit'
gcc -c -O2 -Wall -g datahandler.c
gcc -c -O2 -Wall -g gethostname.c
gcc -c -O2 -Wall -g binding.c
gcc -c -O2 -Wall -g getusec.c
gcc -c -O2 -Wall -g opensockraw.c
gcc -c -O2 -Wall -g logicmp.c
gcc -c -O2 -Wall -g waitpacket.c
waitpacket.c: In function `wait_packet':
waitpacket.c:46: warning: implicit declaration of function `exit'
gcc -c -O2 -Wall -g resolve.c
resolve.c: In function `resolve':
resolve.c:37: warning: implicit declaration of function `exit'
gcc -c -O2 -Wall -g sendip.c
gcc -c -O2 -Wall -g sendicmp.c
gcc -c -O2 -Wall -g sendudp.c
gcc -c -O2 -Wall -g sendtcp.c
gcc -c -O2 -Wall -g cksum.c
gcc -c -O2 -Wall -g statistics.c
statistics.c: In function `print_statistics':
statistics.c:46: warning: implicit declaration of function `exit'
gcc -c -O2 -Wall -g usage.c
usage.c: In function `show_usage':
usage.c:94: warning: implicit declaration of function `exit'
gcc -c -O2 -Wall -g version.c
version.c: In function `show_version':
version.c:24: warning: implicit declaration of function `exit'
gcc -c -O2 -Wall -g antigetopt.c
gcc -c -O2 -Wall -g sockopt.c
gcc -c -O2 -Wall -g listen.c
listen.c: In function `listenmain':
listen.c:39: warning: implicit declaration of function `exit'
gcc -c -O2 -Wall -g sendhcmp.c
gcc -c -O2 -Wall -g memstr.c
gcc -c -O2 -Wall -g rtt.c
gcc -c -O2 -Wall -g relid.c
gcc -c -O2 -Wall -g sendip_handler.c
gcc -c -O2 -Wall -g libpcap_stuff.c
gcc -c -O2 -Wall -g memlockall.c
gcc -c -O2 -Wall -g memunlockall.c
gcc -c -O2 -Wall -g memlock.c
gcc -c -O2 -Wall -g memunlock.c
gcc -c -O2 -Wall -g ip_opt_build.c
gcc -c -O2 -Wall -g display_ipopt.c
gcc -c -O2 -Wall -g sendrawip.c
gcc -c -O2 -Wall -g signal.c
gcc -c -O2 -Wall -g send.c
gcc -c -O2 -Wall -g strlcpy.c
gcc -o hping2 -O2 -Wall -g main.o getifname.o getlhs.o linux_sockpacket.o parse
options.o datafiller.o datahandler.o gethostname.o binding.o getusec.o opensockr
aw.o logicmp.o waitpacket.o resolve.o sendip.o sendicmp.o sendudp.o sendtcp.o ck
sum.o statistics.o usage.o version.o antigetopt.o sockopt.o listen.o sendhcmp.o
memstr.o rtt.o relid.o sendip_handler.o libpcap_stuff.o memlockall.o memunlockal
l.o memlock.o memunlock.o ip_opt_build.o display_ipopt.o sendrawip.o signal.o se
nd.o strlcpy.o

./hping2 -v
hping version 2.0.0 release candidate 2 (Wed Aug 15 02:59:30 CEST 2001)
linux sockpacket based binary
use `make strip' to strip hping2 binary
use `make install' to install hping2
$ su
Password: *******
# make install

cp -f hping2 /usr/sbin/
chmod 755 /usr/sbin/hping2
ln -sf /usr/sbin/hping2 /usr/sbin/hping
@@@@@@ WARNING @@@@@@
Can't install the man page: /usr/local/man/man8 does not exist
#


パーミッションの設定

# chown root:root /usr/sbin/hping2
# chmod 4750 /usr/sbin/hping2

 hpingの使い方

ポート80を調べる

以下のとおりの応答("flags=SA")がありますので、ポート80は開いています。

# hping -S -p 80 218.228.197.201
HPING 218.228.197.201 (eth0 218.228.197.201): S set, 40 headers + 0 data bytes
len=46 ip=218.228.197.201 ttl=61 id=0 sport=80 flags=SA seq=0 win=5840 rtt=10.4 ms
len=46 ip=218.228.197.201 ttl=61 id=0 sport=80 flags=SA seq=1 win=5840 rtt=10.1 ms
len=46 ip=218.228.197.201 ttl=61 id=0 sport=80 flags=SA seq=2 win=5840 rtt=6.4 ms
len=46 ip=218.228.197.201 ttl=61 id=0 sport=80 flags=SA seq=3 win=5840 rtt=6.2 ms 
DUP! len=46 ip=218.228.197.201 ttl=61 id=0 sport=80 flags=SA seq=0 win=5840 rtt=3607.9 ms
len=46 ip=218.228.197.201 ttl=61 id=0 sport=80 flags=SA seq=4 win=5840 rtt=11.7ms 
DUP! len=46 ip=218.228.197.201 ttl=61 id=0 sport=80 flags=SA seq=1 win=5840 rtt=3215.2 ms

--- 218.228.197.201 hping statistic ---
5 packets tramitted, 7 packets received, -40% packet loss
round-trip min/avg/max = 6.2/981.1/3607.9 ms
#


ポート25を調べる

以下のとおりの応答("flags=RA")がありますので、ポート25は閉じています。

# hping -S -p 25 218.228.197.201
HPING 218.228.197.201 (eth0 218.228.197.201): S set, 40 headers + 0 data bytes
len=46 ip=218.228.197.201 ttl=60 id=5446 sport=25 flags=RA seq=0 win=0 rtt=13.3 ms
len=46 ip=218.228.197.201 ttl=60 id=5447 sport=25 flags=RA seq=1 win=0 rtt=9.9 ms
len=46 ip=218.228.197.201 ttl=60 id=5448 sport=25 flags=RA seq=2 win=0 rtt=11.1 ms
len=46 ip=218.228.197.201 ttl=60 id=5449 sport=25 flags=RA seq=3 win=0 rtt=9.2 ms

--- 218.228.197.201 hping statistic ---
4 packets tramitted, 4 packets received, 0% packet loss
round-trip min/avg/max = 9.2/10.9/13.3 ms
#


普通のpingとして使ってみる

# hping -1 192.168.1.1
HPING 192.168.1.1 (eth0 192.168.1.1): icmp mode set, 28 headers + 0 data bytes
len=46 ip=192.168.1.1 ttl=63 id=8089 icmp_seq=0 rtt=1.5 ms
len=46 ip=192.168.1.1 ttl=63 id=8090 icmp_seq=1 rtt=1.5 ms
len=46 ip=192.168.1.1 ttl=63 id=8091 icmp_seq=2 rtt=1.4 ms
len=46 ip=192.168.1.1 ttl=63 id=8092 icmp_seq=3 rtt=1.5 ms
len=46 ip=192.168.1.1 ttl=63 id=8103 icmp_seq=4 rtt=1.4 ms

--- 192.168.1.1 hping statistic ---
5 packets tramitted, 5 packets received, 0% packet loss
round-trip min/avg/max = 1.4/1.5/1.5 ms
#

To previous pageTo home pageMailing to meJump to Top of pageline.gif (927 ツバツイツト)line.gif (927 ツバツイツト)tomo.gif (1144 ツバツイツト)
カスタム検索



このエントリーをはてなブックマークに追加