Less-32 Bypass custom filter adding slashes to dangerous chars
手工注入
- 在输入单引号后,就在页面的最下面就显示已经转义了。
- 看到转入就直接上宽字节注入吧,不清楚的可以去百度搜一搜什么是宽字节注入。。。我这就不写了。
- 知道这个前面加%df就好,后面的和其它一样就不继续写了。
- 话说,32关JSP也有阿,但是就是一个普通的单引号的闭合。。。没什么难的。
函数分析
- 用之前学过的正则表达式来完成替换,无新函数。
- strlen(),求字符串长度。
- ord(),解析 string 二进制值第一个字节为 0 到 255 范围的无符号整型类型。如果字符串是 ASCII、 ISO-8859、Windows 1252之类单字节编码,就等于返回该字符在字符集编码表中的位置。该函数是 chr() 的互补函数。
- dechex(),返回一字符串,包含有给定 number 参数的十六进制表示。
Less-33 Bypass addslashes()
手工注入
- 和32关一样,没区别。
函数分析
- addslashes(),返回字符串,该字符串为了数据库查询语句等的需要在某些字符前加上了反斜线。这些字符是单引号(')、双引号(")、反斜线(\)与 NUL(NULL 字符)。
Less-34- Bypass Add SLASHES - Post
手工注入
- 和前面一样,没区别,只是改为了post,但是发现了一个小问题,直接用网页进行payload构造不成功,用Burpsuite提交就OK,应该是由于url编码??的问题。
- 可以用万能密码登陆水平越权,也可以去注入拿到想要的信息,语句和之前语句差别不大。
函数分析
- 无
Less-35 why care for addslashes()
手工注入
- 作者这标题太骚气,其实就是一个整形的注入。。。
- 惟一麻烦的就是拿字段名的时候需要填表名,用hex来转换一下就好,多大事。
函数分析
- 无
Less-36 Bypass MySQL Real Escape String
手工注入
- 和32关完成起来没有区别,用之前的payload就行了。
函数分析
- mysql_real_escape_string(),调用mysql库的函数 mysql_real_escape_string, 在以下字符前添加反斜杠: \x00, \n, \r, \, ', " 和 \x1a。
Less-37 Bypass MySQL Real Escape String - Post
手工注入
- 和34关完成起来没有区别,用之前的payload就行了。
函数分析
- 无