知攻善防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应急靶机笔记--详解的更多相关文章

  1. javaScript笔记详解(1)

    javaScript基础详解 版权声明 本文原创作者:雨点的名字 作者博客地址:https://home.cnblogs.com/u/qdhxhz/ 首先讲javaScript的摆放位置:<sc ...

  2. 读书笔记-详解C程序开发中 .c和.h文件的区别

    一个简单的问题:.c和.h文件的区别 学了几个月的C语言,反而觉得越来越不懂了.同样是子程序,可以定义在.c文件中,也可以定义在.h文件中,那这两个文件到底在用法上有什么区别呢? 2楼: 子程序不要定 ...

  3. VSCode插件开发全攻略(三)package.json详解

    更多文章请戳VSCode插件开发全攻略系列目录导航. package.json 在详细介绍vscode插件开发细节之前,这里我们先详细介绍一下vscode插件的package.json写法,但是建议先 ...

  4. 黑马程序员_ Objective-c 面向对象笔记详解

    1)类,对象,方法 类 类名: 1) 类名的第一个字母必须是大写 2) 不能有下划线 3) 多个英文单词,用驼峰标识 类的声明和实现 类的声明 @interface 类名 : NSObject { @ ...

  5. C#学习笔记--详解委托,事件与回调函数

    .Net编程中最经常用的元素,事件必然是其中之一.无论在ASP.NET还是WINFrom开发中,窗体加载(Load),绘制(Paint),初始化(Init)等等.“protected void Pag ...

  6. 第一行代码阅读笔记---详解分析第一个Android程序

    以下是我根据作者的思路,创建的第一个Android应用程序,由于工具强大,代码都自动生成了,如下: package com.example.first_app; import android.os.B ...

  7. mybatis 学习笔记 -详解mybatis 及实例demo

    快速入门1 要点: 首先明白mybatis 是什么 这是一个持久层的框架.之前叫做ibatis.所以,在它的代码中出现ibatis这个词的时候,不要感到惊讶.不是写错了,它确实就是这个样子的. 首先, ...

  8. css笔记详解(1)

    css讲解 版权声明 本文原创作者:雨点的名字 作者博客地址:https://home.cnblogs.com/u/qdhxhz/ 首先在我们学习css之前先来思考一个问题,为什么html标签上不直接 ...

  9. Redux 笔记详解

    npm install --save redux 多数情况下,你还需要使用 React 绑定库和开发者工具. npm install --save react-redux npm install -- ...

  10. linux shell 脚本攻略学习11--mkdir和touch命令详解

    一.创建目录(mkdir命令详解) amosli@amosli-pc:~/learn$ mkdir dir amosli@amosli-pc:~/learn/dir$ mkdir folder amo ...

随机推荐

  1. CNN -- Simple Residual Network

    Smiling & Weeping ---- 我爱你,从这里一直到月亮,再绕回来 说明: 1.要解决的问题:梯度消失 2. 跳连接,H(x) = F(x)+x,张量维度必须一致,加完后再激活. ...

  2. MoneyPrinterPlus:AI自动短视频生成工具-阿里云配置详解

    MoneyPrinterPlus是一个很好的自动短视频生成工具,虽然是一个非常好的工具,但是有些小伙伴可能不太清楚具体应该如何配置才能让它跑起来. 因为MoneyPrinterPlus依赖一些具体的配 ...

  3. Kubernetes容器生命周期 —— 钩子函数详解(postStart、preStop)

    1.概述 容器生命周期钩子(Container Lifecycle Hooks)监听容器生命周期的特定事件,并在事件发生时执行已注册的回调函数. 钩子函数能够感知自身生命周期中的事件,并在相应的时刻到 ...

  4. 关于c指针的理解

    1 #include<stdio.h> 2 { 3 int a= 100,b=10; 4 int *p1=&a,*p2=&b; 5 *p1=b; 6 *p2=a; 7 pr ...

  5. Linux设备模型:2、基本对象 Kobject、Kset、Ktype

    原文:http://www.wowotech.net/device_model/kobject.html 作者:wowo 发布于:2014-3-7 0:25 分类:统一设备模型 前言 Kobject是 ...

  6. Linux Driver : gpio-keys

    Linux Driver : gpio-keys的解析 背景 在阅读高通设备树配置一个按键的时候,没有找到按键是在什么时候进行处理的.因此根据仅有的线索gpio-key.c进行分析,发现根据之前的学习 ...

  7. 基于 Linux 2.6的 硬中断 / 软中断的原理以及实现

    Author:zhangskd @ csdn blog 概述 从本质上来讲,中断是一种电信号,当设备有某种事件发生时,它就会产生中断,通过总线把电信号发送给中断控制器. 如果中断的线是激活的,中断控制 ...

  8. python 自动化神器 多平台纯代码RPA办公自动化python框架

    ​ Pyaibote是一款专注于纯代码RPA(机器人流程自动化)的强大工具,支持Android.Browser和Windows三大主流平台.无论您需要自动化安卓应用.浏览器操作还是Windows应用程 ...

  9. C#多窗口切换的实现

    本文关键字: 多窗口切换 label splitContainer 窗口背景颜色设置 字体设置 窗口布局 按钮事件 按钮 新建项目: 开发MainForm: MainForm先添加1个splitCon ...

  10. 题解:B3646 数列前缀和 3

    分析 板子题,线段树维护矩阵区间积,除了难写没什么思维难度. 所以直接放代码吧. Code #include<bits/stdc++.h> #define int long long us ...