古いメソッドはまだ機能します

あなたがウェブサイトをホストしたり、サーバーを管理したことがあるなら、あなたはおそらくあなたの財産で様々な悪いことをしようとしている悪い人たちをよく知っているでしょう。
13歳のときに、SSHアクセスで小さなLinuxボックスを初めてホストしたとき、ログを見て、毎日、私の小さなボックス(実際には、実際、それは壊れたディスプレイを備えた古いThinkPad T21ラップトップであり、ベッドの下で賑やかでした)。 これらのIPをプロバイダーに報告しました。
実際、オープンSSHを備えたLinuxサーバーを使用している場合、毎日何回接続が試行されているかを自分で確認できます。
grep 'authentication failures' /var/log/auth.log

,
Wordpress
, , - Wordpress, , ,
wp-admin
.
, - - .

Nikto
- , . …
?
IDS Fail2ban ZIP- .
— ZIP-?
, ZIP , , , . , .
42.zip, 4,5 (4 500 000 ) 42 . ( ), , , .
ZIP- ?
, - ZIP, GZIP.
10- GZIP, . , .
dd if=/dev/zero bs=1M count=10240 | gzip > 10G.gzip

, 10 . , .
PHP-, .
<?php
//prepare the client to recieve GZIP data. This will not be suspicious
//since most web servers use GZIP by default
header("Content-Encoding: gzip");
header("Content-Length: ".filesize('10G.gzip'));
//Turn off output buffering
if (ob_get_level()) ob_end_clean();
//send the gzipped file to the client
readfile('10G.gzip');
!
:
<?php
$agent = filter_input(INPUT_SERVER, 'HTTP_USER_AGENT');
//check for nikto, sql map or "bad" subfolders which only exist on wordpress
if (strpos($agent, 'nikto') !== false || strpos($agent, 'sqlmap') !== false || startswith($url,'wp-') || startswith($url,'wordpress') || startswith($url,'wp/'))
{
sendBomb();
exit();
}
function sendBomb(){
//prepare the client to recieve GZIP data. This will not be suspicious
//since most web servers use GZIP by default
header("Content-Encoding: gzip");
header("Content-Length: ".filesize('10G.gzip'));
//Turn off output buffering
if (ob_get_level()) ob_end_clean();
//send the gzipped file to the client
readfile('10G.gzip');
}
function startsWith($a, $b) {
return strpos($a, $b) === 0;
}
, , -, , , user-agent.
… , ?
IE 11 | , IE |
Chrome | , |
Edge | , , |
Nikto | , |
SQLmap | , |
Safari | , , ... |
Chrome (Android) | , |
( //, , , )

Chrome
, !