【小迪安全day11】WEB漏洞——必懂知识点

2023-10-23 23:40

本文主要是介绍【小迪安全day11】WEB漏洞——必懂知识点,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

讲解各种WEB层面上的有哪些漏洞类型,具体漏洞的危害等级,以及简要的影响范围测试进行实例分析,思维导图中的漏洞也是我们将要学习到的各个知识点,其实针对漏洞的形成原理,如何发现,如何利用。

右侧的漏洞是重点:
在这里插入图片描述

1、简述

应用场景

CTF,SRC,红蓝对抗,实战等。

简要说明以上漏洞危害情况

每个漏洞的危害情况都是不同的,得到的东西也不同,影响范围也不一样;
例如:SQL注入直接获取到关于网站对应数据库里面的权限,将会影响到网站和服务器数据库,获得权限;

简要说明以上漏洞等级划分

高危漏洞:SQL注入、文件上传、文件包含、代码执行、未授权访问、命令执行(直接影响到网站权限,获得数据或者网站很敏感的东西)

中危漏洞:反序列化、逻辑安全

低危漏洞:XSS跨站(一般不考)、目录遍历、文件读取

漏洞的等级决定漏洞的重要程度,高危漏洞是重点;

简要说明以上漏洞重点内容

CTF:文件上传、SQL注入、反序列化(重点)、代码执行

SRC:以上图片的漏洞都有,比较多的有逻辑安全

红蓝对抗:涉及到高危漏洞,和实战相近,重点在获取权限

简要说明以上漏洞形式问题

随着安全的发展,漏洞只会越来越少,但是不是完全没有,自己找不到漏洞是因为没有做好信息收集,原理没学好,测试的时候会出问题,找不到漏洞也是自己学习没到位;

2、SQL注入—数据库操作危害

SQL Inject 漏洞攻击流程

第一步:注入点探测
自动方式:使用web漏洞扫描工具,自动进行注入点发现
手动方式:手工构造sq| inject测试语句进行注入点发现
第二步:信息获取
通过注入点取期望得到的数据。
1.环境信息:数据库类型,数据库版本,操作系统版本,用户信息等。
2.数据库信息:数据库名称,数据库表,表字段,字段内容(加密内容破解)
第三步:获取权限
获取操作系统权限:通过数据库执行shell,上传木马
常见的注入点类型:

数字型:

user_ id= $id

字符型:

user. id= '$id' 

搜索型:

text LIKE '%{$_ GET['search']}%'"

pikachu- SQL-Inject- 数字型注入

post型注入演示
下拉框随意点击一个数字
在这里插入图片描述
发现url中并没有传参,提交方式为post方式。
先测试这个输入点是否存在漏洞。正常逻辑我们输入一个id,之后返回数据,应该是后台在数据库中进行了查询,返回了姓名和邮箱可以认为语句是

select 字段1,字段2 from 表名 where id = 1

后端接收应该是: i d = id= id=_POST[‘id’]之后把接收到的参数传进去。
我们点击数字1,进行查询,之后打开burp查看抓包。
在这里插入图片描述
选中发送到Repeater,我们在输入点输入一段payload:1 or 1=1,点击提交
在这里插入图片描述
点击Render,可以查看返回界面。
在这里插入图片描述
结果就是它将所有的用户和邮箱全部返回在页面上。

3、目录遍历漏洞-源码结构泄漏危害

pikachu目录遍历
在这里插入图片描述
对比一下网站地址,做一些分析,例如:“=”后面是参数值
http://127.0.0.1/pikachu/vul/dir/dir_list.php?title=jarheads.php
http://127.0.0.1/pikachu/vul/dir/dir_list.php?title=truman.php

在jarheads.php和truman.php的文件下面创建一个文件1.php
在这里插入图片描述

访问该网址可以读取到1.php中的内容111111111
在这里插入图片描述

如果我们想来到网站的根目录WWW

问题:已知http://127.0.0.1/pikachu-master/vul/dir/dir_list.php?title=1.php
获取的是D:\phpStudy_64\phpstudy_pro\WWW\pikachu\vul\dir\soup\1.php的代码

那么获取下面的网站该怎么写?
D:\phpStudy_64\phpstudy_pro\WWW\2.php
获取这个2.php的代码

采取这样的写法,就可以获得
http://127.0.0.1/pikachu/vul/dir/dir_list.php?title=…/…/…/…/2.php
在这里插入图片描述

同理,我们可以利用这个漏洞获取网站的数据库config.inc.php文件
在这里插入图片描述

在这里插入图片描述

D:\phpStudy_64\phpstudy_pro\WWW*pikachu \vul\dir\soup* 1.php与D:\phpStudy_64\phpstudy_pro\WWW*pikachu*\inc\config.inc.php相隔三层,就加三个…/…/…/,然后加上要进入的文件夹inc
在这里插入图片描述

4、 文件读取漏洞-源码内容获取危害

还有一种目录遍历是:php遍历一个文件夹下所有文件和子文件的方法
在www文件下创建dir.php文件:
在这里插入图片描述

