知攻善防Web1应急靶机笔记--详解
知攻善防Web1应急靶机笔记
概述
这是一台知攻善防实验室的应急响应靶机,方便大家练习一下应急响应的流程和操作。
靶机的前景概述:
前景需要:
小李在值守的过程中,发现有CPU占用飙升,出于胆子小,就立刻将服务器关机,这是他的服务器系统,请你找出以下内容,并作为通关条件:1.攻击者的shell密码
2.攻击者的IP地址
3.攻击者的隐藏账户名称
4.攻击者挖矿程序的矿池域名用户:
administrator
密码
Zgsf@admin.com
提取码:1gs2
0、前期配置
1)VM版本问题
拿到靶机我们会找到目录的下的Window Server 2022.vmx
文件打开会报一个错
我们需要去Window Server 2022.vmx
右键,记事本打开
我们打开虚拟机
2)防火墙问题
不关闭防火墙的话,看到web网站的后门脚本会自动被windos的防火墙删除掉
我们关闭掉病毒和威胁防护
1、第一题题解
1.攻击者的shell密码
我们在桌面上看到phpstudy,shell密码应该是webshell的连接密码,我们用D盾对phpstudy的目录进行扫描,看看有没有什么明显的后门文件。
看到有一个shell.php,右键打开看看。
这是一个冰蝎的webshell脚本,默认密码是rebeyond
2、第二题题解
2.攻击者的IP地址
攻击者的IP地址,攻击者既然上传了webshell文件,那在我们的web日志里应该有相应的操作日志。我们打开日志
看日志文件大小,应该就是他了,我们打开ctrl+f
搜索关键字shell.php
他既然上传了这个webshell脚本肯定会有相关的上传和访问的日志产生
这个访问shell.php
的流量大概率就是攻击者做的,所以第二题 192.168.126.1
3、第三题题解
3.攻击者的隐藏账户名称
攻击者的隐藏账户,我们可以去计算机管理
的账户去查看,我们搜索 计算机管理
打开找到本地用户和组
发现有hack168$用户,这就是隐藏账户。
4、第四题题解
4.攻击者挖矿程序的矿池域名
1)找到挖矿程序
找到挖矿程序和矿池的域名,这里我们要去hack168$账户去查看黑客在他创建的账户里进行了什么操作。
我们是在管理员组的,所以我们有权限去更改hack168$账户的密码
C:\Users\Administrator>net user hack168$ 123456aa@
命令成功完成。
因为有密码复杂度要求,我们把密码改为了 123456aa@
我们按1win+l
在虚拟机的选项卡里发送请求ctrl+alt+delete请求,切换到hack168$
登陆进来,我们就看到了一个叫kuang的可执行文件,是用python的pyinstaller打包成的exe文件。
我们要找到矿池的域名,需要对这个python的打包出来的exe文件进行反编译,去看他里面的源码
2)反编译python程序
python的exe文件反编译要用到pyinstxtractor.py文件和pycdc.exe文件
我这里也准备了对应的文件 python反编译
提取码:nfw3
我们把 挖矿程序Kuang
放到pyinstxtractor.py同一目录下运行:
python .\pyinstxtractor.py .\Kuang.exe
会生成Kuang.exe_extracted文件夹
点进去,找到与我们反编译文件同名的文件
重命名为Kuang.pyc
为notepad++安装HexEdit插件:https://www.cnblogs.com/LING5/p/18349724
给pyc文件添加magic头:https://www.cnblogs.com/LING5/p/18349733
我们把添加好头部的Kuang.pyc
文件复制到与pycdc.exe
程序同目录下执行:
.\pycdc.exe .\Kuang.pyc > Kuang.py
在同目录下会有Kuang.py
生成,这就是我们反编译的文件
结果:
# Source Generated with Decompyle++
# File: Kuang.pyc (Python 3.8)
import multiprocessing
import requests
def cpu_intensive_task():
try:
requests.get('http://wakuang.zhigongshanfang.top', 10, **('timeout',))
finally:
continue
continue
continue
# WARNING: Decompyle incomplete
看到这个程序向域名wakuang.zhigongshanfang.top发送GET请求
毫无疑问这个域名就是矿池
答案:wakuang.zhigongshanfang.top
5、提交
总结
1、我们先是用D盾对phpstudy的主目录进行了扫描,发现了一个webshell脚本shell.php发现密码:rebeyond
2、发现有shell.php脚本,我们进一步去Apache的日志文件中去找到是哪一个ip上传的后门文件,通过搜索关键字我们找到了192.168.126.1
3、通过对计算机管理界面的查询,我们找到了隐藏账户hack168$ 。除此之外,我们还以通过查询注册表,用net localgroup administrators 命令查看到隐藏账户。
4、登陆到hack168$账户,我们在它的桌面上我们看到了名为 Kuang
的的挖矿程序,通过观察图标,我们知道他是一个python的脚本文件用pyinstaller打包成的exe可执行文件。我们对它进行了反编译处理,发现程序里有一个wakuang.zhigongshanfang.top矿池域名。
这里提交完之后会退出,是因为它的python脚本没有加sleep()延时函数,有兴趣可以按上边步骤重新反编译,加上延时程序。
在打包 pyinstaller 题解.py 在对应的dist文件夹下会有exe的可执行文件。复制出来覆盖掉原来的
题解.exe
在输入答案就可以了
知攻善防Web1应急靶机笔记--详解的更多相关文章
- javaScript笔记详解(1)
javaScript基础详解 版权声明 本文原创作者:雨点的名字 作者博客地址:https://home.cnblogs.com/u/qdhxhz/ 首先讲javaScript的摆放位置:<sc ...
- 读书笔记-详解C程序开发中 .c和.h文件的区别
一个简单的问题:.c和.h文件的区别 学了几个月的C语言,反而觉得越来越不懂了.同样是子程序,可以定义在.c文件中,也可以定义在.h文件中,那这两个文件到底在用法上有什么区别呢? 2楼: 子程序不要定 ...
- VSCode插件开发全攻略(三)package.json详解
更多文章请戳VSCode插件开发全攻略系列目录导航. package.json 在详细介绍vscode插件开发细节之前,这里我们先详细介绍一下vscode插件的package.json写法,但是建议先 ...
- 黑马程序员_ Objective-c 面向对象笔记详解
1)类,对象,方法 类 类名: 1) 类名的第一个字母必须是大写 2) 不能有下划线 3) 多个英文单词,用驼峰标识 类的声明和实现 类的声明 @interface 类名 : NSObject { @ ...
- C#学习笔记--详解委托,事件与回调函数
.Net编程中最经常用的元素,事件必然是其中之一.无论在ASP.NET还是WINFrom开发中,窗体加载(Load),绘制(Paint),初始化(Init)等等.“protected void Pag ...
- 第一行代码阅读笔记---详解分析第一个Android程序
以下是我根据作者的思路,创建的第一个Android应用程序,由于工具强大,代码都自动生成了,如下: package com.example.first_app; import android.os.B ...
- mybatis 学习笔记 -详解mybatis 及实例demo
快速入门1 要点: 首先明白mybatis 是什么 这是一个持久层的框架.之前叫做ibatis.所以,在它的代码中出现ibatis这个词的时候,不要感到惊讶.不是写错了,它确实就是这个样子的. 首先, ...
- css笔记详解(1)
css讲解 版权声明 本文原创作者:雨点的名字 作者博客地址:https://home.cnblogs.com/u/qdhxhz/ 首先在我们学习css之前先来思考一个问题,为什么html标签上不直接 ...
- Redux 笔记详解
npm install --save redux 多数情况下,你还需要使用 React 绑定库和开发者工具. npm install --save react-redux npm install -- ...
- linux shell 脚本攻略学习11--mkdir和touch命令详解
一.创建目录(mkdir命令详解) amosli@amosli-pc:~/learn$ mkdir dir amosli@amosli-pc:~/learn/dir$ mkdir folder amo ...
随机推荐
- ELKF(elasticsearch、logstash、kibana、filebeat)搭建及收集nginx日志
1.elasticsearch 1.1.根目录下新建data文件夹 1.2.修改elasticsearch.yml文件,添加以下内容 path.data: /home/wwq/elk/elastics ...
- JAVA日期当天0点0分0秒
LocalDateTime LocalDateTime ldt = LocalDateTime.now(); LocalDateTime todayZero = LocalDateTime.of(ld ...
- 如何将本地的项目,上传到github
操作步骤: 1.github,创建一个仓库,复制仓库的地址 2.在要上传文件的目录,点击选择git bash here 3.输入[git clone],粘贴刚复制的仓库地址,clone成功后,会将仓库 ...
- Bike Sharing Analysis(一)- 探索数据
1. Bike Sharing Analysis 在这章主要介绍如何分析共享单车服务数据,以及如何基于时间.天气状态特征来识别单车的使用模式.除此之外,我们还会引入可视化分析,假设检验.以及时间序列分 ...
- 详解Web应用安全系列(10)文件上传漏洞
文件上传漏洞(File Upload Vulnerabilities)是Web攻击中常见的一种安全漏洞,它允许攻击者上传并执行恶意文件,从而可能对Web服务器造成严重的安全威胁. 一.定义与原理 文件 ...
- tp6 uniapp跨越问题
自己写一个简单的中间件
- TypeScript 学习笔记 — 类型补充void,any, tuple ,enum,nerver, Symbol , BigInt ,unknown(三)
目录 空值void 及(与Null 和 Undefined的区别) 任意值Any 元组类型 枚举类型 常量枚举 never 类型 1. 函数无法到达终点 2.通常校验逻辑的完整性,可以利用 never ...
- webpack4.15.1 学习笔记(一) — 基本概念
目录 入口(entry) 出口(output) 加载器 Loaders 插件 Plugins 模式 webpack.config.js 配置 终终终终于下定决心,对你下手了,系统的学习一下. webp ...
- vb.net 实现excel导入的时候滚动显示导入的数据
如果你想在 Excel 导入过程中滚动显示导入的数据,可以使用逐行读取 Excel 数据并在滚动窗口中显示. 在 VB.NET 中,你可以使用 Excel.Range 对象逐行读取 Excel 数据, ...
- oeasy 教您玩转 linux 010207 黑客帝国 matrix
我们来回顾一下 上一部分我们都讲了什么? 蒸汽机车sl 变身小机车-l 变身飞天机车-F 让我们再开一次车 sl 上次还想看看黑客帝国来着?! 黑客帝国Matrix apt search matrix ...