三种常见webshell工具的流量特征分析

又来跟师傅们分享小技巧了,这次简单介绍一下三种常见的webshell流量分析,希望能对参加HW蓝队的师傅们有所帮助。

什么是webshell

webshell就是以asp、php、jsp或者cgi等网页文件形式存在的一种代码执行环境,主要用于网站管理、服务器管理、权限管理等操作。使用方法简单,只需上传一个代码文件,通过网址访问,便可进行很多日常操作,极大地方便了使用者对网站和服务器的管理。正因如此,也有小部分人将代码修改后当作后门程序使用,以达到控制网站服务器的目的,也可以将其称做为一种网页后门

哥斯拉

流量包特征

JAVA_AES_BASE64特征

1.host头问题

2.密码和base64字符串是密码=base64字符串的形式

3.发送包是密码=base64字符串的形式,返回包是类base64字符串的格式

JAVA_AES_RAW特征

1.host问题及Content-Type: application/octet-stream

2.发送的数据包为没有被base64编码后的AES加密后的字节数据

蚁剑

流量包特征

默认编码器,解码器除base64之外的特征,测试连接、正常的webshell操作时,发送包特征为密码

=base64字符串&随机字符串=类似于base64字符串,且返回包为明⽂

默认编码器,解码器base64的特征,返回包中是base64编码后的字符串

⽂件上传包格式的webshell连接,密码写在了上传包参数中,返回包base64编码后的字符串

冰蝎

流量包特征

正常的冰蝎连接成功之后,它的流量具有以下特征

1.header头的顺序是颠倒的,可以和正常的请求做对⽐,正常的请求host头⼀般是header头的第⼀位

发送包是正常的base64字符串,返回包是字节数组,所以返回包会乱码

如果冰蝎的密码不对,那么会出现两个连接,第⼀个是post连接,第⼆个是get连接

如果第⼀次post请求没有返回正常的字节码,那么冰蝎会发起⼀次get请求附带webshell密码

同⼀个攻击IP,连接的User-Agent会不断的变化

postheader头Content-Type为application/octet-stream

失败时header头Referer的shell⽂件名是随机的

下载⽂件时,如果是⽂本⽂件,为明⽂传输

微信公众号

扫一扫关注CatalyzeSec公众号

 加入我们的星球

我们能提供:

1对1就业指导、面试模拟、Golang工具开发学习、Fofo高级会员、各公众号历史文章合集、各种网络安全电子书、面试题合集、最新poc、exp、最常用工具推荐、开放交流环境,解决成员问题。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

蓝桥杯第十二届c++大学B组详解

目录 1.空间 2.直线 3.路径 4.卡片 5.货物摆放 6.时间显示 7.砝码称重 8.杨辉三角 9.双向排序 10.括号序列 1.空间 题目解析:1Byte 8bit 1kb 1024B 1MB 1024kb; 先将256MB变成Byte 256 * 1024 * 1024; 再将32位 变成Byte就是 32 / 8 4;…

4.进程相关 2

8.内存映射 8.1 内存映射相关定义 创建一个文件,将保存在磁盘中的文件映射到内存中,后期两个进程之间对内存中的数据进行操作,大大减少了访问磁盘的时间,也是一种最快的 IPC ,因为进程之间可以直接对内存进行存取 8.…

第十二届蓝桥杯省赛真题(C/C++大学B组)

目录 #A 空间 #B 卡片 #C 直线 #D 货物摆放 #E 路径 #F 时间显示 #G 砝码称重 #H 杨辉三角形 #I 双向排序 #J 括号序列 #A 空间 #include <bits/stdc.h> using namespace std;int main() {cout<<256 * 1024 * 1024 / 4<<endl;return 0; } #B 卡片…

JVM性能监控与调优——命令行工具

文章目录 1、概述2、jps:查看正在运行的Java进程3、jstat&#xff1a;查看JVM统计信息4、jinfo&#xff1a;实时查看和修改JVM配置参数5、jmap&#xff1a;导出内存映像文件和内存使用情况6、jhat:JDK自带堆分析工具7、jstack&#xff1a;打印JVM中线程快照8、jcmd&#xff1a;…

第一个Swift程序

要创建第一个Swift项目,请按照以下步骤操作: 打开Xcode。如果您没有安装Xcode,可以在App Store中下载并安装它。在Xcode的欢迎界面上,选择“Create a new Xcode project”(创建新Xcode项目)。在模板选择界面上,选择“App”(应用程序)。在应用模板选择界面上,选择“Si…

【静态分析】静态分析笔记01 - Introduction

参考&#xff1a; BV1zE411s77Z [南京大学]-[软件分析]课程学习笔记(一)-introduction_南京大学软件分析笔记-CSDN博客 ------------------------------------------------------------------------------------------------------ 1. program language and static analysis…

【JavaWeb】Jsp基本教程

目录 JSP概述作用一个简单的案例&#xff1a;使用JSP页面输出当前日期 JSP处理过程JSP 生命周期编译阶段初始化阶段执行阶段销毁阶段案例 JSP页面的元素JSP指令JSP中的page指令Include指令示例 taglib指令 JSP中的小脚本与表达式JSP中的声明JSP中的注释HTML的注释JSP注释 JSP行…

