Skip to content

Commit

Permalink
bug fix for command augment containers
Browse files Browse the repository at this point in the history
  • Loading branch information
its-a-feature committed Jan 30, 2025
1 parent 436641b commit d6608d6
Show file tree
Hide file tree
Showing 4 changed files with 15 additions and 7 deletions.
6 changes: 6 additions & 0 deletions CHANGELOG.MD
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,12 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [3.3.1-rc39] - 2025-01-30

### Changed

- Fixed a syncing bug that wasn't auto adding commands to new callbacks for command augmentation containers

## [3.3.1-rc38] - 2025-01-30

### Changed
Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
3.3.1-rc38
3.3.1-rc39
2 changes: 1 addition & 1 deletion mythic-docker/src/VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
3.3.1-rc38
3.3.1-rc39
12 changes: 7 additions & 5 deletions mythic-docker/src/rabbitmq/recv_pt_sync.go
Original file line number Diff line number Diff line change
Expand Up @@ -403,7 +403,7 @@ func payloadTypeSync(in PayloadTypeSyncMessage) error {
if !in.ForcedSync {
go CreateGraphQLSpectatorAPITokenAndSendOnStartMessage(payloadtype.Name)
if in.PayloadType.AgentType == "command_augment" {
go updateAllCallbacksWithCommandAugments(in.PayloadType.Name)
go updateAllCallbacksWithCommandAugments()
}
}
return nil
Expand Down Expand Up @@ -1279,19 +1279,21 @@ func updatePayloadBuildSteps(in PayloadTypeSyncMessage, payloadtype databaseStru
}
}

func updateAllCallbacksWithCommandAugments(payloadTypeName string) {
func updateAllCallbacksWithCommandAugments() {
callbacks := []databaseStructs.Callback{}
err := database.DB.Select(&callbacks, `SELECT
callback.id, callback.operator_id,
payload.os "payload.os"
payload.os "payload.os",
payloadtype.Name "payload.payloadtype.name"
FROM callback
JOIN payload on callback.registered_payload_id = payload.id`)
JOIN payload on callback.registered_payload_id = payload.id
JOIN payloadtype ON payload.payload_type_id = payloadtype.id`)
if err != nil {
logging.LogError(err, "failed to get callbacks for updating with newly synced command augmentation container")
return
}
for _, callback := range callbacks {
addCommandAugmentsToCallback(callback.ID, callback.Payload.Os, payloadTypeName, callback.OperatorID)
addCommandAugmentsToCallback(callback.ID, callback.Payload.Os, callback.Payload.Payloadtype.Name, callback.OperatorID)
}

}
Expand Down

0 comments on commit d6608d6

Please sign in to comment.