南邮ctf web题×2
1.伪装者
一看题目就知道应该伪造IP
所以打开burpsuite抓包,伪造本机IP127.0.0.1后得到了flag:
单身一百年也没有用
和之前单身十年那道题看起来有点类似 ,但又有些不一样
还是先点进去看看
发现没什么用,然后还是用burpsuite抓包看看
抓到包后右键点击 send to Repeater 在repeater里面点一下GO flag就出来了
Dorbox --xss练习
xss反射型
反射型xss:攻击者事先制作好攻击链接, 需要欺骗用户自己去点击链接才能触发XSS代码(服务器中没有这样的页面和内容),一般容易出现在搜索页面。
直接在框内输入一段JavaScript代码: <script>alert('xss')</script>
就弹框了
查看源码,发现写入的代码被插入进了源代码中当成了HTML标签执行:
xss存储型
存储型xss:代码是存储在服务器中,如在个人信息或发表文章等地方,加入代码,如果没有过滤或过滤不严,那么这些代码将储存到服务器中,每当有用户访问该页面的时候都会触发代码执行,这种XSS非常危险,容易造成蠕虫,大量盗窃cookie(虽然还有种DOM型XSS,但是也还是包括在存储型XSS内)。
还是在输入框中插入 <script>alert('xss')</script>
就会有弹框出来
查看源码后可以看到 插入的代码也是被当做HTML标签执行了
和反射型xss不同的是,存储型xss会将代码存储到服务器中,当下我下次再打开这个页面时会直接弹框
DOM型xss
有点摸不清这个类型的xss 的路数…
我还是在框内输入了<script>alert('xss')</script>
然后还是有弹框出来
但查看源码时,就没有看到写进去的代码
发现中间有一段Java代码
<script type='text/javascript'>
function getURLValue(name){
var reg = new RegExp('(^|&)'+ name +'=([^&]*)(&|$)');
var r = window.location.search.substr(1).match(reg);
if(r != null){
return unescape(r[2]);
}else{
return "";
}
}
document.write(getURLValue('name'));
</script>
尝试解读…
解读失败…
java代码暂时看不大懂,等我学习了JavaScript再回来补上。
文件包含
去搜了搜文件包含的原理:
开发人员将相同的函数写入单独的文件中,需要使用某个函数时直接调用此文件,无需再次编写,这种文件调用的过程称文件包含。
漏洞:开发人员为了使代码更灵活,会将被包含的文件设置为变量,用来进行动态调用,从而导致客户端可以恶意调用一个恶意文件,造成文件包含漏洞。文件包含漏洞也是一种“注入型漏洞”,其本质就是输入一段用户能够控制的脚本或者代码,并让服务器端执行。
任意文件包含
查了查,文件包含分为:本地文件包含和远程文件包含。
本地文件包含:是包含在服务器本身的恶意文件,可以使用相对路径或是绝对路径来访问。
查看本地文件确实有一个txt的代码文件
通过访问 http://127.0.0.1/DoraBox-master/file_include/any_include.php?file=txt.txt&submit=submit
然后就直接读取了,因为被包含的页面的后缀无论是什么都会当做PHP解析。
目录限制文件包含
查看源码,发现有个 ./
然后就直接访问./txt.txt 直接就访问起了
然后我就去访问了另一个文件:include_1.php?file=…/readme.md&submit=submit
访问成功。