自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(35)
  • 收藏
  • 关注

原创 权限绕过漏洞

目录水平越权案例漏洞原理分析测试实例防御方案靶场:https://github.com/zhuifengshaonianhanlu/pikachu搭建方法和sqli-labs相同水平越权案例A和B属于同一级别用户,但各自不能操作对方个人信息。A如果越权操作B用户个人信息的情况称为水平越权操作,通过水平越权漏洞实现修改或删除其他用户的个人信息随机登录一个用户,点击查看个人信息,此处用的是v...

2020-04-01 20:22:09 2176

原创 xss介绍与原理(入门)

文章目录介绍分类DVWA中的xss1、反射型2、存储型3、DOM介绍XSS又叫CSS,跨站脚本攻击,利用网页开发时留下的漏洞,使用户加载并执行攻击者恶意制造的网页程序。这些恶意网页程序通常是JavaScript,但实际上也可以包括Java、 VBScript、ActiveX、 Flash 或者甚至是普通的HTML。攻击成功后,攻击者可能得到包括但不限于更高的权限(如执行一些操作)、私密网页内容...

2020-03-31 16:55:57 603

原创 sqlmap学习(十三)枚举信息

1、sqlmap列举数据库名参数:--dbs2、sqlmap列举数据库表参数:--tables获取全部表名-D数据库名 获取指定数据库中的表python sqlmap.py -u "http://172.17.0.1/Less-1/?id=1" --tables -D 数据库名--exclude-sysdbs可排除系统数据库3、sqlmap列举数据表列参数:--columns,-...

2020-03-29 17:47:22 1620

原创 sqlmap学习(十二)检索DBMS信息

1、sqlmap检索DBMS banner参数:-b、--bannerpython sqlmap.py -u "http://172.17.0.1/Less-3/?id=1" -b2、sqlmap检索DBMS当前用户参数:--current-user3、sqlmap检索DBMS当前数据库参数:--current-db4、sqlmap检索DBMS当前主机名参数:--hostn...

2020-03-29 13:40:05 348

原创 sqlmap学习(十一)注入技术参数

1、sqlmap设置具体SQL注入技术参数:--techniquesqlmap支持的探测方式:B: Boolean-based blind SQL injection基于布尔的盲注E: Error-based SQL injection报错注入U: UNION query SQL injectionunion查询注入S: Stacked queries SQL injection堆叠注...

2020-03-28 21:12:15 1512

原创 sqlmap学习(十)自定义检测参数

1、sqlmap设置风险参数--risk num此选项指定要执行测试的风险的参数共有三个风险等级,默认是1会测试大部分的测试语句,2会增加基于时间的测试语句,3会增加OR语句的SQL注入测试。在有些时候,例如在UPDATE的语句中,注入一个OR的测试语句,可能导致更新的整个表,可能造成很大的风险。2、sqlmap设置比较参数参数:--string,--not-string,--regex...

2020-03-28 16:47:55 1023

原创 sqlmap学习(九)注入参数

1、sqlmap强制设置DBMS默认情况下sqlmap会自动探测目标web应用程序后台数据库管理系统--dbms 数据库管理系统名称 [版本号]python sqlmap.py -u "http://172.17.0.1/Less-1/?id=1" --banner --dbms mysql2、sqlmap强制设置OSpython sqlmap.py -u "http://172.17...

2020-03-27 19:00:16 308

原创 sqlmap学习(八)指定位置注入

1、sqlmap设置指定注入参数-p:指定参数进行扫描,不是扫描所有参数,这样可以避免浪费时间到非注入点参数上,从而提高扫描效率。python sqlmap.py -u "url" -p "id,user-agent"--skip跳过指定参数扫描,和-p作用相反,它用来跳过需要扫描的参数。python sqlmap.py -u "url" --skip "id,user-agent"...

2020-03-26 19:18:01 16654 2

原创 sqlmap学习(七)性能优化

