Skip to content

Commit

Permalink
feat: release v1.1.0 (#48)
Browse files Browse the repository at this point in the history
  • Loading branch information
zema1 authored Jan 17, 2024
1 parent 4b88192 commit 33e8bd3
Show file tree
Hide file tree
Showing 14 changed files with 93 additions and 42 deletions.
5 changes: 4 additions & 1 deletion .github/actions/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,9 @@ runs:
with:
name: test-target
path: .
- shell: bash
working-directory: ./assets
run: cp -r ./java/* ./
- uses: docker-practice/actions-setup-docker@master
with:
docker_buildx: false
Expand All @@ -23,4 +26,4 @@ runs:
- if: inputs.jar == 'true'
shell: bash
working-directory: ./assets
run: jar cvf assets.war suo5.jsp suo5.jspx
run: jar cvf assets.war suo5.jsp suo5.jspx
3 changes: 2 additions & 1 deletion .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -372,9 +372,10 @@ jobs:
</apps>
EOF
cat config/sample.webapp
cp ./assets/.net/suo5.aspx ./assets/suo5.aspx
docker run -it --rm -d -p8080:80 -v ${{ github.workspace }}/config:/etc/mono/pools -v ${{ github.workspace }}/assets:${{ matrix.mount }} ${{ matrix.image }}
bash ./.github/workflows/ready.sh ${{ env.SUO5_ASPX_URL }} 30
curl -v ${{ env.SUO5_ASPX_URL }}
chmod +x ./suo5
./suo5 -debug -t ${{ env.SUO5_ASPX_URL }} -T https://www.bing.com
./suo5 -debug -t ${{ env.SUO5_ASPX_URL }} -T https://www.bing.com -mode half
./suo5 -debug -t ${{ env.SUO5_ASPX_URL }} -T https://www.bing.com -mode half
21 changes: 18 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,8 +1,23 @@
# 更新记录

## [1.1.0] 2024.01.17

### 新增

- 增加 .Net 内存马支持,感谢 [@dust-life](https://github.com/dust-life) 贡献

### 修复

- 修复部分网站 TLS 连接失败的问题
- 修复 TLS 握手失败时连接未关闭的问题

### 变更

- 暂时禁用 HTTP2 的支持

## [1.0.0] 2023.12.18

## 新增
### 新增

- 增加 `aspx` 脚本支持,最低支持 .Net Framework 2.0
- 增加 `WebFlex` 响应式支持,并贴心的提供一键注入 SpringCloudGateway 的代码
Expand All @@ -12,7 +27,7 @@
- 使用随机 `TLS` 指纹,去除 Go 语言本身的 `TLS` 握手特征
- 使用随机异或密钥,去除连接阶段响应包完全一致的流量特征

## 修复
### 修复

- 修复界面版日志太多时 OOM 的问题
- 修复上游代理用户名密码大写不生效的问题
Expand Down Expand Up @@ -106,4 +121,4 @@
### 新增

- 发布第一版本,包含 GUI 和 命令行版
- 使用 Github Action 自动构建所有版本的应用
- 使用 Github Action 自动构建所有版本的应用
45 changes: 45 additions & 0 deletions assets/.net/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
# .Net

运行环境: .Net Framework >= 2.0; .NetCore; .Net

| 文件 | 全双工 | 半双工 | 负载转发 | 备注 |
|:---------------------|:---:|:---:|:----:|:---------------------|
| `suo5.aspx` | x ||| 常规 aspx 脚本 |
| `Suo5VirtualPath.cs` | x ||| .Net VirtualPath 内存马 |

1. `.Net` 全双工的实现主要卡在了流式的请求传输上,我发现在 `.Net` 中必须等到请求的 `Body` 结束才能在 aspx 脚本内拿到
`Request` 对象,这就导致了无法在请求过程中进行响应,因此只能使用半双工的方式来实现。
如通过你有思路突破这个限制,欢迎与我讨论
2. 脚本中有一个对服务线程池调整的逻辑,至少会调整为 256,如果并发数超过这个数量,请求会变得很慢,这和 IIS 的请求模型有关。
如果你需要更大的并发,需要把这个值改大一些。

## 使用 .Net 内存马

> 感谢 [@dust-life](https://github.com/dust-life) 贡献
参考: https://github.com/A-D-Team/SharpMemshell/blob/main/VirtualPath/memshell.cs

### 编译

```
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe /t:library Suo5VirtualPath.cs
```

or

```
C:\Windows\Microsoft.NET\Framework64\v2.0.50727\csc.exe /t:library Suo5VirtualPath.cs
```

### 使用

```
https://github.com/A-D-Team/SharpMemshell/blob/main/VirtualPath/install.aspx
```

or

```
ysoserial.exe -f BinaryFormatter -g ActivitySurrogateSelectorFromFile -c "Suo5VirtualPath.cs;System.Web.dll;System.dll"
```

File renamed without changes.
File renamed without changes.
40 changes: 4 additions & 36 deletions assets/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,43 +31,11 @@ User-Agent: Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/5

可以考虑请我 [喝杯咖啡](../DONATION.md),作者一直在用爱发电,你的支持会让他更有动力!

## Java
## 进入查看

> Weblogic 等服务对换行很敏感, 如果你需要对文件进行修改,请务必确保去除了不必要的换行,
> 尤其是文件结束的换行,否则可能无法使用
运行环境: JDK 4~21

| 文件 | 全双工 | 半双工 | 负载转发 | 备注 |
|:-------------------------|:---:|:---:|:----:|:-----------------------------------------------------------------------|
| `suo5.jsp` |||| |
| `suo5.jspx` |||| |
| `Suo5Filter.java` |||| `javax.servlet.Filter` 的实现,用于经典中间件 `Filter` 类型的内存马注入 |
| `Suo5WebFlexFilter.java` ||| x | `org.springframework.web.server.WebFilter` 的实现, 用于响应式的 Spring Netty 环境 |
| `Suo5WebFlexSpEL.txt` ||| x | Spring Cloud Gateway `CVE-2022-22947` 的一键注入 Suo5 的 Payload |

> WebFlex 的负载转发功能时可以支持的,时间比较仓库还没写,后面会更新
内存马注入推荐参考这个项目,其支持生成各种中间件的一键 Suo5
注入逻辑 [java-memshell-generator-release](https://github.com/pen4uin/java-memshell-generator-release)

## .Net

运行环境: .Net Framework >= 2.0; .NetCore; .Net

| 文件 | 全双工 | 半双工 | 负载转发 | 备注 |
|:------------|:---:|:---:|:----:|:---|
| `suo5.aspx` | x ||| |

1. `.Net` 全双工的实现主要卡在了流式的请求传输上,我发现在 `.Net` 中必须等到请求的 `Body` 结束才能在 aspx 脚本内拿到
`Request` 对象,这就导致了无法在请求过程中进行响应,因此只能使用半双工的方式来实现。
如通过你有思路突破这个限制,欢迎与我讨论
2. 脚本中有一个对服务线程池调整的逻辑,至少会调整为 256,如果并发数超过这个数量,请求会变得很慢,这和 IIS 的请求模型有关。
如果你需要更大的并发,需要把这个值改大一些。

## PHP

不打算做了,除非你说服我这个真的很重要 (
- [Java](java)
- [.Net](.net)
- ~~PHP~~

## 测试通过的服务

Expand Down
19 changes: 19 additions & 0 deletions assets/java/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Java

> Weblogic 等服务对换行很敏感, 如果你需要对文件进行修改,请务必确保去除了不必要的换行,
> 尤其是文件结束的换行,否则可能无法使用
运行环境: JDK 4~21

| 文件 | 全双工 | 半双工 | 负载转发 | 备注 |
|:-------------------------|:---:|:---:|:----:|:-----------------------------------------------------------------------|
| `suo5.jsp` |||| |
| `suo5.jspx` |||| |
| `Suo5Filter.java` |||| `javax.servlet.Filter` 的实现,用于经典中间件 `Filter` 类型的内存马注入 |
| `Suo5WebFlexFilter.java` ||| x | `org.springframework.web.server.WebFilter` 的实现, 用于响应式的 Spring Netty 环境 |
| `Suo5WebFlexSpEL.txt` ||| x | Spring Cloud Gateway `CVE-2022-22947` 的一键注入 Suo5 的 Payload |

> WebFlex 的负载转发功能时可以支持的,时间比较仓库还没写,后面会更新
内存马注入推荐参考这个项目,其支持生成各种中间件的一键 Suo5
注入逻辑 [java-memshell-generator-release](https://github.com/pen4uin/java-memshell-generator-release)
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
2 changes: 1 addition & 1 deletion gui/frontend/src/Home.vue
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@
<span>连接数: {{ status.connection_count }}</span>
<span>CPU: {{ status.cpu_percent }}</span>
<span>内存: {{ status.memory_usage }}</span>
<span>版本: 1.0.0</span>
<span>版本: 1.1.0</span>
</n-space>

<div class="footer">
Expand Down

0 comments on commit 33e8bd3

Please sign in to comment.