作为世界上最大的僵尸网络DDos:Mirai, 据说作者是一位美国人,罗格斯大学毕业,21岁,名字起源于日本一个动漫,它的含义是“未来”,据说在2017年被FBI调查并且在年底抓获。
统计了下 大概在7K行左右,这是一个很大的项目,非常复杂。
最低配置: 两个服务器, 1个当控制中心,一个当扫描接受机,一个加载。 专业版本配置:2个VPS加上4个服务器, -1个vps 安全要求最高,用作数据库服务器 -1个vps分发指令,接收扫描 -1个服务器用来当控制中心,根据开源代码分享者说,400K肉鸡,2%CPU利用率。 -3显卡服务器(NForce server)用来加载。
安装Electric fence sudo apt-get update sudo apt-get install electric-fence 使用Electric fence 果使用gcc直接编译运行,不会抛异常。
我们可以加上参数 -lefence -g编译后运行,就会抛异常。通过gdb的bt打印即可定位到问题代码行。
root@ubuntu:/home/zte/test# gcc malloc_read_free.cc -lefence -g
root@ubuntu:/home/zte/test# ./a.out
Electric Fence 2.2 Copyright (C) 1987-1999 Bruce Perens <bruce@perens.com>
Segmentation fault (core dumped)autogen.sh
$sudo apt-get install build-essential 安装了该软件包,编译c/c++所需要的软件包也都会被安装
3-4 Install GoLang Drivers go get github.com/go-sql-driver/mysql go get github.com/mattn/go-shellwords 遇到报错 fatal: could not read Username for ‘https://github.com’: terminal prompts disabled 网上查,有人说是git版本低,升级了,无用。 有人说是需要设置用户名和密码,无用。 最后发现是说明里面的路径错了,是错的,真坑。
占位!占位! 还没有整理完所有问题,稍后补上!
代码结构分几部分:
dlr --- loader
Requirements gcc golang electric-fence mysql-server mysql-client
Comments