看到后面可以读取网址,而且给了提示
nginx emmmmmmm
这里也没有什么其他的nginx漏洞,但是这里读取页面,应该可以先读一下nginx的配置文件啥的
但是这个题,3次检测 前二次不能出现 suctf.cc,但第三次必须要有suctf.cc
这里的关键几个函数:::
搜索一下,发现了漏洞
CVE-2019-9636:urlsplit 不处理 NFKC 标准化
CVE-2019-10160:urlsplit NFKD 标准化漏洞
https://i.blackhat.com/USA-19/Thursday/us-19-Birch-HostSplit-Exploitable-Antipatterns-In-Unicode-Normalization.pdf
具体的一些细节看一下https://zhuanlan.zhihu.com/p/104885386?utm_source=wechat_session
另一种绕过方式是利用ℂ
来代替c
及进行绕过
再记录一个脚本可以用来寻找可用字符
altman师傅的脚本:
# coding:utf-8 for i in range(128,65537): tmp=chr(i) try: res = tmp.encode('idna').decode('utf-8') if("-") in res: continue print("U:{} A:{} ascii:{} ".format(tmp, res, i)) except: pass
关于nginx重要配置目录:
配置文件存放目录:/etc/nginx 主配置文件:/etc/nginx/conf/nginx.conf 管理脚本:/usr/lib64/systemd/system/nginx.service 模块:/usr/lisb64/nginx/modules 应用程序:/usr/sbin/nginx 程序默认存放位置:/usr/share/nginx/html 日志默认存放位置:/var/log/nginx 配置文件目录为:/usr/local/nginx/conf/nginx.conf
现在nginx网站配置从nginx.conf转到同目录文件夹下的default.config