合天网_web模块实验笔记1

笔记:

状态码:
1.请求接受,继续处理
2.请求被接受,理解
3.要求进行更一步的操作
4.语法错误
5.服务端错误
500 服务器错误 503 现在的服务器无法完成

get,post
最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数

ctf web hidded flag
1.思路分析:
第一: 当我看到界面的时候,啥都没有,那么肯定是f12去查找有没有什么隐藏元素,往下翻,看到下面有个p标签,
且里面有个href,有这个那肯定有跳转,答案应该就在跳转里面
第二:点击href,发现页面跳转,但是没有结果出现。多试几次,发现flag闪现
这个时候相到用burp的repeater模块进行单步调试发包
果然falg藏在第一步的包里面
2.思路分析:
拿到整个页面,第一反应这是一个js小程序,得到flag的途径,应该是与游戏的得分相关,那么现在我们需要做的就是取出js程序进行分析
首先f12,看到前端分析里面并没有js ,那么应该是在服务器,我们就用网络模块,对包进行分析,捕捉到js程序,单独取出来分析,
那么关键字肯定是score,ctrl+f顺着score去找,发现一行代码,是在分数大于某个值的时候进行操作,锁定这里,
然后分析代码,可以知道的是是url加e100js返回值,那么先放在url中看出来的是什么东西,发现一大串jfuck字符,放入console里面去执行,好flag拿到
3.思路分析
拿到题目,还是啥都没有,题目提示我叫我去找js,找找到js,那么这个执行结果是咋样的呢,二话不说,直接console执行就好了,果不其然返回了一个新的界面,一片空白
查看f12,好家伙,让我去看.php代码,那我直接url加上走起,好终于看到了flag,但是上面没写,那我去f12里面找,它说flag=$flag变量,那么是不是request响应的时候,
传回来一个flag呢,去包里面看看,果然放在了cookie下面。解决
4.思路分析
拿到这个题目,可以直观的看到就是让我们去隐藏我们自己的ip信息,其实就是怎么去考察设置代理,
然而这里我对http协议并没有那么熟,所以毫无头绪。去查阅下资料知道了,HTTP_VIA = 代理服务器 IP、HTTP_X_FORWARDED_FOR=真实ip还有HTTP_CLIENT_IP
这三个字段就是设置好代理的关键位置,将这三个设置好,那么代理ip就是被启用了,即我们隐藏了我们的ip

知识扩充:
X-forwarded-for:(用来识别,通过HTTP代理或负载均衡方式连接到Web服务器的,客户端最原始IP地址的HTTP请求头字段。在代理转发及反向代理中,经常使用X-forwarded-for字段)
X-client-ip: (X-client-ip用来获取当前请求的客户端ip地址)
via: (Via是HTTP协议的通用头域,通过代理和网关记录http请求,每经过一个代理服务器,就添加一个代理服务器的信息。)


web_小技巧

第一关:提示删除1.php.apk,不知道咋可以直接删除文件,那么先看下这文件内部
果然进去,又给了提示,我的思路是注释掉前面的注释符,然后出button,但是注释也闭合了
但是没用,突然反应过来,点按钮不就是直接跳转链接href吗,那我直接到第二关不就好了

第二关:

发现一个特点,点击按钮之后,确实的到了第三关,但是点击弹窗会回到第二关
这里第一反应就是能不能使用反射型的xss,将这个弹窗覆盖绕过,那么不就直接绕过这个弹窗了,用了,发现并不能,也对哈,直接插入式的执行下,alert(1),就是测试下能不能用xss,好,那我们直接使用window.location重新定向在3rd.php

第三关:直接跳转过去了

第四关:前端啥都没有,不用看了,直接看http协议的请求包和返回包,里面的各种值,绝对有藏的
果不其然,藏着了个PHP文件,直接查看,让我点按钮,又不给我按钮,常规操作了
直接看他的js代码,看看什么个逻辑,发现dispaly:none,这会让元素不显示,被我发现了,我直接改成flex,果然出现了,刚点上去,直接无了,然后我再次看,看到了个鼠标盖过的时候执行的操作,删掉,果然可以进行操作。关卡解。


