Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[pull] main from BC-SECURITY:main #12

Merged
merged 62 commits into from
Oct 23, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
62 commits
Select commit Hold shift + click to select a range
1d896af
Bump tj-actions/changed-files from 44.4.0 to 44.5.2 (#830)
dependabot[bot] Jun 9, 2024
e67ecc4
Update client.md (#732)
MatthewGeneNavarro Jun 9, 2024
5215c24
Merge pull request #831 from BC-SECURITY/cherry-pick-8aca427
vinnybod Jun 9, 2024
227bca7
updated c# server plugin to use taskings (#826)
Cx01N Jun 10, 2024
096a523
Add task tracking to all agents (#829)
Cx01N Jun 11, 2024
0af261c
Updated sharpire to track all tasks (#832)
Cx01N Jun 21, 2024
71e8db8
Added Invoke-BSOD module (#836)
Cx01N Jun 29, 2024
42e1194
Upgrade Ruff to 0.5.0 and Black to 24.4.2 (#838)
vinnybod Jun 29, 2024
6d7e075
Bump tj-actions/changed-files from 44.5.2 to 44.5.4 (#834)
dependabot[bot] Jun 29, 2024
b5d8c0d
Bump docker/build-push-action from 5 to 6 (#833)
dependabot[bot] Jun 29, 2024
7e4afaa
New ruff rules (#839)
vinnybod Jun 30, 2024
1e471b0
Fixed issue where NET45 was missing a compiled folder (#843)
Cx01N Jul 8, 2024
a564cb8
fixed New-GPOImmediateTask missing from powerview (#846)
Cx01N Jul 8, 2024
cc46032
Bump MishaKav/pytest-coverage-comment from 1.1.51 to 1.1.52 (#841)
dependabot[bot] Jul 9, 2024
60a09ad
Bump tj-actions/changed-files from 44.5.4 to 44.5.5 (#840)
dependabot[bot] Jul 10, 2024
9e57905
Added task bundling for the C# server plugin (#844)
Cx01N Jul 11, 2024
b7141b9
Added Threadlessinject module (#845)
Cx01N Jul 13, 2024
f1569d9
Prepare release 5.11.0 private
web-flow Jul 14, 2024
505d60f
Merge pull request #852 from BC-SECURITY/release/5.11.0-private
vinnybod Jul 16, 2024
31f6d8f
Fixed job tasking for sharpire agent (#855)
Cx01N Jul 20, 2024
872be88
removed duplicate code for ironpython agent loading libraries (#856)
Cx01N Jul 20, 2024
49050d1
Add FURB, SLF, RET to Ruff (#857)
vinnybod Jul 21, 2024
82f5584
manual fixes for RET in listeners/stagers (#858)
vinnybod Jul 22, 2024
050a0a7
Add ticketdumper module (#849)
vinnybod Jul 22, 2024
33bb56f
Prepare release 5.11.1 private
web-flow Jul 23, 2024
59b251c
v5.11.1 into private-main (#860)
vinnybod Jul 23, 2024
bec4ed7
Added Route4Me to sponsor section (#864)
Cx01N Aug 3, 2024
1abe3ed
Added route4me logo to docs
Cx01N Aug 5, 2024
5f12b0b
Fixed error with global obfuscation for payloads (#867)
Cx01N Aug 8, 2024
af86596
Prepare release 5.11.2 private
web-flow Aug 8, 2024
bec8b41
Merge pull request #868 from BC-SECURITY/release/5.11.2-private
vinnybod Aug 8, 2024
c039c59
Merge branch 'main' into release/5.11.2
vinnybod Aug 8, 2024
edab367
Merge pull request #739 from BC-SECURITY/release/5.11.2
vinnybod Aug 8, 2024
5aaa9e4
attempt to fix docker action (#871)
vinnybod Aug 10, 2024
e5e59bc
Fixed issue where background ps tasks would check in continuously (#879)
Cx01N Sep 1, 2024
e7d2ba4
Updated Rubeus to 2.3.2 and fixed arg parsing (#881)
Cx01N Sep 3, 2024
b459ab7
Fixed option parsing errors in credentials/tokens (#880)
Cx01N Sep 3, 2024
541146c
Prepare release 5.11.3 private
web-flow Sep 4, 2024
673a7ff
Merge pull request #883 from BC-SECURITY/release/5.11.3-private
vinnybod Sep 4, 2024
1aad509
Update WebcamRecorder.yaml (#742)
Vladimir-A Sep 4, 2024
f33c713
nameserver: discover nameserver within environment of this host (#741)
cmitcho Sep 4, 2024
6257ee2
Update WebcamRecorder.yaml (#742)
Vladimir-A Sep 4, 2024
6da438e
Merge pull request #885 from BC-SECURITY/cherry-pick-1aad509997bdeb7c…
vinnybod Sep 4, 2024
45bd7d2
Merge branch 'main' into private-main
vinnybod Sep 4, 2024
4c3f776
Revert "Merge branch 'main' into private-main"
vinnybod Sep 4, 2024
a4584b1
nameserver: discover nameserver within environment of this host (#741)
cmitcho Sep 4, 2024
fdd6a24
Prepare release 5.11.4 private
web-flow Sep 4, 2024
89a207c
Merge pull request #886 from BC-SECURITY/release/5.11.4-private
vinnybod Sep 4, 2024
f083ada
Reapply "Merge branch 'main' into private-main"
vinnybod Sep 4, 2024
21880d8
Merge pull request #745 from BC-SECURITY/release/5.11.4
vinnybod Sep 4, 2024
19baddb
Added AC3 sponsor logo (#746)
Cx01N Sep 10, 2024
dbf87fc
Fix various Python 3.12 SyntaxWarning (#748)
elboulangero Sep 19, 2024
d27f6a4
Added AC3 sponsor logo (#746)
Cx01N Sep 10, 2024
a0ff6a8
Merge pull request #894 from BC-SECURITY/cherry-pick-19baddb724463499…
vinnybod Sep 21, 2024
2cc827c
Fix various Python 3.12 SyntaxWarning (#748)
elboulangero Sep 19, 2024
05805e3
Merge pull request #895 from BC-SECURITY/cherry-pick-dbf87fc755a75262…
vinnybod Sep 21, 2024
a4a84ef
Prepare release 5.11.5 private
web-flow Sep 22, 2024
7777a90
Merge pull request #898 from BC-SECURITY/release/5.11.5-private
vinnybod Sep 22, 2024
2daeb23
Update starkiller version to v2.8.2
web-flow Sep 22, 2024
9617a16
Update CHANGELOG.md
vinnybod Sep 22, 2024
34a216f
Merge branch 'main' into release/5.11.5
vinnybod Sep 22, 2024
ee6526b
Merge pull request #750 from BC-SECURITY/release/5.11.5
vinnybod Sep 22, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/install_tests/cst-config-install-base.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ commandTests:
- name: "pyenv version"
command: "pyenv"
args: ["--version"]
expectedOutput: ["pyenv 2.3.*"]
expectedOutput: ["pyenv 2.*"]
# poetry
- name: "poetry python"
command: "poetry"
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/dockerimage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ jobs:
echo "Using latest tag"
fi
- name: Build and push
uses: docker/build-push-action@v5
uses: docker/build-push-action@v6
with:
context: .
platforms: linux/amd64,linux/arm64
Expand Down
16 changes: 8 additions & 8 deletions .github/workflows/lint-and-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,11 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: psf/black@24.2.0
- uses: psf/black@24.4.2
- name: Run ruff
run: |
pip install ruff==0.2.1
ruff .
pip install ruff==0.5.3
ruff check .
matrix-prep-config:
runs-on: ubuntu-latest
steps:
Expand Down Expand Up @@ -85,13 +85,13 @@ jobs:
DATABASE_USE=sqlite poetry run pytest . -v --runslow
- name: Pytest coverage comment
if: ${{ matrix.python-version == '3.12' }}
uses: MishaKav/[email protected].51
uses: MishaKav/[email protected].52
with:
pytest-coverage-path: ./pytest-coverage.txt
junitxml-path: ./pytest.xml
test_image:
# To save CI time, only run these tests on the release PRs
if: ${{ startsWith(github.head_ref, 'release/') }}
if: ${{ startsWith(github.head_ref, 'release/') || contains( github.event.pull_request.labels.*.name, 'docker') }}
timeout-minutes: 30
runs-on: ubuntu-latest
name: Test Docker Image
Expand All @@ -109,9 +109,9 @@ jobs:
sed -i 's|ref: sponsors-main|ref: main|g' empire/server/config.yaml
fi
- name: Build docker image
run: docker-compose -f .github/docker-compose.yml build
run: docker compose -f .github/docker-compose.yml build
- name: Run tests on docker image
run: docker-compose -f .github/docker-compose.yml run test
run: docker compose -f .github/docker-compose.yml run test
- name: run structure tests docker
uses: plexsystems/[email protected]
with:
Expand Down Expand Up @@ -139,7 +139,7 @@ jobs:
# To save CI time, only run these tests when the install script or deps changed
- name: Get changed files using defaults
id: changed-files
uses: tj-actions/changed-files@v44.4.0
uses: tj-actions/changed-files@v44.5.5
- name: Build images
if: contains(steps.changed-files.outputs.modified_files, 'setup/install.sh') || contains(steps.changed-files.outputs.modified_files, 'poetry.lock')
run: docker compose -f .github/install_tests/docker-compose-install-tests.yml build --parallel ${{ join(matrix.images, ' ') }}
Expand Down
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -55,3 +55,6 @@
[submodule "empire/server/csharp/Covenant/Data/ReferenceSourceLibraries/Moriarty"]
path = empire/server/csharp/Covenant/Data/ReferenceSourceLibraries/Moriarty
url = https://github.com/BC-SECURITY/Moriarty.git
[submodule "empire/server/csharp/Covenant/Data/ReferenceSourceLibraries/ThreadlessInject"]
path = empire/server/csharp/Covenant/Data/ReferenceSourceLibraries/ThreadlessInject
url = https://github.com/CCob/ThreadlessInject.git
2 changes: 1 addition & 1 deletion .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ repos:
- id: end-of-file-fixer

- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.2.1
rev: v0.5.3
hooks:
- id: ruff
args: [--fix, --exit-non-zero-on-fix]
Expand Down
85 changes: 84 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,77 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## [Unreleased]

## [5.11.5] - 2024-09-22

- Updated Starkiller to v2.8.2
- Fixed various Python 3.12 SyntaxWarning

## [5.11.4] - 2024-09-04

### Added

- Added nameserver check for linux hosts (@0x636f646f)

## [5.11.3] - 2024-09-04

### Changed

- Updated Rubeus to v2.3.2 (@Cx01N)

### Fixed

- Fixed Rubeus error where only first arg was being used (@Cx01N)
- Fixed background jobs checking in continuously (@Cx01N)
- Fixed Rubeus killing agent when certain options were given that use System.Environment.Exit (@Cx01N)
- Fixed option parsing error in credential/tokens module (@Cx01N)
- Removed requirement for credid for mimikatz/pth (@Cx01N)

## [5.11.2] - 2024-08-08

### Added

- Added Route4Me to sponsor page on Empire (@Cx01N)

### Fixed

- Fixed global obfuscation bug in listener staging (@Cx01N)

## [5.11.1] - 2024-07-23

### Changed

- Updated Ruff to 0.5.3 and added additional Ruff rules (@Vinnybod)

### Fixed

- Removed duplicate code for ironpython agent for loading path resetting (@Cx01N)
- Fixed issue of Sharpire taskings not getting assigned correct id (@Cx01N)

## [5.11.0] - 2024-07-14

### Added

- Added threaded jobs for powershell tasks using Appdomains (@Cx01N)
- Added job tracking for all tasks in Sharpire (@Cx01N)
- Updated agents to track all tasks and removed only tracking jobs (@Cx01N)
- Added Invoke-BSOD modules (@Cx01N)
- Added ticketdumper ironpython module (@Hubbl3)
- Added ThreadlessInject module (@Cx01N)

### Fixed

- Fixed issue in python agents where background jobs were failed due to a missing character (@Cx01N)
- Fixed task bundling for the c# server plugin (@Cx01N)
- Fixed missing New-GPOImmediateTask in powerview (@Cx01N)
- Fixed NET45 missing folder causing a compilation error (@Cx01N)
- Fixed NET45 files not being removed on server reset (@Cx01N)

### Changed

- Converted C# server plugin to use plugin taskings (@Cx01N)
- Upgraded Ruff to 0.5.0 and Black to 24.4.2 (@Vinnybod)
- Added pylint-convention (PLC), pylint-error (PLE), pylint-warning (PLW), and pylint-refactor (PLR) to ruff config (@Vinnybod)

## [5.10.3] - 2024-05-23

### Changed
Expand Down Expand Up @@ -863,7 +934,19 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Updated shellcoderdi to newest version (@Cx01N)
- Added a Nim launcher (@Hubbl3)

[Unreleased]: https://github.com/BC-SECURITY/Empire-Sponsors/compare/v5.10.3...HEAD
[Unreleased]: https://github.com/BC-SECURITY/Empire-Sponsors/compare/v5.11.5...HEAD

[5.11.5]: https://github.com/BC-SECURITY/Empire-Sponsors/compare/v5.11.4...v5.11.5

[5.11.4]: https://github.com/BC-SECURITY/Empire-Sponsors/compare/v5.11.3...v5.11.4

[5.11.3]: https://github.com/BC-SECURITY/Empire-Sponsors/compare/v5.11.2...v5.11.3

[5.11.2]: https://github.com/BC-SECURITY/Empire-Sponsors/compare/v5.11.1...v5.11.2

[5.11.1]: https://github.com/BC-SECURITY/Empire-Sponsors/compare/v5.11.0...v5.11.1

[5.11.0]: https://github.com/BC-SECURITY/Empire-Sponsors/compare/v5.10.3...v5.11.0

[5.10.3]: https://github.com/BC-SECURITY/Empire-Sponsors/compare/v5.10.2...v5.10.3

Expand Down
11 changes: 3 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,6 @@
[![Twitter URL](https://img.shields.io/twitter/follow/BCSecurity?style=plastic&logo=twitter)](https://twitter.com/BCSecurity)
[![Twitter URL](https://img.shields.io/twitter/follow/EmpireC2Project?style=plastic&logo=twitter)](https://twitter.com/EmpireC2Project)
[![YouTube URL](https://img.shields.io/youtube/channel/views/UCIV4xSntF1h1bvFt8SUfzZg?style=plastic&logo=youtube)](https://www.youtube.com/channel/UCIV4xSntF1h1bvFt8SUfzZg)
![Mastodon Follow](https://img.shields.io/mastodon/follow/109299433521243792?domain=https%3A%2F%2Finfosec.exchange%2F&style=plastic&logo=mastodon)
![Mastodon Follow](https://img.shields.io/mastodon/follow/109384907460361134?domain=https%3A%2F%2Finfosec.exchange%2F&style=plastic&logo=mastodon)
[![Threads](https://img.shields.io/badge/follow%20@BCSecurity0-grey?style=plastic&logo=threads&logoColor=#000000)](https://www.threads.net/@bcsecurity0)
[![Threads](https://img.shields.io/badge/follow%20@EmpireC2Project-grey?style=plastic&logo=threads&logoColor=#000000)](https://www.threads.net/@empirec2project)
[![LinkedIn](https://img.shields.io/badge/Linkedin-blue?style=plastic&logo=linkedin&logoColor=#0A66C2)](https://www.linkedin.com/company/bc-security/)

</div>
Expand Down Expand Up @@ -53,15 +49,14 @@ Empire is a post-exploitation and adversary emulation framework that is used to
- [ProcessInjection](https://github.com/3xpl01tc0d3r/ProcessInjection)
- And Many More

<!---
## Sponsors
<div align="center">

[<img src="https://github.com/BC-SECURITY/Empire/assets/9831420/f273f4b0-400c-49ce-b62f-521239a86754" width="100"/>](https://www.cybrary.it/)
[<img src="https://github.com/user-attachments/assets/604fbb97-4641-4a15-a6ba-039f67694f15" width="200"/>](https://www.route4me.com//)

[<img src="https://github.com/BC-SECURITY/Empire/assets/9831420/d14af000-80d2-4f67-b70c-b62ac42b6a52" width="100"/>](https://twitter.com/joehelle)

[<img src="https://github.com/user-attachments/assets/8685f8de-ad66-46d3-8751-8f2bdddc4ac1" width="100"/>](https://www.instagram.com/purpl3_cult/)
</div>
--->

## Release Notes

Expand Down
5 changes: 1 addition & 4 deletions docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,10 +44,7 @@ Empire is a post-exploitation and adversary emulation framework that is used to
* And Many More

## Sponsors

&#x20;      [<img src="https://user-images.githubusercontent.com/20302208/185246508-56f4f574-5a06-4a2c-ac62-320922588dcf.png" alt="" data-size="original">](https://www.sans.org/cyber-security-courses/red-team-operations-adversary-emulation/)&#x20;

&#x20;     [![](https://user-images.githubusercontent.com/20302208/208271681-235c914b-5359-426e-8a3d-903bbd018847.png)](https://www.cybrary.it/)   &#x20;
&#x20;      [<img src="https://github.com/user-attachments/assets/604fbb97-4641-4a15-a6ba-039f67694f15" alt="" data-size="original">](https://www.route4me.com)&#x20;

## Help us Improve!

Expand Down
6 changes: 3 additions & 3 deletions empire.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@

import sys

import empire.arguments as arguments
from empire import arguments

if __name__ == "__main__":
args = arguments.args

if args.subparser_name == "server":
import empire.server.server as server
from empire.server import server

server.run(args)
elif args.subparser_name == "sync-starkiller":
Expand All @@ -21,7 +21,7 @@

sync_starkiller(config)
elif args.subparser_name == "client":
import empire.client.client as client
from empire.client import client

client.start(args)

Expand Down
2 changes: 1 addition & 1 deletion empire/client/client.py
Original file line number Diff line number Diff line change
Expand Up @@ -194,7 +194,7 @@ def run_resource_file(self, session, resource):
except CliExitException:
return
except Exception:
log.error("Error parsing resource command: ", text)
log.error(f"Error parsing resource command: {text}")

log.info(f"Finished executing resource file: {resource}")

Expand Down
7 changes: 1 addition & 6 deletions empire/client/src/bindings.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,12 +13,7 @@

@Condition
def ctrl_c_filter():
if (
menu_state.current_menu_name == "ChatMenu"
or menu_state.current_menu_name == "ShellMenu"
):
return True
return False
return bool(menu_state.current_menu_name in ("ChatMenu", "ShellMenu"))


@bindings.add("c-c", filter=ctrl_c_filter)
Expand Down
Loading