| SQL注入 |
Web程序中对于用户提交的参数未做过滤直接拼接到SQL语句中执行,导致参数中的特殊字符破坏SQL语句原有逻辑。攻击者可以执行任意SQL语句,如查询数据、下载数据、写入WebShell、执行系统命令以及绕过登录限制等。 |
使用预编译SQL语句和参数化查询;对特殊字符进行转义;严格校验数据类型和长度;统一系统编码(如UTF-8);限制数据库账户权限;避免返回SQL错误信息;过滤危险关键字如 union、sleep、select 等。 |
| XSS |
Web程序对用户输入未进行严格过滤,攻击者可以插入恶意HTML或JavaScript代码,从而篡改页面、窃取Cookie或实施钓鱼攻击。 |
对用户输入进行严格过滤和校验;对输出内容进行HTML或JS编码;避免仅在客户端进行验证,关键过滤应在服务器端完成。 |
| CSRF |
跨站请求伪造攻击,攻击者诱导用户在已登录状态下向目标网站发送恶意请求,从而执行用户不知情的操作。 |
校验请求来源 Referer;在请求中加入随机 Token 并在服务器端进行校验。 |
| SSRF |
服务器端请求伪造,攻击者通过构造请求让服务器访问内部或外部资源,从而获取敏感信息或扫描内网。 |
仅允许HTTP/HTTPS协议;使用URL白名单;限制访问内网地址;限制端口;统一错误信息。 |
| 任意命令/代码执行 |
程序未对用户输入进行过滤,导致用户可控参数被带入系统命令或代码执行函数中,从而执行任意命令。 |
严格过滤用户输入;避免使用危险函数;执行命令前进行参数检测。 |
| 任意文件上传 |
文件上传功能未对文件类型或内容进行校验,攻击者可上传WebShell并控制服务器。 |
限制文件类型;检测MIME类型;限制文件大小;文件重命名;禁止上传目录执行权限;使用白名单验证。 |
| 目录遍历 |
程序未对文件路径参数进行过滤,攻击者利用 ../ 跳出目录限制读取系统文件。 |
过滤 ../ 等路径回溯字符;限制访问文件类型。 |
| 文件包含 |
程序在包含文件时未严格控制路径,攻击者可以包含恶意文件或日志文件执行代码。 |
检查输入参数;禁止出现目录跳转符;确保文件路径不可控。 |
| 弱口令 |
用户账户使用简单密码,攻击者可通过猜测密码直接登录系统。 |
强制密码策略(8位以上、包含数字大小写及符号);首次登录修改密码;增加验证码机制。 |
| 暴力破解 |
登录接口没有验证码或次数限制,攻击者可以不断尝试密码组合。 |
限制登录次数;锁定IP或账号;增加验证码;服务器端验证。 |
| 越权访问 |
系统未对用户权限进行严格校验,用户可以访问或修改其他用户数据。 |
严格权限校验;通过Session或Token验证身份。 |
| 未授权访问 |
网站敏感页面没有进行登录或权限校验。 |
对所有敏感接口进行权限验证。 |
| 列目录 |
服务器开启目录浏览功能,攻击者可查看服务器文件结构。 |
禁用目录索引;限制目录访问权限。 |
| PHP反序列化 |
程序未对序列化字符串进行验证,攻击者可控制反序列化过程执行恶意代码。 |
对输入对象进行严格检查;避免用户控制反序列化数据。 |
| CRLF注入 |
攻击者在HTTP头中插入 \r\n,从而伪造HTTP响应或注入Cookie。 |
过滤 \r 和 \n 字符。 |
| URL跳转 |
程序根据用户输入URL进行跳转,可能导致钓鱼攻击。 |
校验URL域名;使用白名单限制跳转地址。 |
| LDAP注入 |
未过滤用户输入导致LDAP查询语句被篡改。 |
对输入内容进行严格过滤。 |
| 明文传输 |
用户登录信息以明文方式传输,可能被中间人攻击窃取。 |
使用HTTPS;密码加密传输。 |
| 网页木马 |
网站被植入WebShell,攻击者可以直接远程控制服务器。 |
删除木马文件;检查日志;修复漏洞。 |
| 备份文件泄露 |
网站备份文件存放在Web目录,攻击者可直接下载。 |
不在Web目录存放备份;文件名随机化。 |
| 敏感信息泄露 |
页面或响应包泄露服务器信息或系统路径。 |
删除测试页面;隐藏敏感信息。 |
| 短信/邮件轰炸 |
接口未限制发送频率,可被恶意调用。 |
限制发送频率。 |
| phpinfo信息泄露 |
phpinfo页面暴露服务器配置。 |
删除phpinfo页面。 |
| IIS短文件名泄露 |
IIS存在短文件名枚举漏洞,攻击者可猜测服务器文件。 |
关闭NTFS 8.3文件名支持。 |
| 应用程序错误信息泄露 |
错误页面返回服务器路径或SQL语句。 |
自定义错误页面。 |
| Tomcat默认文件 |
Tomcat示例页面未删除可能被利用。 |
删除默认示例文件。 |
| Crossdomain配置不当 |
crossdomain.xml配置错误导致跨站访问。 |
使用域名白名单。 |
| 不安全HTTP方法 |
服务器开启PUT、DELETE等方法可能导致文件被修改。 |
禁用不安全HTTP方法。 |
| Redis未授权访问 |
Redis未设置密码导致可被远程访问。 |
设置密码;禁止外网访问;限制高危命令。 |