如何查询网站漏洞
如何查询网站漏洞
上周帮朋友查一个被黑的何查商城站点,后台被挂了个赌博跳转。询网我打开浏览器F12,站漏先看网络请求,何查再翻源码,询网最后扫目录——半小时就找到了入口:一个没过滤的站漏上传点,老旧的何查FCKeditor组件。这种问题,询网用工具扫反而绕远路,站漏手动看几眼就露馅。何查
查询漏洞的询网第一步,不是站漏开扫描器,是何查看网站自己暴露了什么。打开目标站点,询网右键查看源代码,站漏搜“action=”、“file=”、“upload”。这些参数是攻击面。再按F12切到Network面板,刷新页面,看请求列表里有没有可疑的接口路径。比如你看到`/api/user/info?id=1`,试着改成`id=2`,如果返回了别人的数据,那就是越权漏洞。这招叫手工探测,比任何工具都直接。
第二步是查公开的指纹信息。用Wappalyzer插件或者看响应头里的`X-Powered-By`、`Server`字段,确认网站用的什么CMS或框架。如果是WordPress,就去wpscan.com查版本漏洞库;如果是ThinkPHP,直接搜“ThinkPHP 5.0 RCE”。很多老站用的框架版本早被公开漏洞打穿了,你只需要对号入座。我见过一个政府网站跑着ThinkPHP 5.0.23,那个版本有个命令执行漏洞,网上PoC一抓一大把,根本不需要自己挖。
第三步才轮到工具扫描。Nmap扫端口,只开80和443的站没什么搞头,如果扫出8080、8888这种管理端口,就值得深入。然后用AWVS或Xray挂上爬虫,让它自动跑一遍常见漏洞。但工具误报率极高,扫出来的SQL注入点十有八九是WAF拦截后的假象。你得手动验证:拿sqlmap跑一下,看能不能实际注入出数据。扫描器只是帮你缩小范围,别全信它的输出。
还有个野路子——查历史泄露数据。去GitHub搜目标域名,很多人会把配置文件传上去,里面有数据库密码或者API密钥。用`site:github.com "目标域名"`这个搜索语法,偶尔能翻出好东西。去年我帮一家小公司排查,就是在GitHub上找到了他们开发人员提交的`.env`文件,里面躺着阿里云OSS的AccessKey,直接能下载整个存储桶。
别忘了看robots.txt和sitemap.xml。robots.txt会列出管理员想隐藏的路径,比如`/admin`、`/backup`,虽然初衷是给搜索引擎看的,但等于给攻击者画了地图。sitemap.xml则可能暴露一些动态参数页面,这些页面往往没做权限校验。我习惯先抓这两个文件,再决定从哪下手。
最后说个容易忽略的——错误页面。故意输入一个不存在的路径,比如`/index.php?id=abc'`,观察返回的报错信息。如果显示SQL语句片段,说明参数没过滤;如果显示堆栈跟踪,可能泄露文件绝对路径。这些细节比扫描器报警更可靠,因为它们直接反映了代码质量。
总结下流程:手工看源码→查指纹版本→工具扫端口和常见漏洞→搜历史泄露→翻robots和错误页。整套下来不需要什么高深技术,关键是耐心和细心。很多漏洞不是“找”出来的,是“看”出来的——你盯着一个参数多试几次,总会有意外收获。