From 92e85b311b2ce1d8300ee6f386e822376d990408 Mon Sep 17 00:00:00 2001 From: kmanc Date: Fri, 16 Sep 2022 14:43:07 -0700 Subject: [PATCH] releases will now auto build and upload samples (#60) * releases will now auto build and upload samples * hold off on new windows for now * no equals --- .github/workflows/release_assets.yml | 446 +++++++++++++++++++++++++++ process_hollowing/Cargo.toml | 2 +- process_migration/Cargo.toml | 2 +- rco_utils/Cargo.toml | 2 +- tcp_reverse_shell/Cargo.toml | 2 +- 5 files changed, 450 insertions(+), 4 deletions(-) create mode 100644 .github/workflows/release_assets.yml diff --git a/.github/workflows/release_assets.yml b/.github/workflows/release_assets.yml new file mode 100644 index 0000000..08ffe0f --- /dev/null +++ b/.github/workflows/release_assets.yml @@ -0,0 +1,446 @@ +name: Asset builder and uploader for releases + +on: + release: + types: [created] + +jobs: + + linux: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + - name: Update rust + run: rustup update + - name: Update cargo + run: cargo update + - name: Build all for Linux + run: cargo build --release + - name: Upload hash_params + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/release/hash_params + asset_name: hash_params + asset_content_type: binary/octet-stream + - name: Upload process_hollowing + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/release/process_hollowing + asset_name: process_hollowing + asset_content_type: binary/octet-stream + - name: Upload process_migration + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/release/process_migration + asset_name: process_migration + asset_content_type: binary/octet-stream + - name: Upload tcp_reverse_shell + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/release/tcp_reverse_shell + asset_name: tcp_reverse_shell + asset_content_type: binary/octet-stream + - name: Upload xor_params + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/release/xor_params + asset_name: xor_params + asset_content_type: binary/octet-stream + + linux-xor: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v3 + - name: Update rust + run: rustup update + - name: Update cargo + run: cargo update + - name: Build all xor for Linux + run: cargo build --features xor --release + - name: Upload process_hollowing + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/release/process_hollowing + asset_name: process_hollowing_plus_xor + asset_content_type: binary/octet-stream + - name: Upload process_migration + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/release/process_migration + asset_name: process_migration_plus_xor + asset_content_type: binary/octet-stream + + windows: + + runs-on: ubuntu-latest + + steps: + - name: Update rust + run: rustup update + - name: Apt update + run: sudo apt-get update + - name: Install linker + run: sudo apt-get -y install mingw-w64 + - name: Add Windows build target + run: rustup target add x86_64-pc-windows-gnu + - uses: actions/checkout@v3 + - name: Update cargo + run: cargo update + - name: Build all for Windows + run: cargo build --target x86_64-pc-windows-gnu --release + - name: Upload hash_params + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/x86_64-pc-windows-gnu/release/hash_params.exe + asset_name: hash_params.exe + asset_content_type: binary/octet-stream + - name: Upload process_hollowing + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/x86_64-pc-windows-gnu/release/process_hollowing.exe + asset_name: process_hollowing.exe + asset_content_type: binary/octet-stream + - name: Upload process_migration + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/x86_64-pc-windows-gnu/release/process_migration.exe + asset_name: process_migration.exe + asset_content_type: binary/octet-stream + - name: Upload tcp_reverse_shell + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/x86_64-pc-windows-gnu/release/tcp_reverse_shell.exe + asset_name: tcp_reverse_shell.exe + asset_content_type: binary/octet-stream + - name: Upload xor_params + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/x86_64-pc-windows-gnu/release/xor_params.exe + asset_name: xor_params.exe + asset_content_type: binary/octet-stream + + windows-antisand: + + runs-on: ubuntu-latest + + steps: + - name: Update rust + run: rustup update + - name: Apt update + run: sudo apt-get update + - name: Install linker + run: sudo apt-get -y install mingw-w64 + - name: Add Windows build target + run: rustup target add x86_64-pc-windows-gnu + - uses: actions/checkout@v3 + - name: Update cargo + run: cargo update + - name: Build all for Windows + run: cargo build --target x86_64-pc-windows-gnu --features antisand --release + - name: Upload process_hollowing + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/x86_64-pc-windows-gnu/release/process_hollowing.exe + asset_name: process_hollowing_plus_antisand.exe + asset_content_type: binary/octet-stream + - name: Upload process_migration + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/x86_64-pc-windows-gnu/release/process_migration.exe + asset_name: process_migration_plus_antisand.exe + asset_content_type: binary/octet-stream + - name: Upload tcp_reverse_shell + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/x86_64-pc-windows-gnu/release/tcp_reverse_shell.exe + asset_name: tcp_reverse_shell_plus_antisand.exe + asset_content_type: binary/octet-stream + + windows-antisand-antistring: + + runs-on: ubuntu-latest + + steps: + - name: Update rust + run: rustup update + - name: Apt update + run: sudo apt-get update + - name: Install linker + run: sudo apt-get -y install mingw-w64 + - name: Add Windows build target + run: rustup target add x86_64-pc-windows-gnu + - uses: actions/checkout@v3 + - name: Update cargo + run: cargo update + - name: Build all for Windows + run: cargo build --target x86_64-pc-windows-gnu --features antisand,antistring --release + - name: Upload process_hollowing + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/x86_64-pc-windows-gnu/release/process_hollowing.exe + asset_name: process_hollowing_plus_antisand_antistring.exe + asset_content_type: binary/octet-stream + - name: Upload process_migration + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/x86_64-pc-windows-gnu/release/process_migration.exe + asset_name: process_migration_plus_antisand_antistring.exe + asset_content_type: binary/octet-stream + - name: Upload tcp_reverse_shell + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/x86_64-pc-windows-gnu/release/tcp_reverse_shell.exe + asset_name: tcp_reverse_shell_plus_antisand_antistring.exe + asset_content_type: binary/octet-stream + + windows-antisand-antistring-xor: + + runs-on: ubuntu-latest + + steps: + - name: Update rust + run: rustup update + - name: Apt update + run: sudo apt-get update + - name: Install linker + run: sudo apt-get -y install mingw-w64 + - name: Add Windows build target + run: rustup target add x86_64-pc-windows-gnu + - uses: actions/checkout@v3 + - name: Update cargo + run: cargo update + - name: Build all for Windows + run: cargo build --target x86_64-pc-windows-gnu --features antisand,antistring,xor --release + - name: Upload process_hollowing + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/x86_64-pc-windows-gnu/release/process_hollowing.exe + asset_name: process_hollowing_plus_antisand_antistring_xor.exe + asset_content_type: binary/octet-stream + - name: Upload process_migration + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/x86_64-pc-windows-gnu/release/process_migration.exe + asset_name: process_migration_plus_antisand_antistring_xor.exe + asset_content_type: binary/octet-stream + + windows-antisand-xor: + + runs-on: ubuntu-latest + + steps: + - name: Update rust + run: rustup update + - name: Apt update + run: sudo apt-get update + - name: Install linker + run: sudo apt-get -y install mingw-w64 + - name: Add Windows build target + run: rustup target add x86_64-pc-windows-gnu + - uses: actions/checkout@v3 + - name: Update cargo + run: cargo update + - name: Build all for Windows + run: cargo build --target x86_64-pc-windows-gnu --features antisand,xor --release + - name: Upload process_hollowing + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/x86_64-pc-windows-gnu/release/process_hollowing.exe + asset_name: process_hollowing_plus_antisand_xor.exe + asset_content_type: binary/octet-stream + - name: Upload process_migration + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/x86_64-pc-windows-gnu/release/process_migration.exe + asset_name: process_migration_plus_antisand_xor.exe + asset_content_type: binary/octet-stream + + windows-antistring: + + runs-on: ubuntu-latest + + steps: + - name: Update rust + run: rustup update + - name: Apt update + run: sudo apt-get update + - name: Install linker + run: sudo apt-get -y install mingw-w64 + - name: Add Windows build target + run: rustup target add x86_64-pc-windows-gnu + - uses: actions/checkout@v3 + - name: Update cargo + run: cargo update + - name: Build all for Windows + run: cargo build --target x86_64-pc-windows-gnu --features antistring --release + - name: Upload process_hollowing + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/x86_64-pc-windows-gnu/release/process_hollowing.exe + asset_name: process_hollowing_plus_antistring.exe + asset_content_type: binary/octet-stream + - name: Upload process_migration + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/x86_64-pc-windows-gnu/release/process_migration.exe + asset_name: process_migration_plus_antistring.exe + asset_content_type: binary/octet-stream + - name: Upload tcp_reverse_shell + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/x86_64-pc-windows-gnu/release/tcp_reverse_shell.exe + asset_name: tcp_reverse_shell_plus_antistring.exe + asset_content_type: binary/octet-stream + + windows-antistring-xor: + + runs-on: ubuntu-latest + + steps: + - name: Update rust + run: rustup update + - name: Apt update + run: sudo apt-get update + - name: Install linker + run: sudo apt-get -y install mingw-w64 + - name: Add Windows build target + run: rustup target add x86_64-pc-windows-gnu + - uses: actions/checkout@v3 + - name: Update cargo + run: cargo update + - name: Build all for Windows + run: cargo build --target x86_64-pc-windows-gnu --features antistring,xor --release + - name: Upload process_hollowing + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/x86_64-pc-windows-gnu/release/process_hollowing.exe + asset_name: process_hollowing_plus_antistring_xor.exe + asset_content_type: binary/octet-stream + - name: Upload process_migration + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/x86_64-pc-windows-gnu/release/process_migration.exe + asset_name: process_migration_plus_antistring_xor.exe + asset_content_type: binary/octet-stream + + windows-xor: + + runs-on: ubuntu-latest + + steps: + - name: Update rust + run: rustup update + - name: Apt update + run: sudo apt-get update + - name: Install linker + run: sudo apt-get -y install mingw-w64 + - name: Add Windows build target + run: rustup target add x86_64-pc-windows-gnu + - uses: actions/checkout@v3 + - name: Update cargo + run: cargo update + - name: Build all for Windows + run: cargo build --target x86_64-pc-windows-gnu --features xor --release + - name: Upload process_hollowing + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/x86_64-pc-windows-gnu/release/process_hollowing.exe + asset_name: process_hollowing_plus_xor.exe + asset_content_type: binary/octet-stream + - name: Upload process_migration + uses: actions/upload-release-asset@v1.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + with: + upload_url: ${{ github.event.release.upload_url }} + asset_path: ./target/x86_64-pc-windows-gnu/release/process_migration.exe + asset_name: process_migration_plus_xor.exe + asset_content_type: binary/octet-stream diff --git a/process_hollowing/Cargo.toml b/process_hollowing/Cargo.toml index 0206c93..35d6c98 100644 --- a/process_hollowing/Cargo.toml +++ b/process_hollowing/Cargo.toml @@ -21,7 +21,7 @@ rco_utils = {path = "../rco_utils"} nix = ">=0.16" [target.'cfg(windows)'.dependencies] -windows.version = ">=0.36.0" +windows.version = "<0.40.0" windows.features = [ "Win32_Foundation", "Win32_Security", diff --git a/process_migration/Cargo.toml b/process_migration/Cargo.toml index ff52458..a3d80ae 100644 --- a/process_migration/Cargo.toml +++ b/process_migration/Cargo.toml @@ -20,7 +20,7 @@ rco_utils = {path = "../rco_utils"} nix = ">=0.16" [target.'cfg(windows)'.dependencies] -windows.version = ">=0.36.0" +windows.version = "<0.40.0" windows.features = [ "Win32_Foundation", "Win32_Security", diff --git a/rco_utils/Cargo.toml b/rco_utils/Cargo.toml index 618297a..1eb9bf5 100644 --- a/rco_utils/Cargo.toml +++ b/rco_utils/Cargo.toml @@ -16,7 +16,7 @@ antistring = ["windows"] rand.optional = true rand.version = ">=0.8.5" windows.optional = true -windows.version = ">=0.36.0" +windows.version = "<0.40.0" windows.features = [ "Win32_Foundation", "Win32_Networking", diff --git a/tcp_reverse_shell/Cargo.toml b/tcp_reverse_shell/Cargo.toml index 92905f0..51a42ba 100644 --- a/tcp_reverse_shell/Cargo.toml +++ b/tcp_reverse_shell/Cargo.toml @@ -16,7 +16,7 @@ rco_config = {path = "../rco_config"} rco_utils = {path = "../rco_utils"} [target.'cfg(windows)'.dependencies] -windows.version = ">=0.36.0" +windows.version = "<0.40.0" windows.features = [ "Win32_Foundation", "Win32_Security",