Xubuntu 14.04 LTS下配置安装Cuckoo Sandbox

Cuckoo 的全称是OpenSource Cuckoo Sandbox Project。它由我所尊敬的一些安全先驱开发,其中一些人也是开源honeyspot 的contributor。实际上在2010年的时候Cuckoo还是honeyNET的一个子项目。这些前辈独到的蜜罐网络研发的技巧,让Cuckoo可以轻而易举的进行URL分析、网络通讯分析、程序分析、pdf分析。

整体上,Cuckoo基于虚拟机技术,使用中央控制系统和模块设计,结合python的自动化特征,已经是颇为自动化的恶意软件行为研究环境。

由于部署cuckoo的步骤众多而且有些坑需要绕,故写下本文以供参考
由于需要长期使用vbox的稳定令人担忧,所以本次我们选择KVM作为虚拟机

首先下载cuckoo的源码
此处略
要运行cuckoo需要安装python环境

cd到cuckoo目录,我这里为/opt/cuckoo
运行

备注:由于众所周知的原因
http://pefile.googlecode.com/files/pefile-1.2.10-139.tar.gz#egg=pefile
无法下载,pefile这个项目已迁移到github,链接https://github.com/erocarrera/pefile
requirements对应的版本https://github.com/erocarrera/pefile/archive/pefile-1.2.10-139.zip
不过仍然有个坑,可能是版本更新的原因,无法安装这里我建议安装新版本
https://github.com/erocarrera/pefile/files/192317/pefile-2016.3.28.zip
安装这个版本之前还需要先安装future
可使用

进行安装
也可以自行修改requirements.txt或者pip install pefile

由于我选择了KVM作为虚拟平台
那么就需要安装KVM以及有关套件

接着需要安装配置tcpdump

之后需要安装Volatility
安装可参考
https://github.com/volatilityfoundation/volatility/wiki/Installation
安装之前需要先安装各种依赖
1、distorm
wiki里面的google code依然由于众所周知的原因无法访问
项目地址变更为https://github.com/gdabah/distorm
下载后cd到目录运行
python ./setup.py install
即可
2、yara
项目地址:https://github.com/plusvic/yara
安装文档:http://yara.readthedocs.org/en/latest/
下载后cd到目录我这里为/opt/yara
先make clean一下

3、pycrypto
项目地址:https://github.com/dlitz/pycrypto
下载后cd到目录运行即可
python ./setup.py install
4、pil
项目地址:http://www.pythonware.com/products/pil/
下载后cd到目录运行即可
python ./setup.py install
5、openpyxl
项目地址:https://pypi.python.org/pypi/openpyxl
下载后cd到目录运行即可
python ./setup.py install
或者
pip install openpyxl
6、ujson
项目地址:https://pypi.python.org/pypi/ujson
下载后cd到目录运行即可
python ./setup.py install
或者直接
pip install ujson

还有些可选包由于不必要我这里就不安装了
接着切换到volatility目录

到这里cuckoo需要的依赖就全部完成了
接着Install Cuckoo

到这里cuckoo已经安装完毕,接下来是配置部分
cuckoo所有的配置文件都在/conf下有关选项参考cuckoo文档
我这里简单说一下
首先是cuckoo.conf
由于需要使用KVM作为虚拟化平台
那么这里修改machinery = kvm
修改[resultserver]字段中的IP
如果需要使用其他数据库需要修改[database]

接着需要修改kvm.conf
如下所示

为了获取最大分析速度,我们需要使用postgresql作为数据库
需要安装如下组件

接着修改用户密码(用户密码不是数据库密码)
sudo passwd postgres
接着切换到postgres用户
sudo su postgres
启动
psql postgres
启动之后执行命令修改postgres的用户密码(自行替换password为密码)
ALTER USER postgres with PASSWORD ‘password’;
看到ALTER ROLE则为成功
备注:最后一个分号如果不输入就不会成功执行,网络上有些坑没有写分号最终出现各种问题
如图所示
postgres
最后可按下CTRL+D退出
退出后postgres用户下接着创建cuckoo的数据库
createdb cuckoodb
使用
service postgresql restart
重启postgresql

