在上一篇中,我们学习到SQL语义引擎的处理流程,但是由于篇幅限制,没有分析到命中指纹库的代码,这次接著继续跟踪了一小段代码,果然功夫不负有心人,让我成功的找到了,

针对攻击字元串 or 1=1 #,命中指纹的处理过程如下:

第1次计算token,遇到, 结果如下,

(gdb) p *sf
$159 = {
s = 0x43bec8 " or 1=1 #",
slen = 10,
lookup = 0x4058b0 <libinjection_sqli_lookup_word>,
userdata = 0x0,
flags = 18,
pos = 1,
tokenvec = {{
pos = 0,
len = 0,
count = 0,
type = 115 s,
str_open = 0

相关文章