1、sqlmap设置持久HTTP连接没有设置持久HTTP连接时,使用wireshark抓包查看到Connection: close\r\n添加参数--keep-alive后,使用wireshark抓包查看到Connection: keep-alive\r\n2、sqlmap设置不接收HTTP bodysqlmap中设置空连接,表示不接收HTTP bodypython sqlmap.p...

2020-03-26 17:49:02 264

原创 sqlmap学习(六)设置请求参数

1、sqlmap设置忽略401--ignore-401参数用来忽略未验证错误2、sqlmap设置HTTP协议私钥当web服务器需要适当的客户端证书和用于身份验证的私钥时,使用此选项--auth-file文件名3、sqlmap设置安全模式避免在多次请求失败后销毁会话有时,如果执行了一定数量的不成功请求,则在此期间的web应用程序或检查技术会销毁会话。有的web应用程序会在你多次访问错...

2020-03-26 16:35:48 725

原创 服务端检测绕过 MIME检测绕过

常见的白名单扩展名MIME TYPEjpgimage/jpegpngimage/pngtxttext/plainzipapplication/zipdocapplication/msword修改Content-Type为可以放行的MIME TYPE类型

2020-03-25 13:21:41 714

原创 提交报文修改检测绕过

提交报文修改检测绕过(前端检测通用)(1)首先选择正常的文件进行上传(2)通过burpsuite进行截包改包或改包重放完成文件上传这种方法前端检测绕过通用,不用理解具体前端的检测代码,直接进行上传报文的修改和提交文件上传示例代码js_check.php<?php//文件上传漏洞演示脚本之js验证//设置上传之后的文件保存路径$uploaddir = 'uploads/'; ...

2020-03-25 12:42:28 341

原创 文件上传漏洞原理

什么是文件上传漏洞?当文件上传点没有对上传的文件进行严格的验证和过滤时,就容易造成任意文件上传,包括上传动态文件(asp,php,jsp)等如果上传的目标目录没有限制执行权限,导致所上传的动态文件可以正常执行,就导致了文件上传漏洞存在上传漏洞的必要条件:(1)存在上传点(2)可以上传动态文件(3)上传目录有执行权限,并且上传的文件可执行(4)可访问到上传的动态文件...

2020-03-24 17:22:47 1014

原创 sqlmap学习(五)设置请求参数

1、sqlmap设置超时在考虑超时HTTP(S)请求之前,可以指定等待的秒数python sqlmap.py -u "http://127.0.0.1/Less-1/?id=1" --timeout 10.52、sqlmap设置重试次数python sqlmap.py -u "http://127.0.0.1/Less-1/?id=1" --timeout 10.5 --retries ...

2020-03-24 16:36:22 770

原创 sqlmap学习(四)设置请求参数

1、sqlmap设置HTTP协议认证sqlmap中设置HTTP协议认证的参数:--auth-type和--auth-cred--auth-type用于定义HTTP协议认证的方式,支持Basic、Digest、NTLM--auth-cred认证需要的用户名和密码,认证语法为username:passwordsqlmap -u "http://www.test.com/page.php?id=...

2020-03-24 13:51:17 413

原创 sqlmap学习(三)设置请求参数

当--level的参数设定为2或者2以上的时候,sqlmap会尝试注入Cookie参数。当--level参数设定为3或者3以上的时候,会尝试对User-Angent和referer进行注入。1、sqlmap设置User-Agent头--user-agent=AGENT指定HTTP User - Agent头默认情况下sqlmap的HTTP请求头中User-Agent值是:sqlmap/1.0...

2020-03-23 15:40:37 1360

原创 sqlmap学习(二)设置请求参数

1、sqlmap设置HTTP方法sqlmap会自动在探测过程中使用适合的HTTP 请求方法,但是在某些情况下,需要强制使用具体的HTTP请求方法,例如PUT请求方法。PUT请求方法不会自动使用,因此需要强制指定。使用 --method=PUT2、sqlmap设置post提交参数以Less11为例开启burpsuite输入用户名和密码后3、sqlmap设置参数分隔符4、sqlmap...