布置KVM虚拟机的部分本文暂不叙述
到这里cuckoo的安装已经完成,如果不需要web控制台至此已经可以使用了
执行
python /opt/cuckoo/cuckoo.py可启动cuckoo

Ubuntu apache使用Let’s Encrypt的免费SSL证书

首先还是需要安装git
sudo apt-get install git
接着克隆项目
git clone https://github.com/letsencrypt/letsencrypt
cd letsencrypt
./letsencrypt-auto
下面按照提示完成生成就可以了
注意,子域名
如果要手动修改配置文件可修改apache的ssl配置文件添加下面的
SSLCertificateFile /etc/letsencrypt/live/exvs.org/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/exvs.org/privkey.pem
SSLEngine on

# Intermediate configuration, tweak to your needs
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA
SSLHonorCipherOrder on
SSLCompression off

SSLOptions +StrictRequire
ServerName exvs.org
SSLCertificateChainFile /etc/letsencrypt/live/exvs.org/chain.pem

Ubuntu_14.04.04_LTS安装WordPress

首先安装Apache
sudo apt-get install apache2
接着安装PHP
sudo apt-get install php5
//安装PHP5
#sudo apt-get install libapache2-mod-php5
#//配置APACHE+PHP
安装mysql
sudo apt-get install mysql-server mysql-client
sudo apt-get install libapache2-mod-auth-mysql
sudo apt-get install php5-mysql php5-curl
重启apache2
sudo /etc/init.d/apache2 restart
或者
service apache2 restart
为了方便后续管理,安装phpmyadmin
sudo apt-get install phpmyadmin
sudo ln -s /usr/share/phpmyadmin /var/www
apt-get方式安装的phpmyadmin,后续更改配置在/etc/phpmyadmin

下面配置SSL
开启SSL模块
sudo a2enmod ssl
sudo a2enmod rewrite
使用openssl生成自签pem证书
openssl req -x509 -newkey rsa:2048 -keyout apache.pem -out apache.pem -nodes -days 36500
创建目录存放证书方便后续使用
mkdir /etc/apache2/sslcert
cp ./apache.pem /etc/apache2/sslcert

复制ssl配置文件
cp /etc/apache2/sites-available/default-ssl.conf /etc/apache2/sites-enabled/001-ssl.conf
修改/etc/apache2/sites-enabled/001-ssl.conf中
SSLCertificateFile /etc/apache2/sslcert/apache.pem
SSLCertificateKeyFile /etc/apache2/sslcert/apache.pem
重启apache2后可访问https://服务器ip检查工作是否正常

下面安装wordpress
访问官方wordpress官网下载安装包

Home


使用wget下载安装包
wget https://cn.wordpress.org/wordpress-4.4.2-zh_CN.zip
安装unzip
sudo apt-get install unzip
解压wordpress安装包到默认目录
unzip wordpress-4.4.2-zh_CN.zip -d /var/www
为了方便访问移动了一下目录
mv /var/www/wordpress/* /var/www
删除多余的文件夹
rmdir /var/www/wordpress
修改/etc/apache2/sites-enabled/000-default.conf和001-ssl.conf中
DocumentRoot /var/www
chown -R www-data /var/www
重启apache2
接着可以使用phpmyadmin创建数据库和用户
最后可以访问
http://服务器IP/wordpress/wp-admin/install.php
http://localhost/wordpress/wp-admin/install.php
完成安装

安装ftp
sudo apt-get install vsftpd
创建新用户
sudo useradd -g ftp -d /var/www -M wordpressftp
sudo useradd -d /var/www -s /usr/sbin/nologin wordpressftp
chown -R wordpressftp:wordpressftp /var/www
修改密码
passwd wordpressftp
修改shell配置
编辑/etc/shells
如果该文件里没有/usr/sbin/nologin或者/sbin/nologin(具体看当前系统配置)则追加进去

编辑/etc/vsftpd.conf
write_enable=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
#把wordpressftp加入chroot_list
#echo “wordpressftp” >> /etc/vsftpd.chroot_list
chmod a-w /var/www
重启vsftpd
service vsftpd restart