- 博客(54)
- 收藏
- 关注
原创 3、皮卡丘代码审计(3)
参考:https://blog.csdn.net/weixin_45663905/article/details/108026223。
2024-03-02 13:32:32 1050
原创 Mysql数据库笔记(4)
表的创建(建表)建表的语法格式:(建表属于DDL语句,DDL包括:oreate drop alter)create table 表名(字段名1 数据类型,字段名2 数据类型,字段名3 数据类型);表名:建议以t_或者tbl_开始,可读性强。字段名:见名之意关于mysql中的数据类型很多数据类型,我们只需要掌握一些常见的数据类型即可。 varchar(最长255) 可变长度的字符串 比较只能,节省空间 会根据实际的数据长度动态分配空间 优点:节省空间 缺
2021-11-28 17:20:18 919
原创 Mysql数据库笔记(3)
子查询select 语句中嵌套select语句,被嵌套的语句称为子查询。子查询都可以出现在哪里?select ...(select)from ...(select)where ...(select)where语句中的子查询 案例:找出比最低工资搞得员工姓名和工资? select ename,sal from emp where sal > min(sal); //会报错where子句中不能直接使用分组函数 实现思路:
2021-11-28 17:16:55 153
原创 Mysql数据库笔记(2)
分组函数:(多行处理函数)多行处理函数的特点:输入多行,最终输出一行5个: count 计数 select count(ename)from emp;统计员工数量 sum 求和 select sum(sal)from emp;计算工资和 avg 平均值 select avg(sal)from emp;计算平均工资 max 最大值 select max(sal)from emp;找出最高工资 min 最小值 select min(sal)fr
2021-11-28 17:09:58 777
原创 Mysql数据库笔记(1)
**~什么是数据库,什么是数据库管理系统,什么是sql,他们之间的关系是什么****数据库**:英文单词database,简称DB . 按照一定格式存储数据的一些文件的组合。顾名思义:存储数据的仓库,实际上就是一堆文件。这些文件中存储了具有特定格式的数据。**数据库管理系统:**databasemanagement,简称dbms数据库管理系统是专门用来管理数据库中的数据的,数据库管理系统可以对数据库当中的数据进行增删改查。常见的数据库管理系统统:Mysql 、oracle、ms、sq
2021-11-28 17:03:57 517
原创 App
app渗透测试原理 (app渗透测试和web渗透测试基本没有区别)在项目中90%是没有源码的其实只要web存在得漏洞,app也都存在,比如:sql注入、验证码绕过、越权、支付漏洞、csrf、变量覆盖、反序列化、文件包含、ssrf、xxe、文件上传等。那么渗透测试的核心就是控制传参(把控传参),只有传参了,产生交互了,才可以把网站渗透测试下来。app实际上的交互是什么,跟app交互的还是服务器,用的还是http协议。>>>app>网站正常网站的交互是浏览器到网站 >>
2020-11-02 10:27:58 577
原创 web安全入门(第九章-4)反序列化
一、什么是序列化1,定义 简单的说:将php中对象、类、数组、变量、匿名函数等,转化为字符串, 方便保存到数据库或者文件中 //将状态信息保存为字符串2,什么是反序列化 //将字符串保存为状态信息3,类与对象 ~类与对象 在次说一下, 类就是代表一种物体的总称,比如猫类,狗类,鱼类等等 对象就是类的具体体现,比如狗类的拉布拉多犬 举例: 人这个“类”,张三是类具体的人,即对象 这里的类就是“人”,张三就是“对象” ~类得初始化,即要给“类”赋予
2020-06-07 23:02:10 355
原创 web安全入门(第九章-3)文件包含
一、什么是文件包含漏洞0,场景 后端的每个页面都要进行身份验证。假若普通人可以访问管理员才能看到的页面 不就造成了越权吗。但是如果每个页面都写一遍验证身份的代码。整个系统会变得 很冗余且难维护。 为此,开发们写了一些文件包含函数。这样验证代码仅仅写在一个文件中, 什么地方用到就调用这个文件,即文件包含 初衷:~减少代码冗余 ~方便修改1,定义 攻击者利用包含的特性,加上应用本身对包含文件的控制不严格, 导致系统执行了攻击者的恶意文件。 本质上,文
2020-06-07 23:00:27 269
原创 web安全入门(第九章-2)变量覆盖
一、什么是变量覆盖0,代码审计方式 黑盒审计: 没有源代码,直接去测试 白盒审计: 给你源代码,给你去测试 灰盒审计: 有源代码,先用黑盒测试去,有问题在回头看源代码 从某种角度说,脚本小子与内行渗透人员的主要区别就在于: 是否可以进行白盒审计或者说是否会向这个方向思考(能不能看懂代码) 1,定义 指的是可以用我们的传参值替换程序原有的变量值 例如: <?php $a = 1; $a = fg; //在这就完成了覆盖,是不是很简单
2020-06-07 22:58:20 411
原创 web安全入门(第九章-1)xxe实体注入
一、什么是XXE1,本质 简单的说,就是XML外部实体注入攻击 分解一下 注入:将用户输入的内容当作代码执行 sql注入:将用户输入的内容当作sql代码执行 XML: 一种类似HTML的语言, 主要是存储传输数据的, 没有预定义标签 实体: 简单的理解为变量,可以存储一些东西 总结:XXE,就是XML引用的数据当作代码被执行, 即XML外部实体注入攻击 典型的攻击如下:
2020-06-07 22:56:48 356
原创 web安全入门(第八章-4)ssrf
一、什么是SSRF0,补充 CSRF:你的浏览器偷偷的发送了数据包 SSRF:服务器发送了数据包. 1.定义 指攻击者能够从易受攻击的web应用程序发送精心设计的请求, 从而对其他网站进行攻击。 简单说,利用某站点发送请求攻击其他目标站点(借刀杀人) 2.主流防护 WAF 防火墙 IPS 主流防护概念:防外不防内。外网吊的一批,内网low的不行 只要突进内网,基本任你驰骋 3,主要危害 SSRF原理类似代理,但是主要危害是内网渗透
2020-06-06 22:10:56 355
原创 web安全入门(第八章-3)支付漏洞
一、快捷支付原理1,原理 ~浏览器跳转 简单说,你付钱了,浏览器通知服务器,服务器更新你的金额 //基本依托前端跳转,不可靠,现在应该极其少见 ~服务器端异步通知 简单说,你付钱,发一个通知给服务器, 同时,你支付的平台也会向服务器发送一个通知。 服务器对比一下你的通知与支付平台通知, 一致则更新你的金额。不一致,一般都会等待客服处理 //相对安全2,补充 ~支付漏洞并不需要代码审计,其实更适合新手 ~支付漏洞属于逻辑漏洞
2020-06-06 22:09:18 962 1
原创 web安全入门(第八章-2)越权漏洞
一、什么是越权1,概念:常见的逻辑漏洞,由业务逻辑处理问题造成的,它本身单独可能不是漏洞, 但对于业务逻辑而言是漏洞,比如:普通 用户修改掉管理员的密码 2,本质:服务器对提交数据的用户没有检测权限,使a用户能直接增删改查 其他用户或管理员信息3,分类: ~垂直越权(普通用户可以改管理员信息) ~平行越权(普通a用户可以改其他用户信息) ~交叉越权(即有垂直越权也有平行概念)4,常见性:非常常见,并且逻辑类漏洞,漏扫工具无法扫描出, 基本都是高度安全环境中首测
2020-06-05 09:06:22 1957
原创 web安全入门(第八章-1)验证码绕过
一、验证码作用0,之前都是普通漏洞,今天开始的都是逻辑漏洞 逻辑漏洞: ~不是代码层面的错误 ~另外逻辑漏洞基本可以是通杀 ~现在的很多大厂,基本不会有普通漏洞,但是逻辑漏洞是很难避免1,本质: 简单的说,验证码是为了区分用户是计算机还是人的一种全自动工具2,作用: 利用较为简单的程序就可以有效防止:密码破解、刷票、论坛灌水(霸屏)等等二、验证码绕过的常见姿势1,绕过方向 通过验证码的逻辑进行入手 通过python、Golang等程序自动识别
2020-06-05 09:01:56 1501
原创 web安全入门(第七章-3)文件上传漏洞--解析、验证、伪造
一、实战注意1,图片马的意义 ~绕过前端检测 ~绕过类型检测 (Content-Type) ~绕过文件头检测2,一句话木马根据脚本语言类型来 要根据不同条件制作, php:<?php @eval($_REQUEST['a']);?> asp:<%eval request("a")%>二、IIS6.0解析漏洞1,漏洞本质 IIS6.0解析漏洞,其实有一些不如说是IIS6.0的一些特性,严格意义上讲, 只是一些默认配置并不是漏洞但是也有一些的
2020-06-02 15:37:11 456
原创 web安全入门(第七章-2)文件上传漏洞--解析、验证、伪造
一、%00截断和00截断1,白名单比黑名单机制安全了太多,但是也不是绝对安全2,%00是干嘛的 在说这的作用之前,先说一下服务器保存机制(其中的一种) 用户上传图片 -> 上传到临时目录 -> php移动重命名 %00就是再移动重命名的时候,动手脚 比如,我们上传木马命名为:1.php%00.jpg,当程序读取到 %00 他就认为到这结束了,于是保存为1.php 注意:这也是由php版本限制的,高版本貌似修复了此bug %00是url编码后的,实际上是
2020-06-02 15:36:21 689
原创 web安全入门(第七章-1)文件上传漏洞--解析、验证、伪造
一、客户端检测1,客户端校验: 一般是在网页上写一段Js脚本,用Js去检测, 校验上传文件的后缀名,有白名单也有黑名单。2,判断方式: 通过抓包来判断,如果还未抓住包,就弹出不准上传, 那么就是前端验证,否则一般就是服务端验证3,突破方法 前端验证非常不可靠,通常可通过两种方式绕过: ~关闭JS尝试绕过 ~传正常文件通过burp修改数据包就可以绕过(推荐)4,黑白名单机制: 黑名单:不允许上传什么 白名单:只允许上传什么 白名单比黑名单更安全二、服务
2020-06-02 15:34:56 1136
原创 文件上传漏洞总结
文件上传1.前后端检测:使用BurpSuite抓包,有数据包为后端,无数据包为前端。 文件马成功的两个核心条件: 1.成功上传图片马到服务器,且图片马中的恶意代码保存完整 2.文件马被php解析器(asp解析器)解析 2.分类: PHP: 前端检测: 白名单:允许上传什么。 黑名单:不允许上传什么。 绕过: 1.关闭js。 2.抓包修改。 后端检测: 白名单:允许上传什么。 00截断: %00和00就是代表一个结束符。
2020-06-02 15:32:57 2766 1
原创 web安全入门(第六章-1)xss的原理分析与解剖
1,什么是XSS定义: 个人理解:就是HTML代码注入 注入攻击的本质,就是把用户输入的数据当作前端代码去执行 HTML+CSS+JS 组合拼接的什么: 拼接的HTML代码,一般是JS语句XSS的危害: ~盗取cookie //主要 ~获取内网ip ~获取浏览器保存的明文密码 ~截取网页屏幕 ~网页上的键盘记录 cookie是存放在用户的浏览器里面的,只要能操纵你的浏览器或者读取你的cookie,别人就能得到 XSS平台: 为了方便利用各种复杂X
2020-06-02 13:33:52 631
原创 web安全入门(第五章-5)报错注入
1,Oracle中的一个表 – Dual 数据会区分大小写,代码不会 本质:为了满足语句格式而诞生的一个临时表 //有人说是实表,有人说是虚表,咱们不用再在意 用法: 在mysql中可能可以直接这么写 select 1,2,3; select user();//查询当前用户 但Oracle语法结构严谨,这么写 select 1,2,3 from Dual; select user from Dual 除
2020-06-02 11:07:06 272
原创 web安全入门(第五章-4)反弹注入
一、MSSQL反弹注入使用场景 0,MSSQL数据库就是Sql server数据库 1,前言 MSSQL注入攻击是最为复杂的数据库攻击技术,由于该数据库功能十分强大, 存储过程以及函数语句十分丰富,这些灵活的语句造就了新颖独特的攻击思路 2,遇到问题 明明有注入点却无法进行注入,工具攻击速度也是异常缓慢,错误提示信息关闭, 无法返回注入结果,这些都是在注入攻击中常常遇到的问题。为例解决以上的疑难杂症, 我们来学习反弹注入,反弹注入则依靠opendatasource函数支持 3,简
2020-06-02 11:04:51 565 1
原创 web安全入门(第五章-3)dns注入
一、DNSLOG的函数解析1,基本 DNS(协议 域名 -> IP转换) 日志:基本上所有程序都会记录日志 DNS 他实际上也是有日志的 补充:问:DNSlog注入是不是在linx系统可不可以用SMB服务? (全称是Server Message Block , 用于在计算机间共享文件、打印机、串口等,电脑上的网上邻居由它实现。) 答:在linx里面默认不可以使用,因为linx没有这个服务2,函数用法: select
2020-06-02 11:01:41 342
原创 web安全入门(第五章-2)偏移注入
一、偏移注入使用场景 早sql注入得时候会遇到一些无法查询列名得问题,比如系统自带数据库的 权限不够而无法访问系统自带库。 或者遇到Access数据库 当你猜到表名无法猜到字段名的情况下,我们可以使用偏移注入来查询那张表里面的数据。 向sqlmap之类的工具实际上是爆破字段名的名字,但是如果字段名称比较奇葩,例如:H5scker_passwd 之类的那就无可奈何了。总结: ~权限不够 ~遇到access数据库,且列名奇葩难爆破时 .* =>正则[匹配所有] .
2020-06-02 10:59:53 473
原创 阶段总结
sql注入sql注入的本质:是把用户输入的数据当做代码去执行。sql注入的条件:1.用户能够控制输入 2.原本执行的代码,拼接了用户输入的数据去执行。 判断注入的方法:1.and 1=1 and 1=2 页面错误说明存在注入 2.id =1' 引号被执行说明存在注入 2.id =1y与id =2-1的界面相同说明存在注入 sql注入的分类:1.显错注入:get注入和post注入是两种传参方式,post是通过登录框进行传参,get是通过在url栏里进行传参,
2020-05-31 23:28:17 422
原创 web安全入门(第四章-5)宽字节注入
一、魔术引号是什么 我们现在要了解一个PHP的防御函数 magic_quotes_gpc(魔术引号开关) magic_quotes_gpc函数在php中的作用是判断解析用户提交的数据,如包括 有:post、get、cookie过来的数据增加转义字符“\”,以确保这些数据不会 引起程序,特别是数据库语句因为特殊字符引起的污染而出现致命的错误。 单引号(’)、双引号(”)、反斜线(\)与 NULL(NULL 字符)等字符都会被加上反斜线\ 转义字符 比如:1'union se
2020-05-26 14:48:49 310
原创 web安全入门(第五章-1)cookie注入
一、cookie注入 什么是Cookie?Cookie就是代表你身份的一串字符串,网站根据Cookie来识别你是谁,如果你获取了管理员的Cookie,你可以无需密码直接登陆管理员账号。cookie注入满足什么条件?1.满足的条件[]2.网站会获取cookie传参然后和原有sql语句拼接在传入数据库。为什么Cookie和注入擦出了爱情的火花?(原理部分)在动态脚本语言中存在超全局变量可以获取多种传参方式(基本上)很多时候开发在开发的时候为了考虑到多种接受参数,在接受参数的时候都是用多种解释
2020-05-26 14:41:12 834
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人