2020-03-22 13:34:13 579

原创 sqlmap学习(一)获取目标

python2.7和sqlmap的安装借鉴网上的就可以了sqlmap学习使用1、sqlmap直连数据库服务型数据库文件型数据库2、sqlmap对url探测3、sqlmap文件读取目标4、sqlmap批量注入...

2020-03-21 14:29:43 374

原创 解决(1698, "Access denied for user 'root'@'localhost'")——MariaDB

在命令行直接用mysql就可以登录数据库,不用密码,但当使用mysql管理工具时提示Access denied for user 'root'@'localhost'造成这种错误的原因不唯一,仅列出我的问题sudo vim /etc/mysql/debian.cnf设置其中的password为你的passworduse mysqlupdate mysql.user set plugin...

2020-03-21 10:43:46 1037

原创 kali中提示No module named MySQLdb

在使用sqlmap直连数据库时python sqlmap.py -d "mysql://root:[email protected]:3306/test" -f --banner提示No module named MySQLdb我的环境是root@rane:/usr/share/sqlmap# uname -aLinux rane 5.3.0-kali2-amd64 #1 SMP D...

2020-03-21 10:36:47 674

原创 mssql注入学习(一)

权限探测select HOST_NAME(),@@SERVERNAME;利用and逻辑语句判断是否站库分离判断xp_cmdshell是否开启?存储过程中的xp_cmdshell可执行系统命令,是后续提权操作的主要方式,从MSSQL2005版本之后,默认关闭,如果xp_cmdshell权限没开启的话,我们可以执行下面命令开启首先判断xp_cmdshell是否开启,1为打开,0为关闭se...

2020-03-19 20:41:30 586

原创 SQLserver入门学习(二)

mysql中的limit与SQLserver中的topselect top 5 name from master..sysdatabases;筛选的是前五条信息select top 1 name from master..sysdatabases where name not in (select top 4 name from master..sysdatabases);查询出来...

2020-03-19 16:59:15 124

原创 二次注入的原理

二次注入的原理二次注入原理,主要分为两步第一步:插入恶意数据第二步:引用恶意数据第一步:输入参数1’,函数经过转义函数变成’,参数进入数据库存储还原为1’第二步:将1’从数据库中取出 取出后直接给变量带入SQL ,SQL注入触发二次注入的方法对sqlilabs的Less-24做部分修改,似的实验效果更明显第一步 修改users表中username字段的长度ALTER TABLE ...

2020-03-18 19:32:19 1164

原创 二次编码注入

