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. javascript控制流程语句

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  2. 从GoogleClusterData统计每个用户的使用率、平均每次出价

    之前将google cluster data导入了Azure上的MySQL数据库,下一步就是对这些数据进行分析, 挖掘用户的使用规律了. 首先,为了加快执行速度,对user,time等加入索引. 然后 ...

  3. NAT地址转换常用命令详解

    缺省值:没有启用NAT. 命令模式:全局配置模式. 说明:静态NAT主要用于那些对需要对外部用户开放的服务,如Web服务器等,它可以把本地地址映射为指定的全局地址. 第一种格式实现的是一对一的NAT映 ...

  4. rsync服务安装使用

    ssh方式与daemon方式有什么大的区别吗?相对来说ssh比较简单易理解,是不是daemon安全性比较高呢? 区别是:ssh方式是通过ssh协议来传输,需要知道对方机器的用户名和密码. daemon ...

  5. 动态初始化swiper时,轮播图划不动得各种bug解决方法

    var mybanner = new Swiper('.i-gd-banner', { speed: 500, loop: true, observer:true,//修改swiper自己或子元素时, ...

  6. Linux 下 Mysql忘记密码重置

    1.修改配置文件 /etc/my.cnf 在[mysqld]下 加入skip-grant-tables 2.重启mysql 命令:service mysqld restart 3.等待几分钟后 就可以 ...

  7. django 模板里面for循环和if常用的方法

    django 模板里面for循环常用的方法 {% for %} 允许我们在一个序列上迭代.与Python的for 语句的情形类似,循环语法是 for X in Y ,Y是要迭代的序列而X是在每一个特定 ...

  8. C# 实现opc ua服务器的远程连接(转)

    原文转自:https://www.cnblogs.com/dathlin/p/7724834.html OPC UA简介 OPC是应用于工业通信的,在windows环境的下一种通讯技术,原有的通信技术 ...

  9. python-Web-django-短信登陆

    until: import json, urllib from urllib.parse import urlencode # 发送短信 def request2(mobile,num, m=&quo ...

  10. 【HANA系列】SAP HANA SQL字符串连接操作

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[HANA系列]SAP HANA SQL字符串连 ...