总结:这里主要是考察一些基本的前端元素审查,基本的js审查
还有有关于http协议的问题,作者制作题目的时候,自己定义了http的响应头,把信息藏在了响应头里面


后台后台后台:
这里的话,我先点击enter,发现这个网站的目前使用的用户,是没有进入下一步的权限的
这里肯定是设置了一个cookie,那么马上打开burn,将拦截的包放到repeater,进行修改
cookie的操作,然后进行复现,发现member的值不知道怎么,然后看到member的值是进行
base64加密操作的,直接解密,发现是normal,也就是说member设置成管理元类型就是对的
修改cookie,用户:随意 member:Admin,主要是要让member级别变成admin
复现显示flag

简单问答:
这里考察的就是间的js元素审计吧,那个灰色的开关就是disable导致的,删掉就可以了
然后呢,我们使用正确的值输入发现结果还是错误的,因为发的是post,我想检查下数据的正确性,我们使用burn进行拦截,然后发现果然值q4错误,2016错了,success应该是true
欧克,修改完,返回正确的flag


渗透测试的第一步就是:信息收集

whois(用来探寻域名的IP,以及域名的全部信息)
可以查询域名姓名,注册人的E-mail,注册机构,注册有效时间
linux有直接的whois命令,windows采用whois网站,或者whois工具
CNNIC:
Internet用户可以查询除.edu.cn之外所有注册在CNNIC域名数据库中以.cn结尾的英文域名
whois工具:
只要是域名都可以查询

DNS协议补充:
一.协议介绍:DNS在53端口上监听请求并提供响应的服务。出于性能的考虑,DNS查询请求用UDP协议交互并且每个请求的大小小于512字节,但是如果返回的请求大小大于512字节,交互双方会协商使用TCP协议。
二.
DNS信息收集-dnsrecon、fierce和dnsmap(主要功能进行子域名嗅探)
1.dnsrecon
通过Google查出站点的子域名与IP信息
-d 指定目标域名 -r 指定范围 -threads 指定线程 -c 把查询到的结果保存到本地
-a 枚举执行axfr请求 -t后面接枚举类型 -D 按照字典爆破子域名
2.fierce
fierce是使用多种技术来扫描目标主机IP地址和主机名的一个DNS服务器枚举工具

3.Dnsmap
Dnsmap也是一款搜集信息的工具,它和Dnsenum一样是用于获得子域名的强有力的工具
-dns 指定目标域名直接扫描
它会自动去检测是否存在'域传送漏洞'。如果不存在然后使用自带字典枚举域名。工具自带的字典路径/usr/share/fierce/,有个hosts.txt文件,这里面是预设自带的字典
-wordlist 字典.txt 自己指定用户字典
-file 指定保存的文件

这里我觉得‘域传送漏洞’,这一点实验里面没有详细的提及到,我就自己去了解了下
首先:了解下域传送这个概念
域传送 :DNS Zone Transfer
DNS服务器分为:主服务器、备份服务器和缓存服务器。
域传送是指后备服务器从主服务器拷贝数据,并用得到的数据更新自身数据库。
在主备服务器之间同步数据库,需要使用“DNS域传送”。

所以我的理解就是:域传送漏洞,就是通过可以使用dns域传送的协议的程序,进行匿名dns域传送,从而得到主服务器的全部信息架构


Nmap
因为自己也用python实现过nmap的某些功能,所以做个简单的总结,nmap就是可以使用各种协议类型,发送各种嗅探报文,通过对方的反应,得到对方的主机提供了什么服务,开放了什么端。是个非常好用的扫描软件。有两种使用方式,命令行和图形化都挺好用的,当然python里面也提供了nmap的库可以直接调用去使用。
我感觉用半开放的—sS比较好,这个方式是不会在别人的服务器上留下你扫描的痕迹
平常还会经常用的-p 指定端口范围
—S进行源端口伪造
参考链接:
https://blog.csdn.net/wocjj/article/details/7541955
https://blog.csdn.net/aspirationflow/article/details/7694274

 

posted @ 2021-10-14 15:36  Lzwhehe  阅读(158)  评论(0)    收藏  举报