
学习笔记
文章平均质量分 87
A1ienX
这个作者很懒,什么都没留下…
展开
-
floor()报错注入
floor()报错注入准确地说应该是floor,count,group by冲突报错是当这三个函数在特定情况一起使用产生的错误。首先看经典的floor注入语句:and select 1 from (select count(*),concat(database(),floor(rand(0)*2))x from information_schema.tables group by x)a)第一眼看...原创 2018-06-11 12:07:45 · 16736 阅读 · 4 评论 -
[Jarvis OJ] RE–mysql的udf外部库安全问题
题目:并没有网址,只给了一个udf.so的文件,百度一下可以知道与MySQL的外部函数库有关,直接去翻mysql的官方手册最有效。https://dev.mysql.com/doc/refman/8.0/en/udf-compiling.html大致意思是可以用C++编写一些函数,编译成so文件供mysql调用,题目已经给了我们so文件,所以我们只要看调用部分就可以了。首先要注意的是文件放在哪供M...原创 2018-07-04 13:32:36 · 379 阅读 · 0 评论 -
[Jarvis OJ]–api调用–XXE漏洞学习笔记
题目地址:http://web.jarvisoj.com:9882/查看网页源码:可以看到我们点击go后,以json的形式发送了数据。抓包:我们看到,其实我们输入的内容并没有发送到服务器,而是发送了几个特定的值。这题的提示是查看flag文件,用到的是XXE漏洞,有几篇原理文章参考一下:https://security.tencent.com/index.php...原创 2018-07-04 21:40:21 · 2934 阅读 · 5 评论 -
使用Bettercap-2.6进行ARP欺骗尝试
实验环境:kali-2018Bettercap-2.6(网上对这个最新版的教程少之又少)外置网卡 TP-LINK的WN722N (测试的是wifi,网卡给kali虚拟机用的)bettercap安装:apt-get install bettercapARP欺骗及流量嗅探ARP欺骗原理网上很多,这里就不赘述了,贴上几个链接:https://segmentf...原创 2018-07-13 21:50:16 · 9617 阅读 · 1 评论 -
beef的简单使用–结合中间人攻击注入钩子
最近接触到了beef这款工具,看过基本教程后就自己进行了一次攻击尝试。总体思路就是在内网下通过arp欺骗,修改response包,加入我们的钩子,十分简单。首先是arp欺骗,这里用的是bettercap,可以参考我之前的文章。开始arp欺骗:arp.spoof on打开http代理:http.proxy on下面我们要写一个js文件用于处理返回的response包,...原创 2018-08-09 22:53:18 · 6888 阅读 · 0 评论 -
维吉尼亚密码破解
破解原理及java版的实现https://blog.youkuaiyun.com/white_idiot/article/details/61201864这里提供一个python3版本,尽量详细的注释了import vigenerecipher#使用拟重合指数法确定秘钥长度:拟重合指数大于0.6为标志def length(Ciphertext): ListCiphertext=lis...原创 2018-10-07 20:15:03 · 4488 阅读 · 0 评论 -
常见加密方法攻击复杂度总结
加密方法 目标 攻击方法 攻击复杂度 移位密码 密文/密钥 穷举攻击 26 仿射密码 密文/密钥 穷举攻击 12*26 单表代换密码 密文/密钥 穷举攻击 26! 维吉尼亚密码 密钥内容 穷举攻击 26^m (m为密钥长度) 维吉尼亚密码 密钥长度 重合指数 1+...原创 2018-10-10 12:17:34 · 2250 阅读 · 0 评论 -
汇编–一个rep stosd循环的简单理解
源代码:IDA汇编代码:rep stosd循环:从lea edi , [EBP+arg_0] 开始,到rep stosd 结束。EDI中存入的是循环操作的起始地址,ECX存入的是循环次数,EAX是循环填入的值。这一段的操作就是从EBP+var_40处开始,循环十次,向下依次填入CCCCCCCC,写入的长度由EAX决定,32位。OD动态调试:初始状态:EDI赋值:...原创 2018-11-05 14:56:41 · 3755 阅读 · 1 评论 -
jarvis oj level2–两种方式构造函数栈
关于这个level2,在网上找到了两种解法,放在一起分析了一下。首先查看题目基本信息:程序开启了栈不可执行保护。IDA查看反汇编代码:可以看到存在栈溢出,并且程序调用了system函数。所以我们的思路就是构造vulnerable_function()的buf变量,使得:返回地址被覆盖为system函数的地址,构造system函数的栈帧,并为system传递参数’/b...原创 2019-04-07 17:19:45 · 668 阅读 · 2 评论 -
Jarvis OJ–Login 透过MD5()下的SQL注入学习MD5加密
遇到一道CTF题目:http://web.jarvisoj.com:32772/找到了这个题目最早出现的地方和原理解释:http://cvk.posthaven.com/sql-injection-with-raw-md5-hashes哎,都是8年前的题目了,感觉自己进展好慢。看解释原理也不复杂,就是MD5()函数中参数为true时,输出形式为原始二进制格式,如果,找到一个字符串MD5后得到的原始...原创 2018-07-01 16:14:41 · 434 阅读 · 0 评论 -
基于locate()函数的sql盲注
Locate()LOCATE(substr,str) , LOCATE(substr,str,pos) 第一个语法返回字符串 str中子字符串substr的第一个出现位置。第二个语法返回字符串 str中子字符串substr的第一个出现位置, 起始位置在pos。如若substr 不在str中,则返回值为0。这里主要利用第二个语法进行报错注入:假设数据库名为security首先从最基本的:locate...原创 2018-06-10 22:44:04 · 1331 阅读 · 0 评论 -
[ Jarvis OJ ] flag在管理员手里–Hash长度扩展攻击学习笔记
什么是hash算法及hash扩展攻击http://www.freebuf.com/articles/web/69264.htmlhttp://www.freebuf.com/articles/web/31756.html大部分教程都是直接告诉什么是hash扩展攻击,但都没讲为什么(对小白很不友好),其实理解了服务器准备干什么,更容易理解怎样攻击。这要从一道题目讲起:http://web.jarvi...原创 2018-06-29 16:02:52 · 2221 阅读 · 3 评论 -
BugkuCTF –备份是个好习惯
在做到Bugku的一道题目时,感觉知识点有些多,这里总结一下。题目连接http://120.24.86.145:8002/web16/打开界面只有这一串字符串尝试各种解密解码格式都没有效果,可以观察到整个字符串是d41d8cd98f00b204e9800998ecf8427e的两段重复,其实是MD5加密,最后再揭晓。那现在怎么办呢,按照题目 备份是个好习惯,是让我们寻找 .bak文件的,也就是...原创 2018-06-05 16:15:46 · 22159 阅读 · 8 评论 -
BugKu--login3(SKCTF)
Bugku的一道题目,用到了布尔盲注,还过滤了and关键字,这里用到了^(按位异或运算),正好记录下过程和方法。总体写的有点啰嗦,但是我不想让跟我一样入门的小白看教程看到一脸懵逼。题目地址:http://118.89.219.210:49167/index.php随便输入了几个用户名,返回用户名不存在,并没有对密码进行检验。那我们可以猜测是先查找用户名,如果存在,再验证密码。那下一步呢,我试了试a...原创 2018-06-12 16:53:06 · 7587 阅读 · 9 评论 -
BugkuCTF–flag在index里
题目地址http://120.24.86.145:8005/post/这道题目里有经典的本地文件包含漏洞+php伪协议的结合应用点击后注意到url地址 http://120.24.86.145:8005/post/index.php?file=show.php这是一个典型的文件包含漏洞,(file关键字是提示,其实也是CTF的套路)。这里用到了php的封装协议:http://php.net/ma...原创 2018-06-05 18:32:38 · 44339 阅读 · 8 评论 -
配合php伪协议利用文件包含漏洞
php支持多种封装协议,这些协议常被CTF出题中与文件包含漏洞结合,这里做个小总结。实验用的是DVWA平台,low级别,phpstudy中的设置为5.4.45版本,设置allow_url_fopen和allow_url_include都为On.index.phpindex.php同级目录下有mytest001.txt ,mytest002.txt ,mytest003.zip(其中包含mytest...原创 2018-06-06 18:02:14 · 9317 阅读 · 4 评论 -
bugkuctf–login4字节翻转攻击
题目地址:http://118.89.219.210:49168/字节翻转攻击原理:http://www.anquan.us/static/drops/tips-7828.htmlhttp://www.freebuf.com/articles/system/163756.html尝试登陆:普通用户无法查看,用户名改为admin,密码任意:admin又不允许登陆,并且密码是任意输入的,也就是说关键点...原创 2018-06-13 20:15:21 · 4341 阅读 · 1 评论 -
学习基于extractvalue()和updatexml()的报错注入
extractvalue()extractvalue() :对XML文档进行查询的函数其实就是相当于我们熟悉的HTML文件中用 <div><p><a>标签查找元素一样语法:extractvalue(目标xml文档,xml路径)第二个参数 xml中的位置是可操作的地方,xml文档中查找字符位置是用 /xxx/xxx/xxx/…这种格式,如果我们写入其他格式,就会报...原创 2018-06-09 10:59:13 · 51109 阅读 · 6 评论 -
关于00截断原理的一些思考
在做CTF web题时,遇到了几道有关00截断的题目,但是有 %00截断和0x00截断,一时很是懵逼。最后自己做了些实验,发现两者是同一个原理,这里拿出来给大家分享下。一,0x00截断0x00是十六进制表示方法,是ascii码为0的字符,在有些函数处理时,会把这个字符当做结束符。这个可以用在对文件类型名的绕过上。一道南邮ctf的题目:如果上传jpg文件:如果上传php文件:这里就要考虑绕过了,用b...原创 2018-06-02 11:15:50 · 31443 阅读 · 7 评论 -
南邮CTF web题目总结
这几天写了南邮的web题目,都比较基础,但是对我这个小白来说还是收获蛮大的。可以借此总结一下web题的类型一,信息都藏在哪作为ctf题目,肯定是要有些提示的,这些提示有时会在题目介绍里说有时也会隐藏在某些地方。1,源代码,这是最最最常见的。2,http head头中,这个一般都会提下 ‘头’ 什么的。3,非常规提示,就比如这个:如果第一次做ctf题目,不知道还有这些套路,一般不会往这个方面想。二,...原创 2018-06-02 16:19:56 · 16044 阅读 · 0 评论 -
jarvis oj level3/level4--多种解法实现ret2libc
level3和level4都是ret2libc的典型题目,只不过level3给了libc文件而level4没有给。这里以leve3为例,使用多种方式实现ret2libc一,使用给定的libc文件,计算偏移地址整体思路就是通过首先泄露处libc中某个函数运行时的实际地址,再通过给定的libc文件计算出system函数的实际地址,跳转到system函数执行基础原理:http://ww...原创 2019-04-09 12:49:21 · 871 阅读 · 1 评论