网站如何做seo推广网站建设的功能有哪些

张小明 2026/1/11 18:16:22
网站如何做seo推广,网站建设的功能有哪些,模板网站的坏处,最专业网站建设公Web 安全入门#xff1a;从 OWASP Top 10 到常见漏洞 解构 Web 安全威胁图谱#xff1a;从 OWASP Top 10 到典型攻击#xff0c;筑牢数字防线 在 Web 应用成为业务核心载体的今天#xff0c;安全漏洞已成为威胁数据隐私、业务稳定的 “隐形炸弹”。从 OWASP Top 10 划定的…Web 安全入门从 OWASP Top 10 到常见漏洞解构 Web 安全威胁图谱从 OWASP Top 10 到典型攻击筑牢数字防线在 Web 应用成为业务核心载体的今天安全漏洞已成为威胁数据隐私、业务稳定的 “隐形炸弹”。从 OWASP Top 10 划定的高危风险到各类场景化攻击手段Web 安全攻防的博弈从未停歇。本文将系统拆解 Web 领域的核心威胁既覆盖 OWASP Top 10 中的关键风险 —— 如利用 SQL 注入篡改数据库、借 XSS 跨站脚本窃取用户凭证、因敏感信息泄露暴露核心数据、错误安全配置留下的防护缺口也包含功能级访问缺失导致的越权操作、破坏请求处理逻辑的请求走私同时深入典型攻击场景 —— 命令执行与文件包含直接突破服务器权限CSRF 跨站请求伪造冒充用户操作SSRF 服务器端请求伪造穿透内网文件上传漏洞成为后门植入通道点击劫持靠视觉欺骗诱导操作XXE 外部实体注入解析恶意文档等等漏洞。这些威胁或独立发难或串联成攻击链既是开发者避坑的重点也是安全防护体系构建的关键唯有读懂其原理与危害才能为 Web 应用筑起坚实防线。本篇文章将结合实例和理论尽可能为大家讲解清楚各个漏洞的原理以及实现形式。本篇文章仅限于网络安全学习禁止应用于未授权的渗透测试。OWASP Top 10 2021 十大风险深度解析OWASP Top 10 漏洞是指由 Open Web Application Security ProjectOWASP发布的十大最严重、最普遍的 Web 应用程序安全漏洞。这些漏洞在当今的 Web 应用程序中非常常见且具有很高的危害性被视为 Web 应用程序安全领域必须认真防范和修复的关键问题。1、失效的访问控制Broken Access Control风险表现越权访问、功能级访问缺失、水平 / 垂直权限绕过典型场景未校验用户身份直接访问他人数据、URL 参数篡改越权操作防御方案基于角色的访问控制RBAC、权限校验全覆盖、禁用直接对象引用未授权访问一个未授权访问一个越权这两个基本上是src中最常见的漏洞了二者虽然都属于top10漏洞的一种但是实现起来并不相同。未授权访问是指用户并没有任何的身份权限并不具备目标资源的任何访问权限它可以是匿名用户也可以是一名被注销过的用户通过拼接一些路径比如说/admin/index.php/api/user/info等等如果服务器后端没有进行校验而是直接放过用户就可以直接进入到管理员后台、查看其他用户的敏感信息或者进行一些其他的危险操作。越权越权顾名思义就是越过权限限制实现越权访问的前提是已经有了具备目标资源的部分权限越权具体分为水平越权和垂直越权水平越权指的是在相同层次下实现对其他用户资源的访问。垂直越权则是指由低权限到高权限也就是admin权限的跨越。2、加密机制失效Cryptographic Failures风险表现敏感数据明文传输、弱加密算法使用、密钥泄露典型场景HTTP 协议传输用户密码、使用 MD5 存储敏感信息防御方案强制 HTTPS、采用强加密算法AES-256、RSA-2048、密钥安全管理具体体现在实战中可以理解为登陆之后账号密码在传输过程中是明文状态或者弱加密状态这样就导致我们可以随意控制账号密码的值可以方便对其进行弱口令的爆破或者其他漏洞的测试。3、注入攻击Injection风险表现SQL 注入、命令注入、NoSQL 注入、LDAP 注入典型场景拼接用户输入构造 SQL 语句、未过滤命令执行参数防御方案参数化查询、输入验证与过滤、使用安全的 API 库这里详细讲解sql注入同时也是多数人学习web最先入门的一个漏洞。要理解 SQL 注入我们得先从「数据库和 SQL 的基础」说起再一步步拆解注入的原理 —— 全程用 “生活场景” 类比避免复杂术语。一、先搞懂数据库和 SQL 是啥你可以把「数据库」想象成一个超级智能的 Excel 表格集合比如电商网站的数据库里有 “用户表”存用户名、密码、“商品表”存商品名、价格、“订单表”存谁买了啥你手机里的通讯录本质也是个小型数据库“联系人表” 存姓名、电话。而SQL结构化查询语言就是跟这个 “超级 Excel” 沟通的 “语言”—— 你想查数据、改数据、删数据都得用 SQL “说话”。比如一个简单的 SQL 指令SELECT 密码 FROM 用户表 WHERE 用户名 张三翻译成人话就是“从「用户表」里找出「用户名是张三」的那一行把对应的「密码」给我。”二、再搞懂程序是怎么用 SQL 的我们平时用的 APP、网站比如登录页面本质是「程序」在帮我们和数据库沟通。流程像这样用户输入信息比如你在登录页填了「用户名 张三」「密码 123456」程序拼接 SQL程序会把你的输入塞进一个提前写好的 “SQL 模板” 里拼成完整的 SQL 指令模板可能是SELECT * FROM 用户表 WHERE 用户名[用户输入的用户名] AND 密码[用户输入的密码]你输入后拼接成的 SQL 就是SELECT * FROM 用户表 WHERE 用户名张三 AND 密码123456数据库执行 SQL程序把拼接好的 SQL 发给数据库数据库检查 “有没有张三这个人且密码对不对”返回结果给用户如果有匹配的行就让你登录成功没有就提示 “账号密码错误”。三、SQL 注入的核心原理“欺骗程序让它拼出恶意 SQL”正常情况下程序希望你输入的是「普通内容」比如 “张三”“123456”但如果你的输入里混了「SQL 指令片段」程序没过滤的话就会把这些恶意片段当成 SQL 的一部分拼出一个 “跑偏” 的指令 —— 这就是 SQL 注入。举个最经典的「登录绕过」例子你就能秒懂场景某网站的登录逻辑有漏洞程序的 SQL 模板是SELECT * FROM 用户表 WHERE 用户名[输入的用户名] AND 密码[输入的密码] #SELECT 可以理解为“选择” # *可以理解为“所有”数据库的规则是只要 SQL 执行后能查到数据就判定登录成功。黑客的操作输入 “恶意内容”黑客根本不填正确的账号密码而是在「用户名」框里输入admin OR 11此时程序会把这个输入 “原封不动” 地拼进 SQL 模板最终的 SQL 变成SELECT * FROM 用户表 WHERE 用户名admin OR 11 AND 密码[随便填的密码]关键这个恶意 SQL 会让数据库 “判错”我们先看 SQL 里的关键部分用户名admin OR 11OR是 SQL 里的 “逻辑或”只要两边有一个成立整个条件就成立11是永远成立的1 肯定等于 1即永真。所以不管 “用户名是不是 admin”、“密码对不对”整个 SQL 的条件用户名admin OR 11 AND 密码...都会成立 —— 数据库会查到所有用户的数据程序就误以为 “登录成功”黑客直接绕过登录进入系统。四、SQL 注入的其他常见玩法原理相通除了登录绕过黑客还能通过注入做更危险的事核心都是 “拼出恶意 SQL”1. 拖库偷整个数据库的数据如果程序允许输入 “查询条件”比如电商的 “商品搜索”黑客可以输入 UNION SELECT 用户名,密码 FROM 用户表 --拼接后的 SQL 会变成SELECT 商品名 FROM 商品表 WHERE 商品名[空] UNION SELECT 用户名,密码 FROM 用户表 -- UNIONSQL 里的 “合并查询”能把两个查询的结果拼在一起--SQL 里的 “注释符号”后面的内容会被数据库忽略避免语法错误最终程序本应显示 “商品列表”结果却把「用户表」里的所有用户名、密码都显示出来 —— 黑客就偷走了所有用户的账号密码。2. 删库破坏数据库最恶劣如果程序有 “删除数据” 的功能比如删除自己的订单黑客可能输入 ; DROP TABLE 用户表 --拼接后的 SQL 会变成DELETE FROM 订单表 WHERE 订单号[空] ; DROP TABLE 用户表 -- ;SQL 里的 “语句结束符”表示前面的语句结束后面可以加新的 SQLDROP TABLE 用户表直接删除「用户表」整个网站的用户数据全没了这就是传说中的 “删库跑路” 的简化版真实场景会更复杂但原理一样。真实场景严禁脱库删库跑路一删必被抓。五、为什么会有 SQL 注入核心原因就 1 个程序没有对「用户输入」做任何过滤 —— 把用户输入的内容当成了 “纯文本”但实际上用户输入里藏了 “SQL 指令”程序却没识别出来直接拼进了 SQL 里。就像你去餐厅点单服务员问 “要加什么料”你说 “加辣椒然后把厨房的菜单给我”服务员真的把菜单给你了 —— 这就是 “没过滤你的请求”。六、简单总结SQL 注入的本质用户输入本应是 “数据”比如 “张三”但因为程序没过滤这些输入被当成了 “SQL 代码” 执行 —— 相当于黑客 “混进了程序和数据库的对话里插了一句恶意的话”让数据库做了不该做的事。理解了这个逻辑再看防注入的方法就很简单了让程序把用户输入 “严格当成数据”不让它变成 SQL 代码比如用 “参数化查询”或者过滤掉输入里的 SQL 关键词如OR、DROP、--等。4、不安全的设计Insecure Design风险表现业务逻辑漏洞、未考虑安全的架构设计、缺少安全默认配置典型场景密码重置流程未校验身份、支付逻辑缺少金额二次校验防御方案安全设计评审SDL、威胁建模、安全需求前置举一些栗子比如某个网站的忘记密码功能仅需要你填新的密码然后再确认一遍就能实现更改完全没有校验。或者校验起来很简单类似于几年前的“密保”仅需要回答一些问题比如说你喜欢什么颜色你的梦想是什么你最喜欢的运动是什么等等不过目前多数都是需要经过手机号码的校验找回。再比如购物时手机创建订单的时候抓包修改金额支付时就可以按照自己修改的金额支付了实现了任意金额支付。登陆某个网站验证码仅做前端校验抓包时根本找不到验证码的限制。前端校验对黑客来说等于没有校验。5、安全配置错误Security Misconfiguration风险表现默认账户未删除、服务端暴露敏感信息、中间件版本存在漏洞典型场景Tomcat 使用默认密码、数据库开放公网访问、错误页面泄露堆栈信息防御方案最小权限配置、定期安全基线检查、禁用不必要的功能举几个例子直接带过1、管理平台使用默认的账号密码比如admin/123456直接进入后台。2、路由器 / 摄像头使用厂商的默认账号密码直接被黑客入侵拿下权限。3、数据库公网开放无访问限制有些公司为了方便员工远程连数据库直接把MySQL3306 端口、MongoDB27017 端口的端口开放到公网而且没配置 “IP 白名单”只允许特定 IP 访问。攻击者可以用工具扫描全网的 3306 端口找到这些暴露的数据库再尝试暴力破解密码 —— 一旦成功就能直接操作数据库删数据、偷用户信息。4、系统出错时比如网页打不开、接口调用失败如果配置不当会把 敏感信息 直接显示给用户比如说服务器版本中间件框架等等这些信息会帮攻击者更快找到漏洞。6、使用有漏洞的组件Vulnerable and Outdated Components风险表现使用存在漏洞的第三方组件框架、库、组件未及时更新典型场景使用存在 Log4j 漏洞的组件、jQuery 版本含 XSS 漏洞防御方案组件依赖管理、定期漏洞扫描、建立组件更新机制ctf用到最多的一般就是apache和nginx的解析漏洞具体看我上一篇有关中间件漏洞的文章~7、识别与认证失败Identification and Authentication Failures风险表现弱密码策略、会话管理失效、多因素认证缺失典型场景允许简单密码、会话 ID 未过期、暴力破解无防护防御方案强密码策略、会话超时控制、多因素认证MFA如果你已经退出了账号但拿之前的cookie仍然可以去访问服务器进行正常的业务那么这就是会话管理失效。某些场合黑客甚至可以复用其他用户的凭证进行登陆。多因素认证的目的其实就是为了防止暴力破解比如说登录接口加上“人机验证”限制密码错误的次数等等。8、软件与数据完整性失效Software and Data Integrity Failures风险表现未校验软件更新包完整性、数据传输过程被篡改、缺少数字签名典型场景恶意更新包植入后门、API 请求参数被篡改防御方案数字签名验证、校验和比对、使用不可变数据存储软件与数据完整性失效的核心是“系统未对‘软件更新包、关键数据、操作指令’的完整性做校验”导致攻击者可篡改内容、植入恶意代码或伪造操作最终破坏系统功能、窃取数据或控制设备。如果数据的传输过程未进行加密、签名那么黑客很容易的就可以进行劫持篡改数据最后实现危险操作。9、安全日志与监控失效Security Logging and Monitoring Failures风险表现未记录关键操作日志、日志未备份、异常行为无告警典型场景登录失败不记录 IP、SQL 注入攻击无日志溯源防御方案关键操作全日志、日志加密存储、建立异常监控告警机制意思很明确被黑客攻击了你要有记录能够溯源出黑客的攻击思路。10、服务器端请求伪造Server-Side Request Forgery, SSRF风险表现服务器未过滤用户输入的请求地址导致访问内网资源典型场景通过 URL 参数访问内网数据库、探测内网服务端口防御方案请求地址白名单、禁用危险协议file://、gopher://、限制内网访问一、先搞懂SSRF 到底是啥生活类比你可以把「服务器」想象成一个 “热心的快递员”「用户」是让快递员帮忙办事的人。正常情况你让快递员 “帮我去楼下便利店买一瓶水”用户给的是 “公开可访问的地址”快递员去便利店公开地址完成任务没问题。SSRF 的情况你其实想知道 “快递员自己家的抽屉里有什么”但你进不去快递员家因为那是他的 “内网”于是你骗快递员“帮我去‘你家卧室抽屉’拿个东西我急用”—— 快递员没多想真的去自己家抽屉内网地址拿了东西给你等于你通过快递员拿到了本不该属于你的 “内网信息”。简单说SSRF 就是 “用户骗服务器去访问服务器能到、但用户自己到不了的地址比如服务器的内网”从而窃取信息或攻击内网服务。二、SSRF 的核心原理服务器 “没过滤” 用户给的地址服务器之所以会被骗根源是“用户让它访问哪个地址它就访问哪个不做任何检查”—— 就像快递员 “用户说去哪就去哪不核实地址是否安全”。我们用一个常见的场景“在线 URL 预览” 功能拆解具体流程很多网站有 “URL 预览” 功能你输入一个网址比如https://xxx.com网站服务器会帮你访问这个网址抓取页面标题、图片显示成 “预览卡片”。这个功能如果没做防护就会被 SSRF 攻击用户输入 “恶意地址”你不输入公开网址反而输入 “服务器内网的地址”比如http://192.168.1.100:3306这是服务器内网的 MySQL 数据库地址用户自己的电脑根本访问不到因为内网不对外公开服务器 “无脑执行”服务器收到你给的地址http://192.168.1.100:3306没检查这个地址是不是 “内网地址”直接帮你去访问服务器返回 “内网信息”因为服务器在自己的内网里能访问到192.168.1.100:3306数据库它会把 “访问结果”比如数据库的版本信息、是否能连接成功返回给你你拿到 “内网情报”你通过服务器的 “帮忙”知道了 “服务器内网有个 MySQL 数据库端口 3306 是开着的”甚至能进一步利用这个信息攻击数据库。三、SSRF 能做什么坏事3 个通俗场景本质上SSRF 的危害就是 “借服务器的‘眼睛’看内网借服务器的‘手’攻击内网”常见有 3 类操作场景 1偷看服务器内网的 “秘密文件”服务器的内网里可能存着 “不能对外公开的文件”比如服务器自己的配置文件存着数据库密码、API 密钥内网其他电脑的共享文件比如公司的内部文档。攻击者可以骗服务器“帮我访问file:///etc/passwd”file://是一种协议用来访问服务器本地的文件就像你电脑上的 “C 盘文件”。如果服务器没禁用file://协议就会真的去读自己本地的/etc/passwd文件Linux 系统的用户信息文件并把内容返回给攻击者 —— 攻击者就拿到了服务器的用户名单为后续攻击铺路。场景 2探测内网有哪些 “可攻击的服务”企业的内网里通常有很多 “不对外公开的服务”比如内网数据库MySQL、Redis端口 3306、6379内网管理后台比如路由器管理页、服务器监控页地址可能是http://192.168.1.1。攻击者没法直接访问这些内网服务但可以骗服务器 “逐个探测”先让服务器访问http://192.168.1.1:80看内网路由器的 80 端口是否开着再让服务器访问http://192.168.1.2:3306看内网数据库的 3306 端口是否开着根据服务器返回的 “是否能访问成功”画出内网的 “服务地图”—— 知道哪些服务能攻击后续就针对性下手比如用弱密码破解内网数据库。场景 3直接攻击内网里的 “脆弱服务”有些内网服务本身有漏洞比如旧版本的 Redis、Elasticsearch攻击者可以骗服务器 “用漏洞攻击这些服务”。比如内网有个 “有漏洞的 Redis 服务”地址192.168.1.3:6379攻击者知道这个漏洞的利用方法只要向 Redis 发送一段特定指令就能在服务器上写文件。于是攻击者骗目标服务器“帮我向http://192.168.1.3:6379发送这段指令”—— 目标服务器真的发送了指令内网的 Redis 服务被攻击成功攻击者在 Redis 所在的电脑上写了 “后门文件”最终控制了这台内网电脑。四、怎么防 SSRF3 个 “堵漏洞” 的方法既然 SSRF 是 “服务器没过滤地址” 导致的防御核心就是 “让服务器学会‘分辨地址是否安全’不被用户骗”。方法 1只允许访问 “白名单里的地址”最安全就像快递员只允许去 “公司规定的几个便利店”不允许去其他地方 —— 服务器只允许访问 “提前列好的、安全的地址”其他地址一律拒绝。比如 “URL 预览” 功能只允许服务器访问https://baidu.com、https://zhihu.com等公开可信的网址用户输入其他地址比如内网地址、file://协议地址服务器直接返回 “无效地址”不执行请求。方法 2禁用 “危险的访问协议”有些协议本身就很危险比如file://访问本地文件、gopher://能发送任意数据常用于攻击数据库、ftp://访问 FTP 服务器—— 这些协议根本不该让用户通过服务器调用。服务器可以直接 “禁用这些协议”只要用户输入的地址是以file://、gopher://开头的不管后面是什么一律拒绝访问从根源堵住 “读本地文件、发恶意数据” 的漏洞。方法 3禁止服务器访问 “内网地址段”内网地址是有固定范围的比如192.168.x.x、10.x.x.x、172.16.x.x这些地址只能在内部网络访问不能从互联网直接访问。服务器可以做一个 “地址过滤”如果用户输入的地址属于 “内网地址段”就拒绝访问。比如用户输入http://192.168.1.100服务器一看 “这是内网地址”直接不执行请求避免被用来探测内网。五、总结SSRF 的本质SSRF 的核心就是 “利用服务器的‘内网访问权限’帮用户做用户自己做不到的事”—— 因为服务器能进内网用户进不去所以用户骗服务器当 “跳板”攻击内网。防御的关键也很简单不让服务器 “无脑听话”通过白名单、禁协议、拦内网地址让服务器只做 “安全的事”。以上属于OWASP Top10大概讲述并不全大家可以做个初步了解下面一些漏洞本质上也是属于OWASP top10里面的这里单列出来详细解释一些。一、XSS跨站脚本攻击在网页里 “藏恶意代码”偷用户凭证1. 通俗理解给网页 “贴小广告”你可以把「网页」想象成 “小区公告栏”正常情况下公告栏只贴物业发的通知正常内容而 XSS 漏洞就是 “有人偷偷在公告栏贴了一张‘带病毒的小广告’”—— 其他业主用户看公告时会不小心触发小广告里的恶意操作。核心逻辑攻击者把 “恶意脚本代码” 注入到网页里用户打开网页时浏览器会自动执行这段代码从而窃取用户的登录凭证如 Cookie、Token。2. 漏洞原理分 3 种常见类型最严重的是“存储型 XSS”1存储型 XSS危害最大代码存在服务器里比如某论坛允许用户 “发表评论”但没过滤评论里的脚本代码攻击者在评论框里输入scriptalert(document.cookie)/script #script/script是html标签 #alert(document.cookie)是 JavaScript 代码这段代码的作用弹出当前用户的 Cookie——Cookie 是登录凭证有了它就能冒充用户登录服务器没过滤直接把这段 “带脚本的评论” 存到数据库里其他用户打开这个论坛帖子时服务器会把 “含恶意脚本的评论” 返回给用户的浏览器浏览器以为这段脚本是 “网页正常代码”自动执行弹出用户自己的 Cookie攻击者通过代码把 “偷到的 Cookie” 发送到自己的服务器拿到后直接用 Cookie 登录用户账号偷看私信、冒充发帖HTML 标签 JavaScript 代码可以实现的功能远远不止这些。2反射型 XSS代码临时 “路过” 服务器不存储比如某网站的 “搜索功能” 有漏洞攻击者构造一个含恶意代码的搜索链接http://网站.com/search?keyscript偷Cookie的代码/script攻击者把这个链接发给用户比如伪装成 “中奖链接”用户点进去服务器把 “搜索关键词里的恶意代码” 直接返回给浏览器没过滤浏览器执行代码偷取用户 Cookie发送给攻击者。特点代码不存服务器只靠 “诱骗用户点链接” 触发一般常用于钓鱼攻击危害比存储型小但更隐蔽。3DOM 型 XSS代码只在用户浏览器里执行不经过服务器比如某网页的 “导航栏” 会根据 URL 参数显示内容但没过滤参数攻击者构造链接http://网站.com/#script偷Cookie的代码/script用户点链接后网页的 JavaScript 代码会 “读取 URL 里的 [#后面内容”](javascript:并显示在导航栏上因为没过滤恶意脚本被直接执行偷取 Cookie特点服务器完全没参与漏洞在前端代码里更难被服务器层面的防护检测。3. 典型危害偷登录凭证Cookie、Token冒充用户登录弹广告、刷流量控制用户浏览器自动打开垃圾网站篡改网页内容比如把 “登录按钮” 改成 “转账按钮”诱骗用户点击。二、命令执行让服务器 “帮你运行系统命令”直接控服务器1. 通俗理解给服务器 “下非法指令”你可以把「服务器」想象成 “餐厅后厨”正常情况下后厨只执行 “服务员传过来的点餐指令”比如 “做一份炒饭”而命令执行漏洞就是 “有人冒充服务员给后厨传了‘把厨房的煤气罐搬出来’的危险指令”—— 后厨没核实真的执行了。核心逻辑攻击者通过网页输入让服务器执行 “系统命令”比如 Linux 的ls、Windows 的dir从而控制服务器文件、进程甚至拿到服务器最高权限。2. 漏洞原理以 “ping 命令功能” 为例最经典场景很多网站有 “网络诊断” 功能用户输入 IP 地址服务器会执行ping 输入的IP命令检测网络是否通畅。如果没过滤用户输入就会触发命令执行正常情况用户输入8.8.8.8谷歌 DNS服务器执行ping 8.8.8.8返回 “ping 通了” 的结果攻击情况攻击者输入8.8.8.8 ls是系统命令的 “拼接符”表示 “先执行前面的命令再执行后面的”服务器没过滤 ls直接执行拼接后的命令ping 8.8.8.8 ls执行结果先 ping 通 8.8.8.8再执行lsLinux 命令列出当前目录下的所有文件服务器把 “文件列表” 返回给攻击者攻击者就能看到服务器里存了什么文件下一步可以执行cat 敏感文件读取文件内容、rm -rf /删除所有文件极端情况。3. 典型危害查看服务器文件比如读数据库密码文件、网站配置文件上传恶意程序比如执行wget 恶意木马地址下载木马到服务器控制服务器进程比如执行kill 关键进程让网站崩溃拿到服务器最高权限比如执行sudo su成为 root 用户完全掌控服务器。三、文件包含让服务器 “加载恶意文件”把恶意代码当自己的代码执行1. 通俗理解给服务器 “喂毒文件”你可以把「服务器」想象成 “学生”正常情况下学生只 “读老师发的教材”正常代码文件而文件包含漏洞就是 “有人冒充老师给学生发了‘带错误答案的假教材’”—— 学生没核实真的按假教材内容学习执行代码。核心逻辑服务器的代码里有 “包含其他文件” 的功能比如 PHP 的include函数如果包含的 “文件路径” 能被用户控制攻击者就能让服务器包含 “自己上传的恶意文件”从而执行恶意代码。2. 漏洞原理以 PHP 网站的 “模板加载” 为例正常情况下网站想让用户选 “cn” 就加载 “cn.php”中文模板选 “en” 就加载 “en.php”英文模板代码逻辑是include $_GET[lang] . .php;用户输入 “langcn”就变成include cn.php没问题但攻击者可以钻空子关键漏洞就在这PHP 的include函数有个 “坏毛病”—— 如果找不到要加载的.php文件它会 “退而求其次”去读同名的其他文件比如/tmp/evil.txt并且把这个 txt 文件里的内容当成 PHP 代码执行。结果就是攻击者传的evil.txt被当成 PHP 代码执行服务器被远程控制。核心问题用户输入直接决定了 “服务器要加载哪个文件”且没过滤危险路径。先偷偷传一个 “写着恶意代码的 txt 文件” 到服务器临时文件夹比如/tmp/evil.txt内容是能控制服务器的代码然后在网址里输入lang/tmp/evil注意没写后缀服务器会把它拼成include /tmp/evil.php但服务器里根本没有evil.php3. 典型危害和命令执行类似能读文件、写文件、执行系统命令更隐蔽恶意文件可以是 “.txt”“jpg” 等非脚本后缀绕过文件上传限制常和 “文件上传漏洞” 配合先上传恶意文件再用文件包含漏洞执行。四、文件上传漏洞给服务器 “传恶意文件”把后门藏进服务器1. 通俗理解给服务器 “寄炸弹包裹”你可以把「服务器的 “文件上传功能”」想象成 “小区的快递接收点”正常情况下只收 “合法快递”比如图片、文档而文件上传漏洞就是 “有人把‘炸弹’伪装成‘普通包裹’寄进去”—— 接收点没检查真的收下了后续 “炸弹” 被触发。核心逻辑网站的 “文件上传功能”如头像上传、附件上传没做好 “文件类型 / 内容过滤”攻击者把 “恶意脚本文件”如.php、.jsp伪装成 “合法文件”如.jpg、.png上传到服务器后续通过其他方式如文件包含、解析漏洞执行这个恶意文件。2. 漏洞原理以 “头像上传” 为例最常见场景某社交网站允许用户上传头像限制 “只能传.jpg/.png 图片”但只检查 “文件后缀名”没检查 “文件内容”攻击者准备一个 “伪装成图片的 PHP 木马”新建一个文件内容是?php eval($_POST[cmd]);?一句话木马把文件后缀改成.jpg命名为evil.jpg伪装成图片攻击者在 “头像上传” 页面选择evil.jpg上传服务器只检查后缀是.jpg认为是合法图片允许上传存到/upload/evil.jpg攻击者利用 “服务器的解析漏洞”比如 Apache 的多后缀解析访问http://网站.com/upload/evil.jpg.php—— 服务器把evil.jpg当作 PHP 执行木马被执行攻击者用工具连接控制服务器。具体大家可以多在upload靶场练习一下。3. 典型危害植入后门恶意文件长期存在服务器攻击者随时能连接批量攻击通过后门控制多台服务器组成 “僵尸网络”窃取数据通过后门读取服务器的数据库、用户信息破坏服务器通过后门执行rm -rf /等危险命令。五、点击劫持给网页 “盖一层透明伪装”骗用户点错按钮1. 通俗理解给网页 “贴透明胶布”你可以把目标网页想象成 “一张写着‘按红色按钮领奖品’的纸”点击劫持就是 “有人在这张纸上盖了一层透明的‘另一张纸’上面写着‘按红色按钮确认转账’”—— 用户以为在按 “领奖品” 按钮实际按的是 “转账” 按钮。核心逻辑攻击者用iframe网页嵌套技术把 “目标网页”比如转账页面、登录页面嵌套到自己的钓鱼网页里再用透明层盖住目标网页的关键按钮同时在透明层上放 “诱导用户点击的伪装按钮”用户点击伪装按钮时实际点击的是目标网页的关键按钮。2. 漏洞原理以 “冒充用户点赞” 为例某社交网站的 “点赞” 按钮没做点击劫持防护攻击者想骗用户给某条恶意帖子点赞攻击者做一个钓鱼网页内容是 “点击领取 100 元红包”并在网页里用iframe嵌套 “社交网站的帖子页面”包含点赞按钮攻击者用 CSS 样式把iframe设置为 “透明”并精准定位到 “点赞按钮” 和 “红包领取按钮” 重叠攻击者把钓鱼网页发给用户用户看到 “点击领红包”点击按钮因为iframe透明且重叠用户实际点击的是 “社交网站的点赞按钮”不知不觉给恶意帖子点了赞更危险的场景如果嵌套的是 “转账页面”用户点击 “领红包” 时实际点击的是 “确认转账” 按钮导致资金损失。3. 典型危害冒充用户操作点赞、关注、发评论、下单诱骗用户输入敏感信息比如嵌套登录页面骗用户输入账号密码触发危险操作转账、授权、删除数据。六、XXE外部实体注入给 “文档解析” 喂 “恶意指令”偷服务器文件1. 通俗理解给 “文档翻译官” 喂 “假翻译规则”你可以把服务器的 “XML 文档解析功能”想象成 “翻译官”正常情况下翻译官只按 “官方翻译规则”正常 XML 语法翻译文档而 XXE 漏洞就是 “有人给翻译官塞了‘假的翻译规则’规则里藏着‘让翻译官偷办公室文件’的指令”—— 翻译官没核实真的按假规则做了。核心逻辑XML 文档支持 “外部实体引用”可以引用外部文件的内容如果服务器的 XML 解析器没禁用 “外部实体”攻击者可以构造 “含恶意外部实体的 XML 文档”让服务器解析时读取 “服务器本地的敏感文件”并返回给攻击者。2. 漏洞原理以 “XML 格式的接口” 为例某网站的 “订单提交接口” 支持接收 XML 格式的数据比如orderid123/id/order服务器用 XML 解析器处理这个 XML正常情况用户发送正常 XML服务器解析后处理订单攻击情况攻击者构造 “含恶意外部实体的 XML”?xml version1.0? !DOCTYPE test [ !ENTITY evil SYSTEM file:///etc/passwd !-- 定义外部实体evil引用服务器的/etc/passwd文件Linux用户信息文件 -- ] orderidevil;/id/order !-- 在订单ID里引用evil实体即把/etc/passwd的内容当作订单ID --服务器的 XML 解析器没禁用外部实体会按 XML 内容执行先读取/etc/passwd文件的内容把文件内容替换到evil;的位置生成新的 XMLorderidroot:x:0:0:root:/root:/bin/bash.../id/order服务器处理订单时把 “含 /etc/passwd 内容的订单 ID” 返回给攻击者攻击者拿到服务器的用户信息后续可以尝试暴力破解用户密码。3. 典型危害读取服务器本地文件如/etc/passwd、数据库配置文件、网站源代码探测内网服务通过引用内网地址比如http://192.168.1.100:3306判断内网服务是否存在远程代码执行部分 XML 解析器支持可执行系统命令危害极大。最后建议大家多打一下靶场比如sqllibuploadpikquDVWA然后结合ctf一起练习慢慢理会各个漏洞的原理以及实现方式。文章来自网上侵权请联系博主互动话题如果你想学习更多**网络安全挖漏洞方面**的知识和工具可以看看以下面网络安全学习资源分享:给大家分享一份全套的网络安全学习资料给那些想学习 网络安全的小伙伴们一点帮助①网络安全学习路线②20份渗透测试电子书③安全攻防357页笔记④50份安全攻防面试指南⑤安全红队渗透工具包⑥网络安全必备书籍⑦100个漏洞实战案例⑧安全大厂内部视频资源⑨历年CTF夺旗赛题解析对于从来没有接触过网络安全的同学我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线大家跟着这个大的方向学习准没问题。因篇幅有限仅展示部分资料完整版的网络安全学习资料已经上传CSDN朋友们如果需要可以在下方CSDN官方认证二维码免费领取【保证100%免费】
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

