質問: Apacheのプロセス数が急増し、DISKのREAD値が異常に跳ね上がり(平常時200kb→攻撃時60Mb)、Apacheがダウンします。 サーバはCentOS7、Apache2.4.6です。 この攻撃はerror_logが残らず、mod_dosdetectorも反応せず、mod_limitipconnでの制限も無視し、Timeoutも効かず、いきなりApacheのプロセス数上限に達しパンクします。 対処方法がわからず途方に暮れている状態でございます。お力添え頂けないでしょうか。 アクセスログには以下のような記録が大量に残ります(1万行くらい)。1分くらい攻撃を受けると408が400に変わります。(※IPやドメイン名は例です) 123.456.789.12 - - [26/Oct/2019:13:11:37 +0900] "GET http://exsample.com HTTP/1.1" 408 221 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36" 123.456.789.12 - - [26/Oct/2019:13:11:37 +0900] "GET http://exsample.com HTTP/1.1" 408 221 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36" 123.456.789.12 - - [26/Oct/2019:13:11:37 +0900] "GET http://exsample.com HTTP/1.1" 408 221 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36" 123.456.789.12 - - [26/Oct/2019:13:11:37 +0900] "GET http://exsample.com HTTP/1.1" 408 221 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36" 123.456.789.12 - - [26/Oct/2019:13:12:37 +0900] "GET http://exsample.com HTTP/1.1" 400 226 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36" 123.456.789.12 - - [26/Oct/2019:13:12:37 +0900] "GET http://exsample.com HTTP/1.1" 400 226 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36" 123.456.789.12 - - [26/Oct/2019:13:12:37 +0900] "GET http://exsample.com HTTP/1.1" 400 226 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36" 123.456.789.12 - - [26/Oct/2019:13:12:37 +0900] "GET http://exsample.com HTTP/1.1" 400 226 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36" ---------------------- ご質問に関しての追記 --------------------- 犯人が攻撃している部分はindex.htmlであり、ただの静的なページになります。パラメータも付いていない点、PHPなども含まれておらず、apacheかそれよりも前の脆弱性を狙っているものと推測しております。
回答: Apacheではなくiptablesレベルで制限をかけるとどうでしょう? 参考:Limit max connections per IP address and new connections per second with iptables > > - the maximum connections per IP address to httpd to 10 > > - the maximum new connections per second to httpd to 150 > > >