llinux进程控制

学习进程创建,fork/vfork 学习到进程等待 学习到进程程序替换, 微型shell&#xff0c;重新认识shell运行原理 学习到进程终止,认识$? fork函数 在linux中fork函数时非常重要的函数&#xff0c;它从已存在进程中创建一个新进程。新进程为子进程&#xff0c;而原进程为父进程…

PostgreSQL入门到实战-第十五弹

PostgreSQL入门到实战 PostgreSQL数据过滤(八)官网地址PostgreSQL概述PostgreSQL中LIKE命令理论PostgreSQL中LIKE命令实战更新计划 PostgreSQL数据过滤(八) 如何使用PostgreSQL LIKE运算符基于模式查询数据。 官网地址 声明: 由于操作系统, 版本更新等原因, 文章所列内容不一…

Commitizen:规范化你的 Git 提交信息

简介 在团队协作开发过程中&#xff0c;规范化的 Git 提交信息可以提高代码维护的效率&#xff0c;便于追踪和定位问题。Commitizen 是一个帮助我们规范化 Git 提交信息的工具&#xff0c;它提供了一种交互式的方式来生成符合约定格式的提交信息。 原理 Commitizen 的核心原…

人工智能分类算法概述

文章目录 人工智能主要分类算法决策树随机森林逻辑回归K-均值 总结 人工智能主要分类算法 人工智能分类算法是用于将数据划分为不同类别的算法。这些算法通过学习数据的特征和模式&#xff0c;将输入数据映射到相应的类别。分类算法在人工智能中具有广泛的应用&#xff0c;如图…

每日一题(leetcode2529):正整数和负整数的最大计数--二分法

因为需要O&#xff08;logn&#xff09;的复杂度&#xff0c;所以考虑使用二分法&#xff0c;先找到负数里面的最大下标&#xff08;初始值定为-1&#xff09;&#xff0c;再找到第一个正数的下标&#xff08;初始值定为数组长度值&#xff09;。最后求出个数并进行比较即可。 …

操作系统的基础知识:操作系统的特征:并发,共享,虚拟,异步

操作系统的特性&#xff1a; 1.并发 并发:指两个或多个事件在同一时间间隔内发生。这些事件宏观上是同时发生的&#xff0c;但微观上是交替注意&#xff1a;并行:指两个或多个事件在同一时刻同时发生。 操作系统的并发性指计算机系统中“同时”运行着多个程序&#xff0c;这…

【Entity Framework】聊聊EF中键

【Entity Framework】聊聊EF中键 文章目录 【Entity Framework】聊聊EF中键一、概述二、配置主键2.1 约定配置主键2.2 单个属性配置为实体主键2.3 组合主键 三、主键名称四、键类型和值五、备用键 一、概述 键用作每个实体实例的唯一标识符。EF中的大多数实体都有一个键&#…

langchain-chatchat加载Azure Open AI

1.找到knowledge_base_chat.py文件中的get_ChatOpenAI函数 2.按crtl进入get_ChatOpenAI函数位置 3.注释原先的get_ChatOpenAI函数&#xff0c;修改成以下内容&#xff1a; def get_ChatOpenAI(model_name: str,temperature: float,streaming: bool True,callbacks: List[Ca…

5款最值得推荐的电脑监控软件丨高人气甄选

在企业和学校等场所&#xff0c;电脑监控软件被广泛应用于员工或学生的行为管理。 通过监控软件&#xff0c;管理者可以了解员工或学生的学习和工作情况&#xff0c;及时发现并纠正不当行为&#xff0c;提高工作效率和学习效果。同时&#xff0c;这类软件还可以用于保护企业机…

13 指针(上)

指针是 C 语言最重要的概念之一&#xff0c;也是最难理解的概念之一。 指针是C语言的精髓&#xff0c;要想掌握C语言就需要深入地了解指针。 指针类型在考研中用得最多的地方&#xff0c;就是和结构体结合起来构造结点(如链表的结点、二叉树的结点等)。 本章专题脉络 1、指针…

SQL注入的其他攻击思路方法与Python脚本设计思路

SQL注入的其他攻击思路方法与Python脚本设计思路 也是很早就写了&#xff0c;也备个份吧 注意&#xff1a;在接下来的攻击方式中&#xff0c;由于实现的条件较为苛刻&#xff0c;并且需要较高权限&#xff0c;有的师傅又称之为高权限攻击 利用文件读取进行SQL注入 上一篇文章提…

mysql8主从复杂原理分析

MySQL 复制&#xff08;Replication&#xff09; 是官方提供的主从复制&#xff08;源到副本的复制&#xff09;方案&#xff0c;用于将一个 MySQL 的实例同步到另一个实例中。 这是使用最广泛的容灾方案&#xff08;重点掌握&#xff09;。 复制&#xff08;Replication&…

编译器如何理解C++的指针和引用?

初学引用时&#xff0c;往往很难真正理解引用&#xff0c;它与指针究竟有什么区别和联系。下面我们不妨看看编译器如何理解引用和指针的。 一.函数通过指针传参 1.1 示例代码 #include <iostream>using namespace std;void swap(int *x,int *y)//指针传参 {int tmp;t…
最新文章