Von's Blog

Thinking will not overcome fear but action will.

sqli-labs做题记录(四)

Challenges

Less-54 从这关开始就进入Challenges了,觉得这种模式还是有点新奇的,限制了尝试次数。而且也像CTF一样有要求一个目标的secret key了。这关总共给了10次机会。 1. 127.0.0.1/sqli-labs-master/Less-54/?id=1' and 1=1--+ 2. 127.0.0.1/sqli-labs-master/Less-54/?id=1' an...

sqli-labs做题记录(三)

Stacked Injections

Less-38 这道题其实是在Advanced Injections中,但是我觉得它是属于堆叠注入的,放在第三篇较为合适。 在SQL中,分号(;)是用来表示一条sql语句的结束。我们在;结束一个sql语句后继续构造下一条语句,就会同时执行多条SQL语句。 联合注入也是执行多条语句,其与堆叠注入的区别就在于union执行的语句类型是有限的,只可以用来执行查询语句,而堆叠注入可以执行的是任意的语...

sqli-labs做题记录(二)

Advanced Injections

Less-23 这道题主要是过滤了#,–。这样我们可以使用and ‘1’=’1来闭合’。这里我使用联合查询注入。 127.0.0.1/sqli-labs-master/Less-23/?id=-1' union select 1,2,3 and '1'='1 得出显示位为1,2。 爆库: 127.0.0.1/sqli-labs-master/Less-23/?id=-1' union se...

sqli-labs做题记录(一)

Basic Injections

前言 这几天也算是为了记录自己的成长过程来更新sqli-labs的做题记录。不知道能不能更完,毕竟总共有65关。不管怎么样,努力做到不咕吧。 受限于篇幅设置,我对于每一关的原理肯定没有办法讲得特别详细,但我会尽量讲得通俗易懂,并且给出相应的参考文章。 同时,对于类型相同的题目,我尽量给出不同的解法,来充实,提高自己。 Less-1 这题的考点是union联合查询注入。 对于这种类型,我推...

宽字节注入学习

宽字节注入 前言 什么是宽字节? GB2312、GBK、GB18030、BIG5、Shift_JIS等这些都是常说的宽字节,实际上只有两字节。宽字节带来的安全问题主要是吃ASCII字符(一字节)的现象。 我们以GBK编码为例进行讲解: 尽管现在呼吁所有的程序都使用unicode编码,所有的网站都使用utf-8编码,来一个统一的国际规范。但仍然有很多,包括国内及国外(特别是非英语国...

SQL报错注入

前言 这几天更新了很多博客,在写博客查资料的过程中也收获了许多。但是今天尴尬的发现,更新的大部分内容都是密码学的。。。 觉得有些对不住web这个老本行,于是决定写一篇关于报错注入的文章来总结总结。 说到SQL报错注入,以前只是知道它的用法,但是对于它的具体原理总是不太理解,今天借这个机会一并说明。 主键重复报错 利用floor()函数使SQL语句报错,实际上是由rand(),count()...

彩虹表

Hash的相关知识 Hash又称散列算法、哈希函数,是一种从任何一种数据中创建小的数字“指纹”的方法。散列函数把消息或数据压缩成摘要,使得数据量变小,将数据的格式固定下来。 Hash函数的性质 1.能够根据任意的消息计算出固定长度的Hash值 2.能够快速计算出Hash值 3.消息不同散列值也不同(但是相同的散列值可能来自不同的输入) 4.抗碰撞性:找出任意两个不同的x,x' \in ...

hash长度拓展攻击

hash算法的实现(md5为例) md5算法的实现如下图: 下面详细来说明一下md5的加密过程: 1. 我们要实现对于字符串abc的 md5 的值计算。首先我们要把其转化为 16 进制. 2. 补位 消息必须进行补位,即使得其长度在对 512 取模后的值为 448。也就是说,len(message) % 512 == 448。当消息长度不满 448 bit 时(注意是位,而不是字符串长...

CTF中的RSA套路

前言 RSA是在CTF中经常出现的一类题目。一般难度不高,并且有一定的套路。(10.1补:我错了,我不配!我不配密码学)在此我写篇文章进行总结。本文不过多赘述RSA的加解密, 仅从做题角度提供方法。虽然说不赘述加解密,但是我们还是需要清楚在RSA里面的几个基本参数。 N:大整数N,我们称之为模数(modulus) p 和 q :大整数N的两个因子(factor) e 和 d:互为模反数的两...

SQL约束攻击

前言 这几天做CTF了解到SQL约束攻击的相关知识,特此写篇博客总结一下。(突然发现博客已经N长时间没有更新了) 前置知识 在SQL中执行字符串处理时,字符串末尾的空格符将会被删除。 EG: 可以看出,在图中两个SQL查询语句得出的结果是相同的。这是第一个利用的知识点。 在所有的INSERT查询中,SQL都会根据varchar(n)来限制字符串的最大长度。也就是说,如果字符串的长度大于“n...