IIS漏洞攻击防范:别等被拿下才想起补课 2017年那场WannaCry席卷全球时,洞攻不少Windows服务器管理员还心存侥幸——IIS(Internet Information Services)作为微软的击防亲儿子,总该比第三方Web服务器安全些吧?洞攻结果呢?勒索病毒照样通过MS17-010漏洞横扫内网,其中不乏跑着IIS的击防机器。你以为IIS是洞攻铜墙铁壁,其实它更像一扇带猫眼的击防木门,看着结实,洞攻撬开只需一把合适的击防螺丝刀。 我见过太多真实案例了。洞攻某电商平台后台,击防IIS 7.5,洞攻管理员图省事,击防把WebDAV开着,洞攻允许PUT方法直接上传文件——结果被上传了个ASPX一句话木马,击防整台服务器沦为肉鸡,洞攻数据库被拖走,客户信息在暗网论斤卖。你说这是IIS的锅?不,这是懒的代价。 IIS的漏洞攻击路径其实相当清晰,无非就那几板斧。短文件名漏洞(比如IIS 6.0时代的~1波浪号枚举)能让你猜出服务器上的敏感文件;解析漏洞(像分号路径绕过、.asp.jpg双扩展名)让攻击者把恶意脚本伪装成图片;还有HTTP.sys远程代码执行(MS15-034),一个恶意Range头就能蓝屏整台主机。这些漏洞听着吓人,但百分之八十都能靠补丁和配置堵死。 打补丁这事,我见过最离谱的操作:某运维大哥为了“稳定”,把服务器设成永不自动更新,结果IIS 8.0上留着一个2016年的远程溢出漏洞,被隔壁机房扫描器扫到,一夜之间被植入挖矿程序。CPU飙到99%,他还以为是业务增长太快,愣是扛了三天才发现。你说气不气人?补丁不是装饰品,是防弹衣,穿上不好看,但能保命。 配置层面,我有个固执的偏见:凡是能用白名单解决的,绝不用黑名单。IIS的请求筛选模块(Request Filtering)就是个好东西——限制URL长度、拒绝特定文件扩展名、封禁危险HTTP方法,这些动作在IIS层面做掉,比事后靠WAF(Web应用防火墙)硬扛省心得多。比如把``这种规则配上,直接掐死上传目录的执行权限,攻击者就算上传了webshell也跑不起来。 再说个冷门的坑。IIS的日志文件默认存放在`C:\inetpub\logs\LogFiles`,权限继承自父目录,很多管理员压根没改过。攻击者拿下shell后第一件事就是删日志、改时间戳,你事后分析个寂寞?我建议把日志挪到独立分区,用NTFS ACL锁死,只允许SYSTEM和特定账户写,顺便开个审计策略,谁碰过日志文件都记一笔。这招不花一分钱,但能让取证效率翻倍。 还有那些跑在IIS背后的应用层漏洞——SQL注入、XSS、文件上传,这些跟IIS本身关系不大,但IIS是门卫,门卫不拦,小偷就长驱直入。拿SQL注入来说,IIS的URL重写模块可以配合规则,把带`' or 1=1`的请求直接返回403。别觉得麻烦,规则写一次,受益一辈子。 我见过最干净的一台IIS服务器,管理员把不必要的ISAPI筛选器全卸了,只留静态文件服务和ASP.NET的托管管道,连WebDAV都禁得死死的。那台机器跑了五年,一次都没被攻破——不是运气好,是攻击面被削得只剩一根细针,刺不穿。 最后说句掏心窝的:IIS漏洞攻击防范,七分在管理,三分在技术。补丁勤快打,模块少装点,权限抠细点,日志看勤点,比买十万一台的硬件防火墙都管用。别等被入侵了才翻微软的公告,到那时候,你的服务器可能已经成了别人挖矿大军里的一颗小螺丝钉。 |