menu Secto白帽博客-专注于技术研究
XSS第一课 超级简单的打破(网站)结构注入
747 浏览 | 2020-03-16 | 分类:渗透测试 | 标签:渗透测试

同学们 大家好 首先,这里是一个昨天在我群里自己选做的作业(课程编排来自Nate小朋友的启发)
想要不定期来点学习作业的小朋友可以加一下我群,大佬就别来凑热闹了,在下才疏学浅伺候不来 799654789
屑培训组799654789 799654789 799654789 799654789快家暴!!!!
3.15作业:打破网站结构注入 靶场地址https://tofu.exeye.run/dom
提示:xss 搜索框 懂?
要求:拿到flag弹窗,截图 打破搜索框结构 不得查cookie没有头绪的看代码
要求 截图弹窗里面的flag
可能用到的代码:

<script>alert(document.cookie)</script>

这个就是作业内容,做完了的同学可以接着下面看

首先看到我们的靶场 这里就一个框框摆到这里 有些同学就精明的很a 看到我给的提示直接地址栏执行显示cookie
但是作业要求不是这样子滴 要求是从搜索框打破结构
那就审查元素看看搜索框有啥子hmp东西嘛 看到script这个地方

<script>
$('.search-ipt').on('input',function () {
    if ($('.search-ipt').val()==''){
        $('.history').css('display','none')
    }
    else {
        $('.history').css('display','block')
    }
    let val = $('.search-ipt').val()
    $('.history').html('<a href="/?search='+val+'">暂无搜索结果</a>')
})
</script>

他这里主要讲的就是搜索框的功能就写到这里面了
这个框框他能嘎哈nia?搜索框还能干嘛?自己意会
来,咱随便输点东西进去 看看审查元素有啥子反应

<div class="history" style="display: block;">
<a href="/?search=GOPNIK PROGRAMMER">暂无搜索结果</a>
</div>

这里我们就能做点文章了嘛 学前端的伯伯们应该都晓得吧? 这个div他是用来摆啥子的
再联系一下前面的看 他输入的这个东西就是网页要放在那个val里面的值
这时候我们就想,怎么jump out of the box,那就看看怎么离开这个地方去把我给你的那行东西用上嘛
看到这个a标签 想想我们怎么结束这个标签 是不是他的结束就是一个">对⑧ 那我们就给他一个closure嘛
就像你搞点别的谈恋爱什么的 你没有个closure怎么继续move on到下一个阶段嘛
那就输入">把结构给他补完整给他闭合 然后就是我那行代码试试看
BINGO!FLAG'S HERE!
言简意赅说下来就是:

他这个a标签的href属性 就应该是长这样的:

<a href="/">

然后我们如果直接输入进去我给的那行代码 他这个闭合是在代码之后的 因而输进去就跟啥事没有一样 不会被当作代码的一部分来运行 所以我们就要再给他加进去一个">给他闭合,像这样

<a href=""><script>alert(document.cookie)</script>">

闭合之后他就不再只是一个值 而是当前这个被执行的代码的一部分了

(话说刚刚想到讲的另一种思路 但是各位大佬肯定读完也能get到,我就不加赘述了
好的 那么今天水文章就水到这里 讲的不是很专业化 还希望各位大佬能够提出改进意见 帮助文章成为更好
如果内容有错误的还请及时指出 谢谢各位了 想来听故事一起吹牛逼一起当小白的快点来加下我群799654789
学有余才的同学不妨资助一下小弟买屑IDC的插件和模板
最后附上一个详解图

By:成浩
Time:2020/3/16

知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议

发表评论

email
web

全部评论 (暂无评论)

info 还没有任何评论,你来说两句呐!