1月31日,白帽汇安全研究院发现了一个非常流行的PHP框架Laravel,因其配置不当会泄露MySQL,Redis,Elastic,Mongodb,neo4j,postgresql,SQLServer,Oracle,Firebird,sqlite,mail账号密码和APP_KEY等敏感信息。
雷锋网得知,相比其他的PHP框架Laravel具有了一套高级的PHP ActiveRecord实现 -- Eloquent ORM,比较适合应用各种开发模式,其集合了php比较新的特性以及各种各样的设计模式,比如Ioc 容器,依赖注入等。
目前来看,Laravel的使用者大多聚集在国外,国内更多采用的是ThinkPHP框架。尽管如此,在国内Laravel也受到政府级企业的青睐,比如:北京市税务局、铜山区政协、天津农学院等。
据FOFA系统最新数据显示,全球范围内共有369333个开放服务。美国使用数量最多,共有145372台,中国第二,共有27534台,德国第三,共有19436台,新加坡第四,共有17070台。
在中国,浙江使用Laravel框架服务器数量最多,共有17188台;北京第二,共有5612台,广东第三,共有1046台,上海第四,共有891台,山东第五,共有820台。
通过上述情况,黑客能够通过高危漏洞利用mysql写入木马进行脱库处理,设置在服务器端植入后门,亦或利用数据库进行跳板入侵内网服务器。受到攻击之后,该应用的绝对路径、session、mysql账号密码、邮箱账号密码、redis密码都暴露在了前端,对于政府级别应用而言该漏洞很有可能造成国家级机密的泄露问题。
在泄露的信息中,MySQL占很大一部分。其中有阿里云MySQL服务器、亚马逊云MySQL服务器、其他云厂商MySQL服务器,以及的自建的MySQL服务器。
修复建议:
1、关闭laravel配置文件中的调试功能,在.env文件中找到APP_DEBUG=true,将true改为false。
2、在根目录下添加.htaccess文件,仅限Apache,可以禁止直接访问127.0.0.1/laravel/.env,内容如下:
``` RewriteEngine on RewriteRule ^$ public/ [L] RewriteRule (.*) public/$1 [L]
```
文章来源:白帽汇