WebShell入门
webShell
演化简史:小马
-大马
-一句话木马
-加密通讯木马
一、木马-加密通讯木马-内存马
:
webshell
也是一种网页,若想实现相应的代码,功能越多(文件上传、命令执行、读取目录…),代码量越大。- 代码量越大,文件
体积越大,越不灵活
。因此,通常先上传小马
(至少具备文件上传功能
),随后利用小马
上传大马
。
- 代码量越大,文件
二、一句话木马
时代:
eval
或者其他类似函数,把字符串当做命令执行,把payload
通过POST
传参给一句话木马。不同的恶意指令对应不同的payload
,灵活多变。
三、webShell
检测与免杀
静态
网页 动态
网页
- 静态资源
.html, css 图片 表格
等 - 动态资源
js php sp jsp java
代码/命令
->解释/编译
->执行
->实现
效果- 成功写入/上传至
目标服务器
+能够找到webShell
路径并成功访问->被外部系统解析
->webshell
成功运行 - 多数检测设备/程序的一般检测原理:`字符串匹配/规则匹配/正则匹配
- 字符串混淆:
ev.al
、eVAL
- bing du jing tai cha sha
- 免杀,绕
WAF
- 传统的绕过方式:大小写混写,
字符串
替换、加入无关字符
、切割
具有特征
的字符串
base64
编码、ROT
编码、Unicode编码
等等- 新一代绕过方式:
- 利用现代密码学,对
流量进行加密、混淆
消除特征。
- 利用现代密码学,对
- 传统的绕过方式:大小写混写,
- 字符串混淆:
WAF
性能约束,应用场景约束另辟蹊径
:通过更本质的方式,检测程序运行
。在程序更核心的执行层进行监控,发现恶意代码
IAST
- 特点:
准确性
更高,性能损耗
更大
- 特点:
中国菜刀
蚁剑
哥斯拉
冰蝎
webshell
流量分析 数据已经进行加密
(RSA)?如何分析数据?- 流量分析弱特征,不查看源文件,没有办法获取私钥,通过周围的外围特征查看流量;
- 代码比较
使用wireshark
抓取 webshell
流量
webshell
查杀工具
- D盾
- 也是免费
WAF
,只支持Windows+IIS
- 也是免费
- 河马
- 支持在线查杀和客户端查杀
- 安全狗
- 也是免费
WAF
,支持Window
、Linux
+IIS
、Apache
- 也是免费
- VT
- 集
病毒查杀
、威胁情报
、在线沙箱
于一体的网站
- 集
四、加解密
对称加密
vs 非对称加密
对称加码:知道如何加密就知道如何解密
以凯撒密码为例:
原文:nihao
加密密钥:3
密文:qlkdr
解密秘钥:-3
非对称加密:加密
是一条路,解密
是另一条路
加密
使用一个秘钥
,解密
使用另一个秘钥
对抗加密恶意流量的技术前沿之一:通过机器学习,深度学习识别
加密混淆
的恶意流量
。
五、实验
为SSH
配置秘钥登录
要为SSH
配置密钥登录,您需要完成以下步骤:
- 生成
公共
/私有
密钥对
使用ssh-keyge
n命令生成公共/私有密钥对。在终端中输入以下命令:
ssh-keygen -t rsa
按照提示输入密钥文件的名称和密码(如果需要),然后生成公共/私有密钥对。
- 复制公共密钥到服务器
使用ssh-copy-id
命令将公钥复制到服务器上的authorized_keys
文件中。在终端中输入以下命令:
ssh-copy-id user@server_address
其中,user
是您要登录的用户名,server_address是
服务器的IP地址
或域名
。
- 配置SSH客户端
打开SSH客户端
配置文件(通常位于~/.ssh/config
)并添加以下行:
Host server_alias
HostName server_address
User user
IdentityFile /path/to/private/key
其中,server_alias
是服务器别名,server_address
是服务器的IP地址或域名,user是您要登录的用户名,/path/to/private/key
是您生成的私有密钥文件的路径。
- 连接到服务器
现在,您可以通过在终端中输入以下命令来连接到服务器:
ssh server_alias
您将被提示输入密钥文件的密码(如果设置了密码
),然后您将被认证
并成功登录
到服务器
。
- Success