我们的网站最近遭到黑客攻击,并提供如下文件:
www.example.com/some-spam-name
这些路径会重定向到某个垃圾邮件联属网页。 有成千上万的人。
我已经开始调查了,我检查的第一件事是.htaccess
文件:
看起来像这样:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^example\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.example\.com$
RewriteRule ^secraksj$ "https\:\/\/example\.karansv\.com\/a\/3845\/RFcFd3FM" [R=301,L]
RewriteOptions inherit
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
显而易见的事情是:
RewriteRule ^secraksj$ "https\:\/\/example\.karansv\.com\/a\/3845\/RFcFd3FM" [R=301,L]
有人可以解释这是做什么的,我可以看到正则表达式,^secraksj$
但不太明白这个重写是如何运作的。
如果我从.htaccess
文件中删除有问题的行,您认为文件的其余部分看起来相当标准吗?我试图一步一步地做事,现在我正试图修复.htaccess
文件。
我想知道如果你在.htaccess文件中看到攻击者可能用来利用网站的其他内容,我是否会删除此行。
我发现了这个: My site was hacked, htaccess file compromised, what should it look like?
但是RewriteRule
的语法不同。
答案 0 :(得分:2)
RewriteRule ^secraksj$ "https\:\/\/exampledomain\.karansv\.com\/a\/3845\/RFcFd3FM" [R=301,L]
这会将example.com/secraksj
的请求重定向到https://example.karansv.com/a/3845/RFcFd3FM
。
虽然^secraksj$
是“正则表达式”,但它只匹配文字字符串“secraksj”。
前面的RewriteCond
指令只是确保重定向仅在访问example.com
主机(而不是其他停放/插件域)时发生。
你认为该文件的其余部分看起来相当标准吗?
是的,除RewriteOptions inherit
指令外。这可能没问题,但你特别需要吗?此从任何父配置文件继承 mod_rewrite指令。
.htaccess
文件的其余部分是标准(WordPress)前端控制器模式。
但是
RewriteRule
中的语法不同。
链接问题中的指令实际上并不有效,因此我不会将这些指令用作参考。