MythicAgents / Athena

172 stars 36 forks source link

Issue with Raspberry Pi ARM64 architecture? #72

Closed SaadSaid158 closed 3 days ago

SaadSaid158 commented 2 months ago

root@raspberrypi:/home/pi/Mythic# ./mythic-cli install github https://github.com/MythicAgents/Athena

2024/06/14 09:26:41 [] Creating temporary directory 2024/06/14 09:26:41 [] Cloning https://github.com/MythicAgents/Athena Cloning into '/home/pi/Mythic/tmp'... 2024/06/14 09:26:43 [] Parsing config.json [] Processing Payload Type athena

2024/06/14 09:26:44 [] Stopping current container 2024/06/14 09:26:44 [] Removing current version 2024/06/14 09:26:45 [+] Successfully removed the current version 2024/06/14 09:26:45 [] Copying new version of payload into place 2024/06/14 09:26:45 [] Adding service into docker-compose 2024/06/14 09:26:45 [] Removing old volume, athena_volume, if it exists No stopped containers Creating volume "athena_volume" with default driver WARNING: Found orphan containers (hercules-exercise2, hercules-exercise4, hercules-exercise3, hercules-exercise1, hercules-exercise5) for this project. If you removed or renamed this service in your compose file, you can run this command with the --remove-orphans flag to clean it up. Pulling athena (ghcr.io/mythicagents/athena:v2.1.4)... v2.1.4: Pulling from mythicagents/athena ERROR: no matching manifest for linux/arm64/v8 in the manifest list entries 2024/06/14 09:26:49 [+] Successfully installed service 2024/06/14 09:26:49 [+] Successfully installed c2 2024/06/14 09:26:49 [] Processing Documentation for Athena

2024/06/14 09:26:50 [] Removing current version 2024/06/14 09:26:50 [+] Successfully removed the current version 2024/06/14 09:26:50 [] Copying new documentation into place 2024/06/14 09:26:50 [+] Successfully installed Payload documentation 2024/06/14 09:26:50 [+] Successfully installed c2 documentation 2024/06/14 09:26:50 [+] Successfully installed Wrapper documentation [] Restarting mythic_documentation container to pull in changes Stopping mythic_documentation ... done WARNING: Found orphan containers (hercules-exercise3, hercules-exercise2, hercules-exercise1, hercules-exercise4, hercules-exercise5) for this project. If you removed or renamed this service in your compose file, you can run this command with the --remove-orphans flag to clean it up. Starting mythic_documentation ... done 2024/06/14 09:26:54 [] Waiting for RabbitMQ to come online (Retry Count = 10) 2024/06/14 09:26:54 [*] Attempting to connect to RabbitMQ at 127.0.0.1:5672, attempt 1/10 2024/06/14 09:26:54 [+] Successfully connected to RabbitMQ at amqp://mythic_user:***@127.0.0.1:5672/mythic_vhost

2024/06/14 09:26:54 [] Waiting for Mythic Server and Nginx to come online (Retry Count = 10) 2024/06/14 09:26:54 [] Attempting to connect to Mythic UI at https://127.0.0.1:7443, attempt 1/10 2024/06/14 09:26:54 [+] Successfully connected to Mythic at https://127.0.0.1:7443

MYTHIC SERVICE WEB ADDRESS BOUND LOCALLY Nginx (Mythic Web UI) https://127.0.0.1:7443 false Mythic Backend Server http://127.0.0.1:17443 true Hasura GraphQL Console http://127.0.0.1:8080 true Jupyter Console http://127.0.0.1:8888 true Internal Documentation http://127.0.0.1:8090 true

ADDITIONAL SERVICES ADDRESS BOUND LOCALLY Postgres Database postgresql://mythic_user:password@127.0.0.1:5432/mythic_db true React Server http://127.0.0.1:3000/new true RabbitMQ amqp://mythic_user:password@127.0.0.1:5672 true

Mythic Main Services CONTAINER NAME STATE STATUS MOUNT PORTS mythic_documentation running Up Less than a second (health: starting) local 8090/tcp -> 127.0.0.1:8090 mythic_graphql running Up 11 hours (healthy) N/A 8080/tcp -> 127.0.0.1:8080 mythic_jupyter running Up 11 hours (healthy) local 8888/tcp -> 127.0.0.1:8888 mythic_nginx running Up 11 hours (healthy) local 7443/tcp -> :::7443, 7443 mythic_postgres running Up 11 hours (healthy) local 5432/tcp -> 127.0.0.1:5432 mythic_rabbitmq running Up 11 hours (healthy) local 5672/tcp -> 127.0.0.1:5672 mythic_react running Up 11 hours (healthy) local 3000/tcp -> 127.0.0.1:3000 mythic_server running Up 11 hours (healthy) local 7000/tcp -> :::7000, 7001/tcp -> :::7001, 7002/tcp -> :::7002, 7003/tcp -> :::7003, 7004/tcp -> :::7004, 7005/tcp -> :::7005, 7006/tcp -> :::7006, 7007/tcp -> :::7007, 7008/tcp -> :::7008, 7009/tcp -> :::7009, 7010/tcp -> :::7010, 17443/tcp -> 127.0.0.1:17443, 17444/tcp -> 127.0.0.1:17444, 7000, 7001, 7002, 7003, 7004, 7005, 7006, 7007, 7008, 7009, 7010

