网络安全学习-WEB安全常见漏洞

article/2025/9/22 11:14:35

注入类漏洞

SQL注入漏洞
定义

sql注入漏洞,就是将用户可控的数据拼接到了sql语句当中,一起提交到了数据库执行。

攻*击者通过注入语句,改变sql执行的逻辑,通过控制部分sql语句,攻击者可以查询到数据库钟任何自己需要的数据,利用数据库的一些特性们,可以直接获取数据库服务器的系统权限。

网络安全学习-WEB安全常见漏洞_数据

漏洞分类

Error-based SQL injection 报错型注入
Boolean-based blind SQL injection 布尔型注入
Time-based blind SQL injection 基于时间延迟注入

提交的参数类型

数字型
字符型
搜索型

示例-报错型

网络安全学习-WEB安全常见漏洞_sql_02
以上注入,又被叫做万能密码,可以实现一些网站用户登录

实例-bool型

在靶场环境,输入http://localhost:81/sqli/Less-8/?id=1打开该平台,这时会向数据库送人一条查询:

1.SELECT * FROM table_name WHERE id=1

显示如下界面

网络安全学习-WEB安全常见漏洞_数据库_03

当攻击者使用嵌入(')的查询,即:

http://localhost:81/sqli/Less-8/?id=1’

网络安全学习-WEB安全常见漏洞_sql_04

黄色文本消失,也没有得到任何错误信息,使用其他攻击方式的情况于此相同。

攻击者可以通过盲注来进行验证,该注入查询返回的一定是TRUE或者FALSE。

再次验证是否为布尔型注入,插入判断语句:

http://localhost:81/sqli/Less-9/id=1 AND 1=1 --+

其中 --+在数据库中代表注释的意思

对应的后端数据库查询为:

1.SELECT * FROM table_name WHERE id=1’ AND 1=1

获取数据库名等信息

首先确定数据库中字符串长度,简单来说就是获取数据名的长度。

http://localhost:81/sqli/Less-9/id=1’ AND (length(database())=1 -+

确定页面没反应,则认为返回的是FALSE,意味着当前数据库名的长度不等于1

尝试判断数据库名的长度为2

http://localhost:81/sqli/Less-9/id=1’ AND (length(database())=2 --+

当尝试判断数据库名的长度为8的时候,

http://localhost:81/sqli/Less-9/id=1’ AND (length(database())=8 --+

此时页面有变化,显示TRUE.可以判断出数据名为8。通过一些自动化工具,自动化遍历出该信息。

计算机无法理解人类的语言,可以通过ASCII码,将字符集中的每一个符号都对应一个整数,比如字母,数字,标点符号,特殊字符和操作符号。

可以使用ASCII码枚举出这8个字符。

网络安全学习-WEB安全常见漏洞_数据库_05

下一条查询使用关键字ascii substr检查出当前数据库名中的第一个字符串对应ASCII码是否大于100

http://loaclhost:81/sqli/Less-8/?id=1’ AND (ascii(substr((selectdatabase()),1,1))) > 100 --+

网络安全学习-WEB安全常见漏洞_sql_06

可以看出第一个字符串的ASCII的码确实大于100.

同理,可以尝试判断第二个字符的ASCII是多少

http://loaclhost:81/sqli/Less-8/?id=1’ AND (ascii(substr((selectdatabase()),2,1))) > 101 --+

按照如上方法,可以得到全部8个字符

网络安全学习-WEB安全常见漏洞_数据库_07

sql注入工具

sqlmap

自己开发脚本
sql注入安全方法措施

使用参数化查询

网络安全学习-WEB安全常见漏洞_数据库_08

严格限定参数类型和格式,明确参数检验的边界,必须在服务端正式处理之前对提交的数据的合法性进行检查;
验证输入/参数过滤,即黑/白名单验证

XSS-跨站脚本攻击

XSS漏洞,从本质上来说就是将数据注入到了静态脚本代码中,(HTML或者javascript等),当浏览器渲染了整个HTML文档的过程中,

触发了注入的脚本,导致了XSS攻击的发生

网络安全学习-WEB安全常见漏洞_数据库_09

XSS的危害

客户端

窃取cookie
转发邮件
放置木马
刷流量

服务器端

串改页面
蠕虫
内网扫描

XSS的分类

Reflected XSS ,反射型,非持久

代码一般存在于连接中,请求这样的链接的时候,跨站代码经过服务端反射回来,这类跨站代码一般不存储到服务端

Stored XSS ,存储型,持久

这时利用起来最方便的跨站类型,跨站代码存储于服务端,比如数据库中

DOM based XSS

一种基于DOM的跨站,这是客户端脚本自身解析不正确导致的安全问题。

反射性XSS

过程如下

网络安全学习-WEB安全常见漏洞_sql_10

用户正常登录
攻击者把恶意的URL提交给用户
用户请求恶意攻击者的URL
服务器对攻击者的JS做出回应
攻击者的JS在客户端浏览器执行
用户的浏览器向攻击者发送会话令牌
攻击者劫持用户会话

利用页面参数调用

网络安全学习-WEB安全常见漏洞_数据_11

使用alert 弹框测试

存储型XSS

网络安全学习-WEB安全常见漏洞_sql_12

用户正常浏览信息
通过发帖向服务器发送存在恶意代码的帖子
用户查看发帖网页,查看帖子内容
服务器将恶意的代码发送给用户
用户端浏览器执行恶意代码

存储型XSS可能出现的位置

用户注册类,用户名,注册邮箱,手机号,个人说明,留言评论,发布文章公告

网络安全学习-WEB安全常见漏洞_数据_13

基于DOM型XSS

不可控的危险数据,未经过过滤传入存在缺陷的,javascript代码处理,最终春发DOM XSS漏洞

网络安全学习-WEB安全常见漏洞_数据库_14

与前面两种XSS的区别就在于xss代码不需要服务器解析响应的直接参与,触发xss靠的是浏览器端的DOM解析。

通过前端脚本修改页面的DOM节点形成的XSS,代码可见,从前端获取到的DOM中的数据在本地执行,从效果上来说也是反射型XSS

XSS的防范措施

程序开发者:

对用户提交的内容进行合法性校验
对用户提交的内容进行转义处理
对用户输入的长度进行限制
限制Cookie到期时间

网络安全学习-WEB安全常见漏洞_数据_15

跨站脚本伪造CRSF

在用户会话下对某个请求发出GET/POST请求,而请求并非用户自愿发出
网站通过cookie识别用户,当用户在某个网站成功进行身份验证后,浏览器会得到一个标识其身份的COOKIE,只要不关闭浏览器或者退出,以后访问这个网站都会带上这个cookie
如果这期间被人诱骗了请求了这个网站的url,则相当于发出了身份认证请求后,可能会执行一些用户不想做的敏感操作
服务器接受到攻击者伪造的来自浏览器的请求并执行

网络安全学习-WEB安全常见漏洞_sql_16

缺陷代码举例

A站点

网络安全学习-WEB安全常见漏洞_数据库_17

恶意站点上的代码

网络安全学习-WEB安全常见漏洞_数据库_18

CSRF和XSS的区别
攻击流程

攻击者发现XSS漏洞--构造代码--发送给受害人--受害人打开--攻击者获取受害人的cookie--完成攻击
攻击者发现CSRF漏洞--狗仔代码--发送给受害人--受害人打开--受害人执行代码--完成攻击

区别

XSS容易发现,因为攻击者需要登录后台完成攻击,管理员可以看日志发现攻击者
CSRF不同,他的攻击一直是管理员自己实现的,攻击者只负责了构造代码

CSRF防护

HTTP Referer是header的一部分,当浏览器向web服务器发送请求的时候,一般会带上Referer,告诉服务器我是从那个页面链接过来的
request.getHeader("REFERER");
通过检查Referer的值,可以判断请求是合法的还是非法的,那么Refere Check可以用于监控CSRF攻击的发生

文件上传漏洞

非法文件长传产生的主要原因就是在服务器端没有对用户上传的文件类型进行校验或者校验不完整,导致用户可以长传恶意脚本到服务器

网络安全学习-WEB安全常见漏洞_数据_19

文件上传绕过

网络安全学习-WEB安全常见漏洞_数据_20

代码实例

网络安全学习-WEB安全常见漏洞_数据库_21

可以利用该漏洞上传webshell,病毒以及其他恶意代码能够进行进一步提权,获取数据库信息(拖库)甚至拿到服务器权限

防护

在不影响业务的前提下

服务器端添加上传文件类型白名单,校验功能,仅允许业务需求类型上传
服务器端添加上传文件名特殊字符过滤机制,防止特殊字符引起的文件解析漏洞
服务器端添加上传文件重命名机制,包含文件后缀格式重命名
服务器端添加上传文件内容识别机制,防止恶意文件伪装成图片等类型文件上传
服务器端到单独创建上传目录,并限制目录解析权限,杜绝目录解析网页类型文件路径遍历-任意文件下载

路径遍历漏洞原因

服务器端,接受浏览器传来的文件名称,在服务器端拼凑成文件的绝对路径,并且输出流下载

网络安全学习-WEB安全常见漏洞_数据_22

防护

方法1

要下载的文件地址保存到数据库中
文件ID使用随机数命名
文件路径保存到数据库,用户提交文件对应ID下载文件
下载文件之前做权限的判断
记录文件下载日志

方法2:

针对文件的访问,直接给出文件路径的链接,如:

1.<a href ="http://xx.xx.xx.xx//upload/file1.jgp">

失效的身份认证和会话劫持

用户身份验证凭证没有使用哈希或者加密保护
认证凭证可以猜测
Sessionid暴露在URL
Sessionid没有超时限制
密码,会话ID和其他认证凭据使用未加密传输

越权

垂直越权漏洞

也叫权限提升漏洞,由于WEB应用程序没有做权限控制或者仅仅在菜单上做了权限控制,导致的恶意用户只要猜测其他管理页面的URL,就可以访问或者控制其他角色拥有的数据或者页面,达到权限提升的目的
水平越权漏洞

WEB用用程序接收到用户请求,修改某条数据的时候,没有判断数据的所属人,或者判断数据所属人的时候,从用户提交的REQUEST参数(用户可以控制数据)中,获取了数据所属人的ID,导致恶意攻击者可以通过变换数据ID,或者更换所属人id,导致恶意攻击者可以通过变换数据ID,或者变换所属人id,修改不属于自己的数据,恶意用户可以栓除或者修改其他人的数据。

远程命令执行漏洞

strust2远程命令执行

攻击者通过构造特定数带入OGNL表达式即可能被解析并且执行,而OGNL可以用来获取和设置java对象的属性,同时也可以对服务器端对象进行修改,所以只要绕开strust2的一些安全策略,攻击者甚至可以执行系统命令进行系统攻击

在strust2中,DefaultActionMapper类支持以action,redirect:.redirectAction作为导航或者是重定向前缀,但是这些前缀后面同时可以跟OGNL表达式,由于strust2中没有对这些前缀进行过滤,导致利用OGNL表达式调用java静态方法执行任意系统命令。

java反序列化漏洞

序列化 ObjectOutputStream类-->writeObject()

该方法对参数指定的obj对象进行序列化,把字节序列写到一个目标输出流中,按照java的标准约定是给文件一个.ser扩展名

反序列化ObjectOutputStream类-->readObject()

该方法从一个源输入流中读取字节序列,再把他们反序列化为一个对象,并将其返回.

如果java应用对用户输入,即不可信数据做了反序列化处理,那么攻击者可以通过构造恶意输入,让反序列化产生非预期的对象,非预期的对象在产生过程中就有可能带来任意代码执行.


http://chatgpt.dhexx.cn/article/g8R3UJA4.shtml

相关文章

网站安全漏洞--大全

原文网址&#xff1a;网站安全漏洞--大全_IT利刃出鞘的博客-CSDN博客 简介 本文介绍网站常见的一些安全漏洞。 常见的漏洞有&#xff1a;SQL 注入、越权操作、跨站脚本攻击(XSS)、跨站请求伪造(CSRF)、DDoS 攻击、JSON 劫持、暴力破解、HTTP 报头追踪漏洞、信息泄露、文件上…

Springboot -- 网络安全漏洞处理

文章目录 不安全的 HTTP 方法以及 Nginx 屏蔽版本号显示说明检测方式不安全的 HTTP 方法 处理代码屏蔽 Nginx 版本号显示 点击劫持漏洞说明什么是ClickJacking检测方式处理代码 XSS跨站脚本攻击说明检测方式处理代码 &#xff08;参考网上的代码&#xff0c;主要是对传入的信息…

网络安全实验3 漏洞扫描

赞赏码 & 联系方式 & 个人闲话 【实验名称】漏洞扫描 【实验目的】 1.熟悉X-Scan工具的使用方法&#xff1b; 2.熟悉FTPScan工具的使用方法&#xff1b; 3.会使用工具查找主机漏洞 4.学会对弱口令的利用 5.了解开启主机默认共享以及在命令提示下开启服务的方法 …

网络安全技能大赛D模块常规漏洞加固详解

一、 说明&#xff1a; 1.所有截图要求截图界面、 字体清晰&#xff1b; 2.文件名命名及保存&#xff1a; 网络安全模块 D- XX&#xff08;XX为工位号&#xff09;&#xff0c; PDF 格式保存&#xff1b; 3.文件保存到 U盘提交。 4.linux 系统 root 密码 123456&#xff1b; 请…

2022年统计的27个网络安全漏洞数据信息

网络安全漏洞通常是指软件代码中允许攻击者访问网络或系统的缺陷。漏洞使企业和个人面临一系列威胁&#xff0c;包括恶意软件和帐户接管。 他们的漏洞利用存在大量可能的漏洞和潜在后果。美国政府的国家漏洞数据库 (NVD)由常见漏洞和暴露 (CVE) 列表提供&#xff0c;目前有超过…

计算机漏洞分几个等级,网络安全漏洞可以分为各个等级,A级漏洞表示?

满意答案 某匪kevin 2013.04.04 采纳率&#xff1a;44% 等级&#xff1a;11 已帮助&#xff1a;5835人 答案时B ----------------分级原则----------- 对漏洞分级有助于在漏洞被发现后&#xff0c;提供用户更多的信息以便于更快的给漏洞定位&#xff0c;并决定下一步采取的措…

网络安全常见漏洞原理及其防御

目录 1.SQL注入 1.1原理 1.2注入演示 1.3防御 1.4 补充 2.xss&#xff08;跨站脚本攻击&#xff09; 2.1 原理 2.2 注入演示 2.3防御 3.csrf&#xff08;跨站点请求伪造&#xff09; 3.1原理 3.2 注入演示 3.3 防御 4.文件上传 4.1原理 4.2 攻击演示 4.3防御 1.…

医疗器械网络安全漏洞自评报告模板

提示&#xff1a;编制医疗器械网络安全漏洞自评报告要点解析 文章目录 1. 目的2. 引用文件3. CVSS漏洞等级3.1 概述3.1.1 适用范围说明3.1.2 CNNVD-ID定义3.1.3 编码原则3.1.4 CNNVD-ID语法介绍 3.2 指标分析3.2.1 基本指标3.2.1.1可用性指标1)攻击向量2)攻击复杂性3)所需权限4…

Web网络安全漏洞分析,SQL注入原理详解

本文主要为大家介绍了Web网络安全漏洞分析SQL注入的原理详解&#xff0c;有需要的朋友可以借鉴参考下&#xff0c;希望能够有所帮助&#xff0c;祝大家多多进步&#xff0c;早日升职加薪 一、SQL注入的基础 1.1 介绍SQL注入 SQL注入就是指Web应用程序对用户输入数据的合法性没…

信息安全技术 网络安全漏洞分类分级指南(GB/T 30279-2020 )

文章目录 前  言1 范围2 规范性引用文件3 术语和定义4 缩略语5 网络安全漏洞分类5.1 概述5.2 代码问题5.3 配置错误5.4 环境问题5.5 其他 6 网络安全漏洞分级6.1 概述6.2 网络安全漏洞分级指标6.3 网络安全漏洞分级方法 附 录 A&#xff08;规范性附录&#…

计算机网络存在的漏洞,常见的计算机网络安全漏洞有哪些

当今的世界呈现网络信息化、网络全球化的发展大趋势。因此&#xff0c;我们应该竭尽全能地享受其带来的优势和便利&#xff0c;让信息网络为人类的生活进行健康服务。同时&#xff0c;我们还应该采取一切措施将各类危害网络信息安全的病毒清扫干净。只有防患于未然&#xff0c;…

信安软考 第十三章 网络安全漏洞防护技术原理

一、网络安全漏洞概述 1.1 网络安全漏洞概念 网络安全漏洞又称为脆弱性&#xff0c;简称漏洞。漏洞一般是致使网络信息系统安全策略相冲突的缺陷&#xff0c;这种缺陷通常被称为安全隐患。安全漏洞的影响主要有机密性受损、完整性破坏、可用性降低、抗抵赖性缺失、可控性下降、…

网络安全漏洞检测

漏洞检测 任务说明&#xff1a;仅能获取Server3的IP地址 靶机场景&#xff1a;Server3 172.16.101.250 在MSF工具中用search命令搜索MS12020 RDP拒绝服务攻击模块&#xff0c;将回显结果中的漏洞披露时间作为Flag值提交&#xff1b;&#xff08;如&#xff1a;2012-10-16&am…

网络安全常见十大漏洞总结(原理、危害、防御)

一、弱口令【文末福利】 产生原因 与个人习惯和安全意识相关&#xff0c;为了避免忘记密码&#xff0c;使用一个非常容易记住 的密码&#xff0c;或者是直接采用系统的默认密码等。 危害 通过弱口令&#xff0c;攻击者可以进入后台修改资料&#xff0c;进入金融系统盗取钱财…

网络安全常见十大漏洞总结(原理、危害、防御)_网络安全十大漏洞

一、弱口令【文末福利】 产生原因 与个人习惯和安全意识相关&#xff0c;为了避免忘记密码&#xff0c;使用一个非常容易记住 的密码&#xff0c;或者是直接采用系统的默认密码等。 危害 通过弱口令&#xff0c;攻击者可以进入后台修改资料&#xff0c;进入金融系统盗取钱财…

【python】采集每日必看黄色软件数据~

前言 大家早好、午好、晚好吖 ❤ ~欢迎光临本文章 环境使用: Python 3.8 Pycharm 模块使用: requests >>> pip install requests re csv 安装模块&#xff1a;win R 输入cmd 输入安装命令 pip install 模块名 如果出现爆红 可能是因为 网络连接超时 切换国内…

HTML5游戏化互动学习平台,h5游戏平台_触摸型互动slg黄油手游

乐趣H5游戏平台是目前中国最大的H5手机网页游戏平台&#xff0c;提供在线玩的H5手机小游戏&#xff0c;最火爆的微信小游戏&#xff0c;最好玩的手机小游戏排行榜&#xff0c;让您能结识到H5游戏玩家和H5小游戏里的朋友&#xff0c;无需下载&#xff0c;点击马上玩&#xff01;…

中国十大最狠的流氓网站曝光!送查杀流氓的工具

推动了流氓软件的发展?谁又从流氓软件中获利,揭开流氓软件背后的始佣者,网易科技独家选出中国十大流氓网站. 以下是网易科技评选的十大流氓网站: 1、3721.com(中文实名) 这个是流氓软件的开山鼻祖,就是因它将中国互联网带入到一个流氓时代,这里就不作再多说,相信大多数人…

注意了!浏览色情网站被短信通知检讨?可能是诈骗!

来源 | 澎湃新闻、九派视频等 针对“网传有学生用校园网浏览色情网站被学校学工部短信通知深刻检讨”一事&#xff0c;9月23日&#xff0c;电子科技大学党委学生工作部相关工作人员告诉记者&#xff0c;已关注到网络上传播的图片&#xff0c;经查&#xff0c;该校学工部未发过此…

宠物网站

宠物网站 文章目录 宠物网站1.宠物网站需求分析2.宠物网站设计3.宠物网站实现1.创建HTML文件2.网页布局设计3.网页布局实现3.1共有部分&#xff1a;3.2.不同的模块&#xff1a;3.2.1.首页页面设计3.2.2.萌宠页面设计3.2.3.萌宠医院页面设计3.2.4萌宠食品页面设计3.2.5萌宠资讯页…