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. RN在Mac环境下开发环境搭建

    1.推荐使用Homebrew来安装 Node 和 Watchman.在命令行中执行下列命令安装: brew install node brew install watchman 如果你已经安装了 No ...

  2. WPF 快速制作可拖拽的对象和窗体

    引用类库: 1.Microsoft.Expression.Interactions 2.System.Windows.Interactivity <Window x:Class="Wp ...

  3. ListView中用鼠标拖动各项上下移动的问题。(100分)

    在OnDragDrop事件中處理:以下是delphi的例子 procedure TForm1.ListBox1DragOver(Sender, Source: TObject; X, Y: Integ ...

  4. springboot和springcloud版本冲突问题

    最近搭建eureka项目,出现boot和cloud版本不匹配错误,记录下来 2019-12-06 14:00:20.043 ERROR 180780 --- [ main] o.s.boot.Spri ...

  5. HCL试验4

    PC端配置:配置ip地址 配置网关 交换机配置:①创建VLAN system-view vlan 10 vlan 20 ②配置PC端接口 interface vlan-interface 10 ip ...

  6. Emgu 学习(4) 使用指针访问图像内存

    在原始图像最初的10行绘制一个颜色条 class Program { static void Main(String[] args) { Mat img = CvInvoke.Imread(@&quo ...

  7. stm32 F40x CCM数据区的使用

    1. CCM需要打开总线时钟 2. CCM可以作为堆和栈使用 使用分散加载文件直接操作即可 RW_CCMRAM1 0x10000000 { .ANY (HEAP) .ANY (STACK) } 3. ...

  8. poj3264(简单线段树)

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

  9. HighGo瀚高数据库4.3版本安装说明

    1. 通过与瀚高同事沟通, 获取到安装文件(点赞一下瀚高的同事, 效率很高并且说明的很完整) 瀚高是基于postgresql数据库做的深度定制开发的国产数据库. 不仅仅支持x86 也支持龙芯等全国产安 ...

  10. 小记--------spark-Wordcount经典案例之对结果根据词频进行倒序排序

    还是以经典案例Wordcount为例:   逻辑思路: 1.先把文本按空格切分成每个单词    flatMap() 2.将每个单词都转换成Tuple2类型(hello ,1)    map() 3.将 ...