●Dos攻撃とは、ターゲットに対して不正なパケットを送信することで、特定のサービスやネットワーク自体を正常な動作にできない状態に陥れ、サービスを提供できない状態にする攻撃のこと。
・陥る状態
攻撃によって回線が圧迫され、一般利用者が閲覧状態
●DDoS攻撃とは、ターゲットに対して複数の送信元から攻撃パケットを送信することで、特定のサービスやネットワークを正常に動作できない状態に陥れ、サービスを提供できない状態にすること。Dos攻撃よりも複数の攻撃元から攻撃があるため、防御するのが難しく、被害も大きくなる傾向になります。
Kali Linux に入っているツール「hping3」で、任意のTCP/IPパケットを送信することが可能です。これでDoS/DDoS攻撃を行うことが可能です。
[root @ client〜]#hping3 -h
使用法:hpingホスト[オプション]
-h --helpこのヘルプを表示
-v --versionバージョンを表示
-c --countパケット数
-i-間隔待機(Xマイクロ秒のuX、たとえば-i u1000)
--fastエイリアス-i u10000(10パケット/秒)
--- i u1000のより高速なエイリアス(1秒あたり100パケット)
--flood送信パケットを可能な限り速くします。返信を表示しません。
-n-数値出力
-q-静かな静かさ
-I-インターフェースインターフェース名(それ以外の場合はデフォルトのルーティングインターフェース)
-V --verbose verbose mode
-D-デバッグ情報をデバッグします
-z --bind ctrl + zをttlにバインドします(デフォルトはdstポート)
-Z-バインド解除バインド解除ctrl + z
-一致するすべてのパケットを受信したときにビープ音を鳴らします
モード
デフォルトモードTCP
-0 --rawip RAW IPモード
-1 --icmp ICMPモード
-2 --udp UDPモード
-8-スキャンSCANモード。
例:hping --scan 1-30,70-90 -S www.target.host
-9 --listen listen mode
IP
-a --spoofスプーフィング送信元アドレス
--rand-destランダム宛先アドレスモード。男を参照してください。
--rand-sourceランダムソースアドレスモード。男を参照してください。
-t --ttl ttl(デフォルト64)
-N --id id(デフォルトはランダム)
-W --winid win * idバイト順序を使用
-r --rel相対IDフィールド(ホストトラフィックを推定するため)
-f --fragパケットをより細かく分割します。(弱いACLを通過する場合があります)
-x --morefragは、より多くのフラグメントフラグを設定します
-y --dontfrag dont fragmentフラグを設定
-g --fragoffはフラグメントのオフセットを設定します
-m --mtuは仮想mtuを設定し、パケットサイズ> mtuの場合は--fragを意味します
-o --tosサービスのタイプ(デフォルトは0x00)、-tosヘルプを試してください
-G --rrouteはRECORD_ROUTEオプションを含み、ルートバッファを表示します
--lsrr緩やかなソースルーティングとレコードルート
--ssrr厳密なソースルーティングとレコードルート
-H --ipproto RAW IPモードでのみ、IPプロトコルフィールドを設定します
ICMP
-C --icmptype icmp type(デフォルトのエコー要求)
-K --icmpcode icmpコード(デフォルト0)
--force-icmpすべてのicmpタイプを送信します(デフォルトでは、サポートされているタイプのみ送信します)
--icmp-gw ICMPリダイレクトのゲートウェイアドレスを設定(デフォルトは0.0.0.0)
--icmp-ts --icmp --icmptype 13(ICMPタイムスタンプ)のエイリアス
--icmp-addrエイリアス--icmp --icmptype 17(ICMPアドレスサブネットマスク)
--icmp-help他のicmpオプションのヘルプを表示します
UDP / TCP
-s --baseportベースの送信元ポート(デフォルトはランダム)
-p --destport [+] [+] <port>宛先ポート(デフォルト0)ctrl + z inc / dec
-k --keepまだソースポートを保持します
-w --win winsize(デフォルト64)
-O --tcpoff(tcphdrlen / 4の代わりに)偽のtcpデータオフセットを設定します
-Q --seqnumはtcpシーケンス番号のみを表示します
-b --badcksum(試行)不正なIPチェックサムを含むパケットを送信します
多くのシステムは、パケットを送信するIPチェックサムを修正します
代わりに、不正なUDP / TCPチェックサムを取得します。
-M --setseq TCPシーケンス番号を設定します
-L --setack TCP ackを設定します
-F --fin FINフラグを設定します
-S --syn SYNフラグを設定します
-R --rst RSTフラグを設定します
-P-プッシュプッシュフラグを設定します
-A --ack ACKフラグを設定
-U --urgはURGフラグを設定します
-X --xmas X未使用フラグを設定(0x40)
-Y --ymasはY未使用フラグを設定(0x80)
--tcpexitcodeは最後のtcp-> th_flagsを終了コードとして使用します
--tcp-timestampは、TCPタイムスタンプオプションを有効にして、HZ /アップタイムを推測します
一般
-d --data data size(default is 0)
-E-ファイルからのファイルデータ
-e --sign add 'signature'
-j-パケットを16進数でダンプします
-J-印刷可能な文字をダンプします
-B --safe「安全な」プロトコルを有効にする
-u --end --fileがEOFに達したことを通知し、巻き戻しを防止します
-T --traceroute tracerouteモード(--bindおよび--ttl 1を意味します)
--tr-stop tracerouteモードで最初のnot ICMPを受信すると終了する
--tr-keep-ttl 1つのホップだけを監視するのに役立つソースTTLを固定したままにします
--tr-no-rtt tracerouteモードでRTT情報を計算/表示しない
ARSパケットの説明(新規、不安定)
--apd-send APDで記述されたパケットを送信します(docs / APD.txtを参照)
SYN Flood 攻撃
ターゲットに対して大量のSYNパケットを送り付ける攻撃
一般的にSYNパケットは送信元IPアドレスを偽造できるため、送信元の特定は困難
hpin3を使用して、IPアドレス 192.168.0.10 の ポート 80 に対してSYN Flood攻撃を実施
-S:SYNフラグを設定
-p:宛先ポート
–rand-source:送信元IPアドレスを非表示(ランダムに偽造する)


