- 博客(4)
- 收藏
- 关注
原创 SQL笔记
ascii(substr((select database()),1,1))=98(改变第一个1和98的值相当于将名字一个个和字母比较,从而得到完整名字)储存MySQL中的表信息,包括这个标识基本表还是系统表,数据库的引擎是什么,表有多少行,创建时间,最新更新时间等。储存MySQL表中的列信息,包括这个表的所有列以及每个列的信息,该列是表中的第几行,列的数据类型,权限,注释等。储存MySQL所有数据库的基本信息,包括数据库名,编码类型路径等。系统数据库,记录当前数据库,表,列,用户权限等信息。
2023-11-09 14:00:32
61
1
原创 新知识,变量覆盖
当只POST一个值为1的变量flag,$$key = $valu=>$flag = 1,使可能原本存在的变量$flag被赋值为1,即真实的flag被修改为变量flag的值,由于前面的两个if,这是无法被改变的。所以思路是利用变量覆盖在flag被改前将真实的$flag的值覆盖$_403或$_200并输出,而能利用变量覆盖将一个变量的值覆盖其他变量的地方只有第一个foreach处。看回上面的变量覆盖,foreach ($_POST as $key => $value)$$key = $value;
2023-11-08 00:35:43
161
1
原创 SQL实践2
这里的回显不明显,所以改完之后可以用前面的1';#查看一下是否成功了(很显然我是成功了的,哈哈哈)对已知表名的修改1';看到select被过滤掉了,后面采用了大小写、编码等常见的绕过效果不理想,所以我们果断更换思路。这里不知道为什么这个表就是查不出来了,既然我们已经确定了flag在这个表里了索性就不截图了。既然查之前一大串数字表名老是查不出来,干脆直接将原来的数字表名改为好查的英文表名ok。出现了这个状况后就只能销毁靶机了,其他的操作都无法实现了。这里属实不知道怎么做的了,看好几位大佬的WP都没懂。
2023-11-06 17:05:43
55
原创 SQL注入实践之路1
' and 0 union select 1,2,database()#还可以用1' union select 1,2,datebase()#以及1' union select 1,null,database()#简单梳理一下大致流程:寻找注入点--->确定注入方法--->查数据库名--->查表--->查列--->爆出内容。='news'#(语句里的table_name='表名 ',table_schema='数据库名' )知道了数据库名我们就可以接着查它的表了。这里我先采用了1'进行测试。
2023-11-06 01:38:39
207
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人