Installed Services CONTAINER NAME STATE STATUS MOUNT apfell running Up 10 hours apfell_volume atlas restarting Restarting (1) Less than a second ago local discord running Up 11 hours local dns running Up 11 hours local hercules-Exercise1 restarting Restarting (0) 11 seconds ago local hercules-Exercise2 created Created local hercules-Exercise3 created Created local hercules-Exercise4 created Created local hercules-Exercise5 created Created local hercules_c2 created Created local hercules_translator created Created local hermes restarting Restarting (1) 28 seconds ago local http running Up 11 hours http_volume httpx running Up 11 hours httpx_volume jamfserver running Up 20 minutes local leviathan running Up About an hour local medusa running Up About an hour local poseidon running Up 10 hours poseidon_volume scarecrow_wrapper running Up About an hour local sliverapi running Up 11 hours sliverapi_volume sliverimplant running Up 11 hours sliverimplant_volume tcp running Up 11 hours local thanatos restarting Restarting (1) 32 seconds ago thanatos_volume typhon running Up 20 minutes local

2024/06/14 09:26:54 [] RabbitMQ is currently listening on localhost. If you have a remote Service, they will be unable to connect (i.e. one running on another server) 2024/06/14 09:26:54 Use 'sudo ./mythic-cli config set rabbitmq_bind_localhost_only false' and restart mythic ('sudo ./mythic-cli restart') to change this 2024/06/14 09:26:54 [] MythicServer is currently listening on localhost. If you have a remote Service, they will be unable to connect (i.e. one running on another server) 2024/06/14 09:26:54 Use 'sudo ./mythic-cli config set mythic_server_bind_localhost_only false' and restart mythic ('sudo ./mythic-cli restart') to change this 2024/06/14 09:26:54 [*] If you are using a remote PayloadType or C2Profile, they will need certain environment variables to properly connect to Mythic. 2024/06/14 09:26:54 Use 'sudo ./mythic-cli config service' for configs for these services. [+] Successfully installed service! root@raspberrypi:/home/pi/Mythic#

Desktop

checkymander commented 1 month ago

@its-a-feature this might be better suited for you?

its-a-feature commented 1 month ago

v2.1.4: Pulling from mythicagents/athena ERROR: no matching manifest for linux/arm64/v8 in the manifest list entries @checkymander when you pre-build your docker images, are you cross compiling them? That might be the issue here. If Athena should work on this architecture, then you could always try:

sudo ./mythic-cli config set athena_use_build_context true
sudo ./mythic-cli config set athena_use_volume false
sudo ./mythic-cli build athena

That'll cause Athena's image to be built locally, on your current architecture, instead of pulling down a specific, pre-compiled verison of the container image from GitHub

SaadSaid158 commented 1 month ago

v2.1.4: Pulling from mythicagents/athena ERROR: no matching manifest for linux/arm64/v8 in the manifest list entries @checkymander when you pre-build your docker images, are you cross compiling them? That might be the issue here. If Athena should work on this architecture, then you could always try:

sudo ./mythic-cli config set athena_use_build_context true
sudo ./mythic-cli config set athena_use_volume false
sudo ./mythic-cli build athena

That'll cause Athena's image to be built locally, on your current architecture, instead of pulling down a specific, pre-compiled verison of the container image from GitHub

I attempted this, but I got this

pi@raspberrypi:/Mythic $ sudo ./mythic-cli config set athena_use_build_context true sudo ./mythic-cli config set athena_use_volume false sudo ./mythic-cli build athena 2024/07/13 22:34:31 [+] Configuration successfully updated. Bring containers down and up for changes to take effect. 2024/07/13 22:34:31 [+] Configuration successfully updated. Bring containers down and up for changes to take effect. No stopped containers Building athena Sending build context to Docker daemon 4.485MB Step 1/1 : FROM ghcr.io/mythicagents/athena:v2.1.4 v2.1.4: Pulling from mythicagents/athena no matching manifest for linux/arm64/v8 in the manifest list entries ERROR: Service 'athena' failed to build : Build failed pi@raspberrypi:/Mythic $

It doesn't give any details on why the build failed.

checkymander commented 3 days ago

We pushed a build for Arm64, so that you should be able to build it now!