UDP Flood 攻撃
ターゲットに対して、大量のUDPパケットを送り付ける攻撃
一般的にUDPパケットは送信元IPアドレスを偽造できるため、送信元の特定は困難
hpin3を使用して、IPアドレス 192.168.0.10 の ポート 80 に対してUDP Flood攻撃を実施
-2:UDPフラグを設定
-p:宛先ポート (ポートを指定しなかった場合、ポート0が設定される)
–rand-source:送信元IPアドレスを非表示(ランダムに偽造する)


ICMP Flood 攻撃
ターゲットに対して、大量のPingパケット(ICMP echo-request)を送り付ける攻撃
一般的にICMPパケットは送信元IPアドレスを偽造できるため、送信元の特定は困難
hpin3を使用して、IPアドレス 192.168.0.10 の ポート 80 に対してICMP Flood攻撃を実施
-1:ICMPフラグを設定
-p:宛先ポート (ポートを指定しなかった場合、ポート0が設定される)
–rand-source:送信元IPアドレスを非表示(ランダムに偽造する)


Connection Flood(slowloris) 攻撃
ターゲットに対して、大量のコネクションを確立させ、サーバのメモリを落とす攻撃
一般的にコネクションを確立するために、送信元IPアドレスを偽造することは困難
slowlorisはkaliにはデフォルトで設定されていないので、下記のURLからダウンロードしてください。「slowloris.pl」をダウンロードして、perlで実行してください。


perlでslowloris.plを実行して、IPアドレス 192.168.0.10 に対してslowloris攻撃を実施
-dns:攻撃対象を設定(dnsとあるが、IPアドレスとドメイン名どちらでも大丈夫)

コマンドを実行すると、パンダ?のような絵が表示され実行されます。




コメント