|
去年帮朋友处理一个被黑的网站WordPress站点,登录后台一看,后台管理员密码竟然还是密码“admin123”。数据库里翻日志,网站攻击者从尝试到成功登入,后台总共花了不到四秒。密码那台服务器上跑着三个电商站,网站客户订单信息全裸奔。后台朋友站在我身后,密码脸色从红到白,网站嘴里嘟囔:“这密码我用了八年,后台从没出过事。密码” 没出过事,网站不代表安全。后台只是密码你的站还没被盯上,或者被盯上了,对方懒得动手。 很多站长对后台密码的态度,跟对待家里备用钥匙差不多——塞在门垫下面,觉得只有自己知道。可互联网上的扫描器不是人,它们每天像蝗虫一样掠过全网,专门找/wp-admin、/admin、/login这些路径,拿字典撞门。你的“admin123”在字典里排前一百位,撞开是分分钟的事。 我见过更离谱的。有人把密码设成网站域名,比如“myblog2023”。问他为什么,他说好记。好记的东西,攻击者也好猜。还有人用生日、手机号后六位、名字拼音加“123”。这些组合在社工库面前,跟没设密码区别不大。你以为自己在防贼,其实门都没关。 那什么算靠谱的后台密码?长度比复杂度更重要。十六位以上的随机字符串,大小写加数字加符号,别用任何有意义的词。最好配合密码管理器,比如Bitwarden或者1Password,生成一串连你自己都记不住的乱码,存进去,下次自动填充。你不需要记住它,你只需要确保它唯一且够长。 但光有好密码还不够。我自己的站后台,除了强密码,还加了IP白名单——只有我常用的几个IP能访问wp-login.php,其他一律返回403。再配上双因素认证,Google Authenticator那种,就算密码泄露了,对方也进不来。有人嫌麻烦,说每次登录要掏手机。可你想想,是掏手机麻烦,还是网站被挂马、数据被拖库、客户接到诈骗电话麻烦? 还有一点常被忽略:默认用户名。很多CMS装完,管理员账号就叫“admin”。攻击者知道用户名,只需要猜密码。把用户名改成别的,比如“site_master_7x”,攻击成本立刻翻倍。别小看这一步,自动化脚本撞库时,用户名不对直接跳过,连密码都不试。 我习惯每隔三个月换一次后台密码,顺便检查登录日志。有次发现凌晨三点有个IP从乌克兰尝试登录了四百多次,虽然没成功,但那种感觉像有人半夜在拧你家门把手。你睡得着吗?我反正睡不着,第二天就把登录路径改了,又加了一层Basic Auth。 说回我那个朋友。后来我给他换了三十二位的随机密码,关了XML-RPC,装了Wordfence,限制登录尝试次数。他一开始抱怨记不住,我说你不用记,浏览器记住就行。现在半年过去,后台再没出现过异常登录。他偶尔还会发消息问我:“那个密码要不要再换一次?”我说换,每季度换一次,别偷懒。 网站后台密码这事,说到底是态度问题。你把它当回事,它就帮你挡掉九成以上的自动化攻击。你敷衍它,它就在某个深夜给你上一课。那堂课的学费,可能是你整个数据库。 |