十一月份上旬总结
- 在做这道题目之前下载了虚拟机安装好了Ubuntu
- 然后弄好共享文件夹(经过百度我在Ubuntu中找到了我创建的share共享文件夹)
- 然后将此题的附件下载到share文件夹,并且改好名字,因为名字太长不方便使用,我改成了linux
- 分析题目,需要在linux里面找到关于flag的东西
- 打开终端,输入以下代码进入root身份(经过百度已经创建好了root身份)
su root
- 然后cd到share里面(我直接可以cd share因为我创建了个软连接到home)
cd share
7.然后开始寻找flag
strings linux|grep flag
发现了flag的位置
- 将文件挂在Ubuntu上,进入mnt里面通过ls来查看里面的文件
mount linux /mnt cd /mnt ls
发现了之前flag.txt所在的目录
- cd到那个目录里面
cd 07avZhikgKgbF
10. 利用base64解码
base64 -d flag.txt
找到flag成功
第二题sql注入
- 本题只找到flag的部分
打开网址
1.查看源代码
2. 进入画圈圈的地方
找到了解题依据,先一步步来
3. 首先判断是否为注入
1’ and 1=1
1’ and 1=0
都报错
4.然后判断是什么类型
1"登入失败
1’报错
5.知道了用1’来注入,再次返回刚刚的代码,经过分析
p
a
s
s
=
m
d
5
(
pass = md5(
pass=md5(_POST[pass]);
if ((KaTeX parse error: Expected 'EOF', got '&' at position 10: row[pw]) &̲& (!strcasecmp(pass, $row[pw]))) {
echo "
Logged in! Key:**************
“;s q l = " s e l e c t p w f r o m p h p w h e r e u s e r = ′ sql = "select pw from php where user=' sql="selectpwfromphpwhereuser=′user’”;
要使得if成立才能得到flag,所以要在username上加一个union语句
那么我们要把用户名和上方注入语句调成
1' union select md5(1) #
此时password是1
然后得到flag
我的能力到这里了