徐州企业免费建站商业网络收费标准

还在为英雄联盟繁琐的操作流程烦恼吗?LeagueAkari作为基于LCU API开发的完整工具集,能够彻底改变你的游戏体验。这款免费开源软件提供战绩查询、自动秒选、游戏流程自动化等强大功能,让普通玩家也能享受职业选手般的操作效率。 【免费下载链接…

张小明 2026/1/11 3:50:43 网站建设

网站推广代运营多少钱上海浦东新区网站

Linux内核探秘:从ext4日志机制看现代文件系统的崩溃恢复艺术 【免费下载链接】linux Linux kernel source tree 项目地址: https://gitcode.com/GitHub_Trending/li/linux 在数字世界的每一次数据写入背后,都隐藏着一场关于安全与性能的精心平衡。…

张小明 2026/1/10 0:25:51 网站建设

湖南定制响应式网站有哪些网页设计模板图片大全

Windows 10 入门指南 1. 探索屏幕 在开始使用 Windows 10 之前,了解屏幕的基本元素是很有必要的。这些元素包括开始屏幕的应用磁贴、动态磁贴、用户磁贴和桌面磁贴等。了解这些元素的位置和用途,将有助于你更好地操作 Windows 及其应用程序。 1.1 探索 PC 屏幕 PC 屏幕的…

