利用xss获取管理员用户名密码

1、在网站https://xssaq.com注册账号,并登录

2、在项目操作模块点击创建项目,并输入项目名称

3、点击立即提交后在我们的项目模块里找到自己的项目,点击右上角的查看配置代码,复制script这⼀条代码

4、打开⼀个pikachu平台 xss盲打并将我们刚才复制的script恶意代码输⼊进去

5、模拟管理员,登录后台地址

6、输入用户名和密码

7、回到我们的xss平台,刷新,查看,就可以得到刚刚我们模拟管理员的用户名和密码了

利用XSS(跨站脚本攻击)存储型漏洞,通常发生在前端页面接收用户输入并在未经过充分过滤的情况下直接拼接到HTML中。这种情况下,恶意用户可以注入执行脚本的HTML片段,使得攻击者能够间接控制浏览器的行为。 假设我们已经获取到了一个存储型XSS漏洞的可控制值,例如在一个表单提交中,我们可以尝试构造一个包含恶意脚本的POST数据: ```html <script>alert('XSS Vulnerability!');</script> <!-- 隐藏的恶意脚本 --> <form action="http://192.168.1.3:8007/admin/admin_usersetting.asp" method="POST"> <input type="hidden" name="admin_username" value="malicious_username_here"> <input type="hidden" name="admin_password" value="malicious_password_here"> </form> ``` 当用户点击此表单后,实际发起的POST请求将会携带这些隐藏的输入参数: ```javascript var xhr = new XMLHttpRequest(); xhr.open('POST', 'http://192.168.1.3:8007/admin/admin_usersetting.asp', true); xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); // 注意:对于XSS注入,通常不需要设置Content-Type为JSON // XSS注入的管理员名和密码 var adminUsername = document.getElementById('malicious_username').innerText; var adminPassword = document.getElementById('malicious_password').innerText; var params = `admin_username=${adminUsername}&admin_password=${adminPassword}`; xhr.send(params); ``` 这里我们利用`document.getElementById`获取到恶意脚本元素内的值作为用户名密码。 请注意,这只是一个理论示例,实际操作中,由于XSS攻击是在服务器渲染后的HTML中生效,你无法直接利用`document.getElementById`获取到恶意值。真实情况下,你应该从服务器的响应中提取这些值,这通常涉及到更复杂的网络抓包工具或者自动化测试框架。 至于登录阶段,如果你能获取管理员用户的凭证(可能是通过XSS或者其他手段),你可以按照类似的方式发送登录请求。然而,为了保证安全性,建议在生产环境中对所有用户输入进行严格的验证和清理,防止此类漏洞发生。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值