Wooyun + Ubuntu = Woobuntu

Woobuntu是基于Ubuntu系统的一款安全研究环境配置工具,可以自动安装并配置众多的安全工具与依赖环境,此外还针对中国用户的习惯进行了一些优化,可以为白帽子们提供更加优雅的桌面系统体验。Woobuntu完全开源免费,并且保留了Ubuntu的全部特性。

0x00 从kali说起


对于绝大多数白帽子而言,目前最好的渗透测试Linux系统是kali linux(之前的Backtrack Linux),我也一直在用Kali来进行各种工作。但是作为一个中国人,不得不说Kali用起来相当别扭,列举一下我在安装配置Kali过程中遇到过的问题:

  1. 安装时选择中文,安装完没有中文输入法,然后经常需要输入 cd 桌面
  2. 由于是root用户登录,没法用chrome,没法用VLC (去google十分钟吧,啊不,百度十分钟)
  3. 装完没有Office,必须从虚拟机复制截图和代码出来写word文档
  4. 不带linux-header,VirtualBox增强功能装不上
  5. 一个apt-get输入完,连接kali官方软件源的速度简直不忍心看
  6. 复制国内kali源到……没有增强工具包复制不进虚拟机,虚拟机内开浏览器发现是iceweasel,搜索时打不出中文字,惨不忍睹……

0x01 从Ubuntu说起


对于大部分Linux初学者来说,Ubuntu的桌面系统相对更加友好一些,尤其是Ubuntu麒麟版,算了不评论了,继续说一下在使用中遇到的问题:

  1. Unity桌面很别扭,从没用过全局DASH,我要用什么肯定是ctrl+alt+t然后输命令(因为菜单没了)
  2. 比起什么软件都没有装,滥装垃圾软件更可怕
  3. 作为一个安全研究人员,要装的东西太多了,太费劲了,随便一个msfconsole打进去竟然都没有……

所以,Ubuntu的桌面体验和中文支持要优于Kali,只不过Ubuntu上没有预装好安全工具,而且针对高技术能力的白帽子人群还有一些很别扭的地方需要调整

0x03 Woobuntu的理想


我曾经看过很多文章,都叫做《安装完XX系统后要做的XX件事》,有的文章做的事甚至多达20件,如果还要做如此多的事情,为何不直接集成在系统安装镜像中?

既然人们对系统“预装软件”所持的褒贬态度大不相同,为何不直接给出一个干净的系统,再给出简单方便可修改的工具自动化安装脚本,让他们各取所需?

能力超群的白帽子们心里真正想要的,不是一个能令多数人满意的操作系统,而是一个“可以自己定制预装软件,而且定制过程非常简单”的操作系统,而且这个自己改过的脚本将来还可以分享给别人。当然如果你很懒的话,直接下载一份预编译的Woobuntu系统就开始用也可以,至少里面有输入法和metasploit了哼哼~