原理:PHP代码中使用了urldecode()等编解码函数,放在了一个尴尬的使用位置,与PHP自身编码配合失误自己编写一个二次编码注入的代码<?php error_reporting(E_ALL ^ E_DEPRECATED); header("Content-Type: text/html; charset=utf-8"); $conn = mysql_connect('loca...

2020-03-18 17:25:32 609

原创 宽字节注入

宽字节注入原理宽字节注入方法以第32关为例,输入单引号后会经过check_addslashes函数替换数据库连接的时候使用的是gbk编码http://127.0.0.1/Less-32/?id=1%df’ order by 3–+三列http://127.0.0.1/Less-32/?id=-1%df’ union select 1,2,version()–+使用union查询需...

2020-03-18 17:17:45 280

原创 dnslog盲注原理

Dnslog盲注原理布尔盲注和时间盲注相当于猜单词的游戏,我们需要对每一位逐步的猜测,效率很低,需要发送很多的请求进行判断,很可能会触发安全设备的防护我们需要一种方式能够减少请求,直接回显数据——Dnslog注入Dns在解析的时候会留下日志,通过读取多级域名的解析日志,获取请求信息Dnslog盲注方法登录http://ceye.io/网站并注册,得到属于自己的identifier先尝试...

2020-03-18 15:32:06 1823

原创 SQL盲注——时间注入

时间盲注原理既不回显数据,也不回显错误信息,所以不能通过页面来判断是否存在SQL注入漏洞联合查询、报错查询和布尔盲注在此时就不起作用了例:在登录案例中,构造SQL语句,发送登录请求,让程序延时执行,判断信息构造逻辑语句,通过条件语句进行判断,为真则立即执行,为假则延时执行核心语法:if(left(user(),1)= ‘a’,0,sleep(3));时间盲注方法通过Less-10来进...

2020-03-18 14:27:27 95

原创 SQL注入——布尔盲注

盲注可以进行SQL注入,但是不能通过SQL注入漏洞看到数据库中的信息,但是可以通过真假判断数据库中的信息布尔盲注的方法:构造逻辑判断语句,判断信息的真假,取出所有的真值以Less-8为例还是老步骤,初步判断是否存在SQL注入漏洞http://127.0.0.1/Less-8/?id=1返回You are in…http://127.0.0.1/Less-8/?id=1’无返回可以初...

2020-03-18 13:54:35 246

原创 报错注入基础

报错注入原理怎么利用报错注入?让错误信息可以显示数据库中的内容接下来我们要用到1、floor()、group by对*rand()*函数进行操作时产生错误2、extractvalue()XPATH语法错误产生报错3、updatexml()XPATH语法错误产生报错报错注入方法floor()报错需要count(*),rand()、group by、floor()。如果单纯的se...

2020-03-18 13:01:22 111

原创 union联合查询

以Less-1为例查看源代码可以看到get到id后没有经过任何处理就放入到了后面的查询语句中,很明显存在SQL注入漏洞1、判断注入点利用’来初步判断是否可注入2、判断查询列数3OK,4报错,说明当前使用的表只有三列3、判断显示位使用union联合查询,需要使得前面的语句逻辑为假,且和前面的语句必须有相同数量的列,查看Less-1源代码可知,前面使用的是select *,且判...

2020-03-17 17:01:14 849

原创 MySQL注入中的一些储备知识

以Less-1为例Less-1中存在SQL注入的语句:$sql="SELECT * FROM users WHERE id='$id' LIMIT 0,1";首先我们可以用id=1’来初步判断有没有SQL注入漏洞,出现了类似You have an error in your SQL syntax; check the manual that corresponds to your MySQL...

2020-03-17 14:10:45 85

原创 mysql手工注入语法(基础)

学习手工注入方法帮助我们学习和理解SQL注入原理mysql内置的information_schema,是mysql注入的基石查询数据核心语法查库select schema_name from information_schema.schemata;查表mysql> select table_name from information_schema.tables where tab...

2020-03-17 13:59:09 178

原创 SqlServer入门学习(一)

SQLServer数据库的查询语句查询数据库的版本select @@version;查询主机名select host_name();查询当前数据库名select db_name();查询当前数据库的拥有者select user;查询结果为 dbo。dbo是每个数据库的默认用户,具有所有者权限切换到test库use test查询前n条记录select top 3 * fro...

2020-03-17 13:49:14 762 1

原创 MySQL的常用函数

MySQL常用函数用户信息系统用户名mysql> select system_user();所有用户名mysql> select user();当前用户名mysql> select current_user();连接数据库的用户名mysql> select session_user();数据库信息数据库名mysql> select databa...

2020-03-16 17:34:05 114

原创 docker的基本使用(sqli-labs)

docker命令启动dockerservice docker start查找sqli-labs镜像docker search sqli-labs其中可能会出现镜像和网络配置的问题,复制错误去百度上搜就可以了选择一个镜像,拉取到本地docker pull acgpiano/sqli-labs查看已有的镜像docker images启动镜像docker run -dt --nam...

2020-03-16 13:50:12 817

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除