Django之基于iframe的ajax伪造

2018-11-22 08:44:53来源:博客园 阅读 ()

新老客户大回馈,云服务器低至5折

IFRAME是HTML标签,作用是文档中的文档,或者浮动的框架(FRAME)。iframe元素会创建包含另外一个文档的内联框架

ajax的理念是不进行浏览器页面刷新的信息获取更新,也就是局部刷新。

那么伪造ajax的方式即为将向服务端发送请求返回的数据返回到iframe中,再使用js从iframe中的文档中取出数据使用。

具体方式简单举例:


<form action="/login/" method="post" target="iframe_1" >
        <iframe style="display: none"  id="iframe_1" name="iframe_1" src="" onload="loadIframe();"></iframe>
        <input type="text" name="user" />
        <input type="password" name="pwd" />
        <input type="submit" />
    {% csrf_token %}
</form>

onload函数为


function loadIframe() {
    var str_json = $('#iframe_1').contents().find('body').text();   //找到iframe中的内容
     var obj = JSON.parse(str_json);
   console.log(obj.message)
}

python视图函数:


def login(req):
    if req.method == 'GET':
        return render(req,'app1/login.html')
    if req.method=='POST':
        ret = {'message': 'ajax伪造成功'}
        return HttpResponse(json.dumps(ret))
?

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Python入门学习

下一篇:想学习Python,完全0基础能否学会?