所以Woobuntu的目标如下:

  1. 完全开源,并且会有文档教你如何注释掉你不需要安装的工具(前面加#号)
  2. 自动化构建安装镜像(需要你设置mysql密码之类的地方需要手动设置),有prebuild的安装镜像可参考
  3. 针对中国白帽子加强的初始设置以及中文支持
  4. 大量的安全工具集成,以及自动完成部分工具的初始化配置,大量的安全研究环境集成,可无需配置直接编译WooyunWifi和Woophone Android代码(代码包太大,后续提供)
  5. 仍然是一个Ubuntu,可以胜任桌面主系统(提醒一下,Ubuntu是可以和Windows共存的,装虚拟机也可以,U盘直接运行也可以)

总结就是让白帽子用最少代价构建一个完全自己定制的Ubuntu系统,用来安全研究和测试

0x04 Woobuntu特性


Woobuntu比Ubuntu多一个Kali,比Kali多整个Ubuntu(因为kali自己做repository,所以它基于什么都不重要了,软件包陈旧的难以想象)

  1. 重点预装Wine QQ ,chromium ,metasploit-community,beEF,burp,edb-debugger,无线破解全家桶和字典,多数图形化软件在菜单中有启动器
  2. 一大堆常用的安全工具(请参见源码,比如sqlmap,nmap,arachni之类的实在太多了),开发环境更不用说了,直接免配置编译Android、Openwrt
  3. 取消了“桌面”文件夹,再也不用命令行 cd 桌面 了 ,Vim的轻微配置,Terminal的预设置,文泉驿微米黑,之类一大堆的优化
  4. 一个装满了常用插件的firefox(而且可以随着Ubuntu软件源更新)
  5. 直接把restricted-extra还有中文输入法等集成进安装包了,不用担心安装系统时下载超多软件包卡住不动了(懒人在下载软件包时点跳过就好了,不懒的人等他下载完更新下软件包版本也可以)
  6. php5 mysql-server php5-mysql 预先下载好但未安装,如果想要安装,不需要联网了,当然不安装也可
  7. 编译WooyunWifi和Woophone Android代码时无需配置环境了,对于想要尝试自己构建乌云路由和乌云手机固件的白帽子来讲,可以尝试编译Openwrt和CM 12.1了
  8. 仍然是Ubuntu,仍然可以直接upgrade,仍然可以装steam玩dota2,当然也可以在Woobuntu里面用Woobuntu构建脚本来定制一个Woobuntu安装镜像
  9. 可以光盘启动,U盘启动,如果有乌云手机,也可以手机USB伪造光驱启动
  10. 你可以定制安装脚本,生成一个你自己专属的安装镜像(妈妈,我有一个自己的操作系统了)

只是列举了一些关键特性,其他的特性请参见源代码,因为不是所有的特性都能公开说

最后提醒一下,相对于Windows,Woobuntu解决了盗版问题,不,算了,还是当我没说吧

0x05 如果我就是喜欢kali


因为Ubuntu是Linux,所以你可以用Docker来加载kali,比虚拟机效率高多了,尽管Woobuntu已经集成了大量的安全工具环境,如果你就是喜欢kali,用Ubuntu+docker比用Windows+虚拟机更省资源

另外Woobuntu也可以安装VirtualBox虚拟机,然后虚拟机运行Windows或者kali,而且别忘了,你已经有wine了,某些Windows程序是不需要虚拟机直接就能双击运行的,而在Woobuntu中编译的二进制文件是可以直接拿到Kali中运行的

0x06 游戏体验


Woobuntu中可以装steam来安装各种游戏,比如dota2

建议您留一份Windows操作系统用于玩大型游戏,在需要玩大型游戏时重启至Windows进行游戏,当然你直接把Woobuntu丢在Windows下的虚拟机里也可以,毕竟是xfce的轻量级桌面,虚拟机条件下xfce比gnome运行要流畅的多,虚拟机分配2G内存即可流畅运行多数工具(如果需要编译openwrt或者Android代码请增加内存,如果需要在虚拟机内开大量浏览器网页请适当增加内存)

0x07 社区支持


如果您有什么建议,比如增加一个工具或者调整一项配置,可以在乌云社区内讨论,或者直接fork代码,然后发一个pull request

如果发现BUG,可以在Github上开个issue,或者直接在乌云社区里发帖

还有亲爱的喷子们,欢迎来喷,相比之下喷Woobuntu比喷Kali要舒服多了,因为作为开发者,我就在乌云社区里而且我们都看得懂中文~嘿嘿嘿O(∩_∩)O

乌云社区Beta测试发布地址(预编译系统镜像):http://zone.wooyun.org/content/24191

源码github地址:https://github.com/woolabs/Woobuntu

Woobuntu的更多相关文章

  1. Woobuntu woobuntu_build.sh hacking

    # Woobuntu woobuntu_build.sh hacking # 说明: # 有时候因为一些需求,我们需要定制一些系统,包括Ubuntu系统,于是 # 我们自然需要知道如何去解包一个Ubu ...

随机推荐

  1. CentOS7性能监控系统安装

    想打造 New Relic 那样漂亮的实时监控系统我们只需要 InfluxDB/collectd/Grafana 这三个工具,这三个工具的关系是这样的: 采集数据(collectd)-> 存储数 ...

  2. linux常用命令(18)find exec

    find是我们很常用的一个Linux命令,但是我们一般查找出来的并不仅仅是看看而已,还会有进一步的操作,这个时候exec的作用就显现出来了.-exec  参数后面跟的是command命令,它的终止是以 ...

  3. Element Children

    The childNodes property contains all of the immediate children of the element. There is a significan ...

  4. C# Path.Combine 缺陷(http路径用Uri类)

    Path.Combine: 什么时候会用到Path.Combine呢?,当然是连接路径字符串的时候! 所以下面的代码可以完美的工作: public static void Main() { strin ...

  5. 关于ckeditor在IE下出现不兼容的问题

    今天在用ckeditor时在ie下测试出现了不兼容问题,样式,字体等属性设置不了. 后来在html标签上方添加了: <!DOCTYPE html PUBLIC "-//W3C//DTD ...

  6. react-redux provider组件

    provider组件概念图   react-redux provider组件概念图 provider组件的作用 provider包裹在根组件外层,使所有的子组件都可以拿到state.示例: impor ...

  7. Python爬虫学习==>第四章:MySQL的安装

    学习目的: 掌握MySQL数据库的安装 正式步骤 Step1:安装数据库 百度MySQL,下载软件 端口设置 设置密码,我的密码123456 下一步 下一步 查看MySQL服务器是否启动 PS:未申明 ...

  8. 反爬虫2(代理ip)

    在进行爬虫访问时,被访问主机除了会校验访问身份,还会校验访问者的ip, 当短时间同ip大量访问时,主机有可能会拒绝 返回,所以就现需要代理ip, 百度中可以获取到大量的免费的代理ip(ps:注意在访问 ...

  9. mysql --single-transaction 在从库导入完数据以后要在配置文件/etc/my.cnf 中加上read_only=1的参数

    1.在做数据库的主从时,防止在这个过程中,有数据访问进来,要: 要想连super权限用户的写操作也禁止,就使用"flush tables with read lock;",这样设置 ...

  10. poj3264(简单线段树)

    题目链接:https://vjudge.net/problem/POJ-3264 题意:线段树简单应用题,区间查询最大值和最小值的差. 思路:用线段树维护区间的最大值和最小值即可. AC代码: #in ...