今天pybeef作为一个课程设计答辩完成了,向老师介绍了很多xss利用相关的场景和技术。

先说一下已经实现了什么,

1, 浏览器版本的判断

这方面只能判断IE和firefox 火狐判断只判断了user-agent ,IE是通过浏览器的特性,关于IE edge 是我根据IE10的一些特性测试得出的,如果判断顺序合理的话肯定是准确的。

后续:肯定要加上chrome浏览器

2,js-shell 命令执行

其实就是一个传过去一个函数,hook端接收执行一下,很鸡肋的一个功能,但是为了让框架完整加上了这种返回的命令控制模块。

3,读取内网的ip

webrtc是一个大坑,勉强给填上了,还是不想再深入了拿到ip地址就好。

后续 :IE不支持webrtc beef用host字段来标识浏览器。

代码放到了github上,欢迎大牛提建议

https://github.com/littleworldwar/pybeef

昨天还发现了一个bug,得到的cookie不能完全传回来,只能传回来一点,虽然老师不能发现,但是对于一个xss工具来说这是一个很致命的错误了,毕竟大家用xss都是为了获取cookie ,这方面我会继续研究下去的。

另一个问题还是架构上的问题,我其实已经模仿了beef 的架构,但是发现自己还是没有领悟精髓。

我主要是用ajax传回数据,beef好像不是这样。

beef的hook端有两种请求,

一是类似hook.js?hook_id=xxxxxxx 特定间隔重复发出 ,用来探测目标是否存活,同时传回命令执行

二是dh?asdasdads (携带了初始的一些重要信息)初始信息发送,其余时候不详

下阶段改进:

1,先把浏览器的判断整全

2,cookie要传回来,hook端请求方式可能要改,不行就用websocket

3, 同样和beef一样要分成两种请求回传数据,现在只有一种post请求

4,多加一些小功能,比如端口扫描,页面欺骗,和反弹shell文件下载等等

未来方向:其实xss框架这方面在市面上好像一种没有什么人关注,可能利用的价值不是很大?

1, 希望整合漏洞扫描 ,先编写一些常见漏洞扫描的python和js版本练练手,特别是在xss控制了很多浏览器的时候就相当于一个分布式的扫描器啊,当然任务调度方面要做好也是很不容易。

2,浏览器溢出,其实先把autopwn集成过来是一个不错的选择,这方面坑实在是太大,毕竟这方面我还是小白,先补一补汇编语言和操作系统,然后再来溢出这边试试水吧。beef中有一个跨协议漏洞利用真的是很神乎其技。

xss框架的一些想法的更多相关文章

  1. xss框架(二)基础框架实现

    简述 自上一篇博客介绍浏览器通信以来已经过去将近两个月了,兜兜转转挖了不少坑,也走了很多弯路.期间研究saml2.0和单点登录等技术都最后无疾而终. 只有xss框架这部分坚持了下来,这个框架还有很多事 ...

  2. xss框架基础框架实现

    0x00web服务器设计 (1)tornado处理请求和Application类要编写一个Tornado应用中最多的工作是定义类继承Tornado的RequestHandler类,主要用于将特定的ur ...

  3. 关于Java的一些NIO框架的一点想法

    闲着有点无聊想写点东西. 问题:生活中工作中,会有人问我javaNIO框架里面 Netty Mina  xSocket Grizzly 等等哪个比较好? 在这里写一下自己的感受,也算是总结一下吧 在我 ...

  4. 2017年"程序媛和工程狮"绝对不能忽视的编程语言、框架和工具

      2017年"程序媛和工程狮"绝对不能忽视的编程语言.框架和工具 在过去的一年里,软件开发行业继续大踏步地向前迈进.回顾 2016 年,我们看到了更多新兴的流行语言.框架和工具, ...

  5. 转:2014 年 15 款新评定的最佳 PHP 框架

    原文来自于:http://blog.jobbole.com/59999/ 原文出处: codegeekz   译文出处:oschina   欢迎分享原创到伯乐头条 通常,框架都会被认为是帮助开发者快速 ...

  6. 2014年15款新评定的最佳PHP框架

    通常,框架都会被认为是帮助开发者快速设计和开发动态网站的软件应用.每个月都有极大数量的新发布的 PHP 框架,使网站开发更简单更高效. 如果你是位 PHP 开发者,正在寻找当前最好的一些 PHP 框架 ...

  7. 凉鞋:我所理解的框架 【Unity 游戏框架搭建】

    前言 架构和框架这些概念听起来很遥远,让很多初学者不明觉厉.会产生"等自己技术牛逼了再去做架构或者搭建框架"这样的想法.在这里笔者可以很肯定地告诉大家,初学者是完全可以去做这些事情 ...

  8. XSS语义分析的阶段性总结(二)

    本文首发于“合天智汇”微信公众号,作者:Kale 前言 上次分享了javascript语义分析,并且简单介绍了新型xss扫描器的一些想法,如何在不进行大量fuzz的情况下又能准确的检测出xss漏洞,这 ...

  9. MVC CodeFirst简单的创建数据库(非常详细的步骤)

       最近在学习MVC的开发,相信有过开发经验的人初学一个新的框架时候的想法跟我一样最关心的就是这个框架如何架构,每个架构如何分工,以及最最关键的就是如何与数据库通信,再下来才是学习基础的页面设计啊等 ...

随机推荐

  1. ASP.NET 程序发布详细过程

    前言 ASP.NET网站的发布,无论是初学者还是高手,在程序的发布过程中或多或少会存在一些问题,譬如VS发布ASP.NET程序失败.IIS安装失败.IIS发布失败.局域网内不能访问 配置文件错误.权限 ...

  2. 浅谈敏捷组织中PMO的角色

    所谓的"敏捷组织"其实并没有标准的模式,而且PMO(项目管理办公室)并没有一个标准的角色定义.有一个非常普遍的误解,公司在选择"敏捷"或者"瀑布&qu ...

  3. MySQL基础知识2

  4. Ubuntu16.04 server下配置MySQL,并开启远程连接

    背景 最近正在学nodejs,想到曾经有台云服务器,但是很久不用了,由于怕麻烦,一股脑的把云主机重装了个Ubuntu系统,于是配置MySQL成了配置服务中的一个环节(node用不用MySQL不管,主要 ...

  5. linux操作系统简单使用

    文章将包含几个内容: linux简介 linux操作系统的安装简述 linux操作系统的磁盘文件结构 linux操作系统中的文件操作 linux中的用户管理 网络配置管理 常用系统管理指令 linux ...

  6. HDU 4403 A very hard Aoshu problem(DFS)

    A very hard Aoshu problem Problem Description Aoshu is very popular among primary school students. I ...

  7. express 4.x 文件上传

    1.安装文件上传模块: npm install multiparty --save 2.在routes/index.js 中添加: // 引用模块 let multiparty = require(& ...

  8. python3中str的函数

    # 转换# 'capitalize',# 'lower',# 'upper',# 'casefold',# 'swapcase', 大小写互换# 'title',# 'strip',# 'rstrip ...

  9. [NEUQ-OJ] 1012 SZ斐波拉契数列

    一道水题,让我看清基础我的基础是多么薄弱. 递归,数组清零,数组名/变量名重复层出不穷...路漫漫啊.......... http://ncc.neuq.edu.cn/oj/problem.php?i ...

  10. POJ 3253 Fence Repair (优先队列)

    POJ 3253 Fence Repair (优先队列) Farmer John wants to repair a small length of the fence around the past ...