#每日三件事,第1065天#
本来以为不是很难的事情,做起来才发现其实还挺难的。
最近把SQL注入的很多靶机都测试了一遍,也给人讲了不少。但是,能够真正理解sqli注入的机会没有。在讲解sqli-lab的实例时,似乎明白了什么是sql注入,怎么去做sql注入。但是换一个环境之后,又是一副老虎吃天,无从下手的样子。
为什么会出现这种情况呢?说到底还是没有理解sql注入的本质。
sql注入的本质到底是什么呢?我觉得其本质就是构造payload,在后台将payload带入数据库中执行。在数据库中执行才是最重要的。
执行,就是把一个能够传递参数的小小位置,构造出一整条语句来,在数据库中执行。
再说说sql注入点的判断。很多教科书上都写的很清楚,用单引号或者双引号测试是否会报错。当你看到报错信息的时候,就会发现有很多引号。说实话,我第一次看到的时候,我也又点儿懵,这个报错信息我也看不懂啊。到底哪个引号是我输入的,哪个引号是系统本来的……其实换成反斜杠就可以了,整个世界似乎从此都清晰的呈现在了我的眼前。接下来应该就比较简单了。如果还没有搞明白的话,可以看看前面我写的有关sql注入的文章。
能够抓住事物的本质,就必须得对这件事儿有深刻的理解。即能够知道各种表象,也能知道实质。









网友评论