J0H学习笔记

j0h   ·   发表于 2018-06-10 16:50:04   ·   CTF&WP专版

 公开课靶场作业笔记

(因为0基础,只能按照视频里面老师讲解的去做,很多理解错误的地方还请老师帮忙指点)

第一章Sql Injection — 注入攻击原理 --学习笔记

首先拿到传送门的网址,点击进入的页面我们发现是这样:http://120.203.13.111:6815/

 

然后点击“点击查看新闻1”,然后我们会发现URL会变成这样:http://120.203.13.111:6815/?id=1

 

很明显我们已经知道有SQL注入漏洞,尝试在id=1后面加上单引号,页面文字消失,说明sql语句查询页面内容失败,加上单引号之后查询失败说明后台执行SQL语句查询失败

 

我们首先使用order by 猜测表字段为2

然后尝试用and 1=2执行页面内容不显示,因为在原本的sql语句后面加上and 1=2之后语句执行失败不显示了 。

 

然后再结合尝试联合查询,查询数据库的版本和查询当前的数据库名;

查询数据库版本:and 1=2 union Select 1,Version()(因为页面只显示查询的一个字段的结果,所以页面会显示数据库的版本信息和数据库名)

查询当前的数据库名:and 1=2 union Select 1,database()

 


根据数据库版本和库名可以查询出当前库下的所有的表名,利用sql的GROUP_CONCAT函数将表全部一行显示(而显示在前台的是id字段所对应的表的名称admin):and 1=2 UNION SELECT 1,group_concat(table_name,0x3c2f62723e) from information_schema.tables where table_schema=database()

 


然后尝试查询密码:and 1=2 UNION SELECT 1,password from admin

第二章、Sql Injection — 注入攻击原理-2  --学习笔记

题目:(数据库不再是mysql)

然后点开进入到传送门,发现是个新闻网站,然后URL并没有特殊参数

然后点开第一条新闻,发现URL变成这样:http://120.203.13.111:8001/shownews.asp?id=171

一贯的思路引号尝试页面报错,说明执行失败的SQL语句返回结果前台也正常显示,输出没有过滤;



尝试用order by查询标的字段,发现order by 并没有被过滤,切查询出当前表字段数为10

 

我们尝试在URL中继续操作被拦截,那么将测试语句放到cookie里面,再发送给服务器,(抄的:因为网页防护一般只拦截Get、post传参),使用谷歌插件

我们将id参数放入到cookie中发现页面响应正常,说明后台获取id参数的请求没有指定为GET或POST,再尝试下一步,查询数据库版本和当前库名等操作

查询数据库版本和库名失败

然后尝试猜测数据库名,已知道数据库的字段数目为10,cookie的这么写:id=171+union+select+1,2,3,4,5,6,7,8,9,10+from+admin,尝试成功

页面上显示了2、3、7、8、9,那我们尝试将2和3换成密码和用户名的字段,用户名和密码成功显示在页面上,但是密码是一串密文16位字母和数字组成,尝试md5破解看看


成功获取明文密码为:welcome


第三章、 抓包和CSRF伪造 --学习笔记

首先点击进入传送门,用刚刚获取的用户名密码登录,发现登录后的页面提示不允许从外部链接访问,根据已学习的内容,将referer中的IP部分修改为127.0.0.1试试,还是用到谷歌插件

将referer修改后发现还是访问不了,然后尝试再将Host也修改为127.0.0.1刷新页面成功拿到我们要的


第四章、 cookie伪造管理员权限 --学习笔记

存储型XSS

点开传送门,发现是个留言页面,在所有能输入的地方插入xss语句:<script>alert('zkaq')</script>(有漏洞的话,提交之后会再次访问该留言会有弹框)

果然,页面弹框了 

查看页面源码会发现主题的地方没有做xss防护,导致了xss注入

然后我们就可以利用XSS平台(http://xsspt.com/)成功地拿到管理员的cookie以及本题的flag




第五章、 绕过防护上传木马 --学习笔记

首先来看下题目,我们需要拿到在web根目录的flag.php文件

继续上一题我们拿到管理员的cookie 之后,可以成功地登录到管理员的前台界面,如下图


那么要拿到web根目录下的文件 ,我们需要拿下系统的后台,通过上传木马结合菜刀工具,首先我们通过前面几题可以获取到一些信息,比如:操作系统版本、IIS6、后台脚本语言asp、数据库版本等等,然后我们寻找一个可以上传文件或图片的点

比如修改配置的这些地方,或许前端没有做严格的校验

以及以下这几个可以插入木马语句以及上传文件的地方

找到上传点,那么首先尝试直接上传带木马的asp文件,发现被拦截,有过滤


首先已知道IIS6存在文件解析漏洞,百度

那接着尝试将asp文件后缀加上;.jpg尝试能否绕过后缀名过滤,尝试失败,


直接将asp文件后缀改为可以上传的cer格式也被拦截

那么结合视频就按照老师讲解的,上传经过改装的包含木马的图片更改文件后缀为cer成功上传

那么接着就上菜刀啦 ,成功拿下



第六章 webshell控制目标--学习笔记

题目

既然上一章中我们已经拿到了后台的web目录,尝试直接访问C盘试试(当然不会那么简单),提示没有权限,说明当前拿到的不是系统最高的权限。

那么想要拿到系统权限怎么办,这第一次只能按照老师的课堂笔记来了 ,上传cmd.exe和iis6.exe文件

直接再菜刀中右键点击上传


然后打开CMD添加一个用户(net user liuliu 123456 /add);再利用已知的wmiprvse.exe漏洞(运行iis6.exe),将用户添加到系统组;使用户liuliu有系统管理员的权限;然后查询远程连接服务的端口(先查询远程服务的进程TermService的PID(tasklist -svc),根据PID查询到端口号(netstat -ano);再然后就是利用本地的远程连接服务去连接对应服务的IP,欧拉。

成功添加用戶liuliu并加入到administrators组

成功拿到flag

老师提供的思路:


打赏我,让我更有动力~

0 条回复   |  直到 2018-6-10 | 1515 次浏览
登录后才可发表内容
返回顶部 投诉反馈

© 2016 - 2024 掌控者 All Rights Reserved.