张小明 2026/1/4 20:07:29 网站建设

数据展示网站模板vip影视网站怎么做的

Langchain-Chatchat 能否实现问答结果 RTF 导出? 在企业知识管理日益依赖智能化工具的今天,如何将 AI 生成的内容以专业、可编辑的形式留存和流转,已成为一个不可忽视的实际需求。许多用户在使用基于大语言模型(LLM)的…

张小明 2026/1/7 16:59:18 网站建设

设计素材网站上的素材可以商用吗智能小程序开发者平台

PostgreSQL 中的存储过程和触发器使用指南 1. PostgreSQL 过程语言概述 PostgreSQL 数据库引擎支持使用过程语言来创建自定义函数,这些函数可直接在 SQL 命令中使用。过程语言能在数据库引擎内部执行,减少应用执行时间、提升性能,还为函数存储提供标准位置,方便所有数据库…

张小明 2026/1/4 20:07:24 网站建设

网站关键词没有排名html怎么做动态页面

EmotiVoice技术解析:情感编码如何提升TTS表现力 在虚拟主播深情演绎剧情、游戏角色因愤怒而咆哮、AI助手用温柔语调安慰用户的时代,语音合成早已不再满足于“能听”。人们期待的是有情绪、有个性、有温度的声音。然而,传统TTS系统尽管发音准确…

张小明 2026/1/4 20:07:22 网站建设