访问该网址可以获得pikachu文件下的目录结构,这种文件遍历获取网站源码结构,不能得到目录结构,但是能获取到单个文件的内容
在这里插入图片描述

5、文件上传漏洞-WEB 权限丢失危害

在这里插入图片描述

文件上传就是上传一个文件到对方的网站,拿到对方权限会留后门,将后门文件上传到网站目录下面去,能够直接植入后门
在这里插入图片描述

6、文件下载漏洞-补充演示拓展演示

在这里插入图片描述

复制下载链接:
在这里插入图片描述

http://127.0.0.1/pikachu/vul/unsafedownload/execdownload.php?filename=ai.png

http://127.0.0.1/pikachu/vul/unsafedownload/execdownload.php?filename=kb.png

这篇关于【小迪安全day11】WEB漏洞——必懂知识点的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/271234

相关文章

解决JavaWeb-file.isDirectory()遇到的坑问题

《解决JavaWeb-file.isDirectory()遇到的坑问题》JavaWeb开发中,使用`file.isDirectory()`判断路径是否为文件夹时,需要特别注意:该方法只能判断已存在的文... 目录Jahttp://www.chinasem.cnvaWeb-file.isDirectory()遇

JavaWeb-WebSocket浏览器服务器双向通信方式

《JavaWeb-WebSocket浏览器服务器双向通信方式》文章介绍了WebSocket协议的工作原理和应用场景,包括与HTTP的对比,接着,详细介绍了如何在Java中使用WebSocket,包括配... 目录一、概述二、入门2.1 POM依赖2.2 编写配置类2.3 编写WebSocket服务2.4 浏

浅析Rust多线程中如何安全的使用变量

《浅析Rust多线程中如何安全的使用变量》这篇文章主要为大家详细介绍了Rust如何在线程的闭包中安全的使用变量,包括共享变量和修改变量,文中的示例代码讲解详细,有需要的小伙伴可以参考下... 目录1. 向线程传递变量2. 多线程共享变量引用3. 多线程中修改变量4. 总结在Rust语言中,一个既引人入胜又可

SQL注入漏洞扫描之sqlmap详解

《SQL注入漏洞扫描之sqlmap详解》SQLMap是一款自动执行SQL注入的审计工具,支持多种SQL注入技术,包括布尔型盲注、时间型盲注、报错型注入、联合查询注入和堆叠查询注入... 目录what支持类型how---less-1为例1.检测网站是否存在sql注入漏洞的注入点2.列举可用数据库3.列举数据库

Spring常见错误之Web嵌套对象校验失效解决办法

《Spring常见错误之Web嵌套对象校验失效解决办法》:本文主要介绍Spring常见错误之Web嵌套对象校验失效解决的相关资料,通过在Phone对象上添加@Valid注解,问题得以解决,需要的朋... 目录问题复现案例解析问题修正总结  问题复现当开发一个学籍管理系统时,我们会提供了一个 API 接口去

使用IntelliJ IDEA创建简单的Java Web项目完整步骤

《使用IntelliJIDEA创建简单的JavaWeb项目完整步骤》:本文主要介绍如何使用IntelliJIDEA创建一个简单的JavaWeb项目,实现登录、注册和查看用户列表功能,使用Se... 目录前置准备项目功能实现步骤1. 创建项目2. 配置 Tomcat3. 项目文件结构4. 创建数据库和表5.

手把手教你idea中创建一个javaweb(webapp)项目详细图文教程

《手把手教你idea中创建一个javaweb(webapp)项目详细图文教程》:本文主要介绍如何使用IntelliJIDEA创建一个Maven项目,并配置Tomcat服务器进行运行,过程包括创建... 1.启动idea2.创建项目模板点击项目-新建项目-选择maven,显示如下页面输入项目名称,选择

基本知识点

1、c++的输入加上ios::sync_with_stdio(false);  等价于 c的输入,读取速度会加快(但是在字符串的题里面和容易出现问题) 2、lower_bound()和upper_bound() iterator lower_bound( const key_type &key ): 返回一个迭代器,指向键值>= key的第一个元素。 iterator upper_bou

Java Web指的是什么

Java Web指的是使用Java技术进行Web开发的一种方式。Java在Web开发领域有着广泛的应用,主要通过Java EE(Enterprise Edition)平台来实现。  主要特点和技术包括: 1. Servlets和JSP:     Servlets 是Java编写的服务器端程序,用于处理客户端请求和生成动态网页内容。     JSP(JavaServer Pages)

客户案例:安全海外中继助力知名家电企业化解海外通邮困境

1、客户背景 广东格兰仕集团有限公司(以下简称“格兰仕”),成立于1978年,是中国家电行业的领军企业之一。作为全球最大的微波炉生产基地,格兰仕拥有多项国际领先的家电制造技术,连续多年位列中国家电出口前列。格兰仕不仅注重业务的全球拓展,更重视业务流程的高效与顺畅,以确保在国际舞台上的竞争力。 2、需求痛点 随着格兰仕全球化战略的深入实施,其海外业务快速增长,电子邮件成为了关键的沟通工具。