Web安全入门读懂Web世界里的攻防一、什么是Web安全二、Web安全为什么很重要三、Web常见漏洞简介OWASP Top10核心四、Web攻击的基本思路五、Web安全防护思路六、Web安全学习方向结尾一、什么是Web安全Web安全全称Web应用安全属于网络安全的一个分支专门研究网站、Web系统、小程序后台、API接口这类基于HTTP/HTTPS的应用所面临的安全风险、防护方案与攻防思路。我们日常浏览网页、登录账号、网上购物、提交表单、使用后台管理系统全部都在和Web应用打交道。Web应用运行在服务端接收浏览器、客户端发来的请求处理数据并返回页面。一旦代码设计缺陷、配置不当攻击者就可以利用漏洞窃取数据、篡改页面、接管服务器。Web安全的目标就是保障Web应用的保密性、完整性、可用性。保密性敏感数据账号密码、手机号、用户资料不被未授权人员读取完整性页面内容、业务数据不能被恶意篡改可用性网站服务不会被攻击导致瘫痪正常用户可以访问。二、Web安全为什么很重要Web应用是互联网对外暴露最直接的入口。相比于内网系统网站、API需要对外开放端口任何人都可以发起访问天然更容易成为攻击目标。常见危害用户信息泄露数据库被拖库手机号、身份证、密码大量流出网页篡改网站首页被挂上黑页、虚假广告损害企业公信力账户劫持攻击者盗取管理员或普通用户账号登录后台操作业务损失恶意下单、刷券、越权查看他人订单造成经济损失服务器沦陷通过Web漏洞拿到服务器权限把服务器当作肉鸡发起更多攻击。随着《网络安全法》《数据安全法》《个人信息保护法》落地企业如果因安全漏洞造成用户数据泄露不仅要承担民事赔偿严重情况下负责人还会承担法律责任。三、Web常见漏洞简介OWASP Top10核心OWASP开放式Web应用安全项目是Web安全领域权威组织定期总结Web应用最危险的十大漏洞也是安全从业者入门必学内容。**注入漏洞Injection**最经典的是SQL注入。程序直接把前端输入拼接到SQL语句中执行攻击者输入特殊字符改变SQL原有逻辑读取、修改数据库。除此之外还有命令注入、XPath注入等。例搜索框输入特殊语句直接查询全部用户密码。**跨站脚本 XSSCross-Site Scripting**网站没有过滤用户输入的脚本代码恶意JS代码存入页面。其他用户访问页面时脚本在受害者浏览器执行可窃取Cookie、劫持会话、钓鱼弹窗。分为存储型、反射型、DOM型XSS。失效的身份认证登录机制设计缺陷。比如会话Cookie长期不失效、密码强度无限制、可暴力破解、会话ID可预测。攻击者可以直接冒充用户登录。**失效的访问控制越权**权限校验只在前端做判断后端没有校验。分为水平越权看同级别其他人数据比如查看别人订单、垂直越权普通用户直接访问管理员接口。安全配置错误服务器、中间件、框架默认配置不安全。例如开启不必要的调试页面、默认账号密码、目录遍历泄露源码和配置文件。敏感数据暴露明文存储密码、HTTP明文传输数据、密钥硬编码在代码里。传输或存储时敏感数据未加密一旦被截获直接可读。跨站请求伪造 CSRF利用用户已登录的Cookie诱导用户访问恶意页面在不知情的情况下以用户身份发起请求比如修改密码、提交操作。不安全的反序列化程序反序列化不可信外部数据攻击者构造恶意序列化对象执行任意代码多见于Java、PHP等语言。使用含有已知漏洞的组件项目引入的第三方框架、SDK、插件存在公开漏洞但开发者没有升级版本攻击者可以利用组件漏洞攻击。比如老旧Spring、Struts2漏洞。服务器端请求伪造 SSRFWeb服务可以主动请求外部地址攻击者利用这个能力让服务端去访问内网地址探测内网资产、读取内网资源。除此之外还有文件上传漏洞上传木马文件执行、目录遍历、逻辑漏洞业务逻辑缺陷如无限重试、低价下单等高频漏洞。业务逻辑漏洞往往比传统漏洞更容易被忽视也更容易造成直接经济损失。四、Web攻击的基本思路Web攻击一般流程信息收集扫描域名、IP、中间件版本、目录、接口获取网站技术栈漏洞探测使用工具手工测试寻找输入点、参数尝试Payload测试是否存在漏洞漏洞利用构造攻击语句验证漏洞能否读取数据、执行代码权限提升拿到低权限后寻找本地漏洞提升权限维持访问留下后门方便后续再次进入痕迹清理清除日志。注意未经授权对任何网站进行扫描、渗透测试属于违法行为学习Web安全必须在自己搭建的靶场环境练习如DVWA、WebGoat、Pikachu等。五、Web安全防护思路安全不是单一的防火墙而是多层防护体系纵深防御。代码层面防注入使用预编译语句、参数化查询拒绝直接拼接SQL输入输出过滤对所有用户输入做校验、转义过滤特殊字符最小权限原则数据库账号、服务器账号只分配必要权限避免在代码硬编码密钥、密码。身份与权限后端必须做权限校验不能只依靠前端隐藏按钮密码加盐哈希存储bcrypt、Argon2禁止明文会话超时关键操作增加验证码、二次验证。传输与部署全站启用HTTPS加密传输关闭不必要的服务、端口删除默认页面及时升级框架、中间件定期做依赖漏洞扫描。安全运营上线前代码审计、安全测试WAFWeb应用防火墙部署拦截常见攻击Payload日志审计监控异常访问行为定期漏洞扫描与渗透测试。六、Web安全学习方向Web安全入门一般路线基础HTTP/HTTPS协议、HTML、JS、SQL基础漏洞原理逐个学习OWASP Top10本地靶场复现工具Burp Suite、Nmap、SQLMap等工具使用进阶代码审计、内网渗透、API安全、云原生Web安全合规等保、数据安全相关规范。Web安全攻防是持续博弈的过程。没有绝对安全的系统安全工作的核心是不断发现风险降低被攻击的概率减少被入侵后的损失。结尾Web应用是互联网业务的载体业务快速迭代的同时安全很容易被忽略。Web安全不只是安全工程师的工作开发、测试、运维都需要具备基础安全意识。安全左移把安全思考融入需求、编码、测试阶段才能从根源减少漏洞。