mitre / caldera

Automated Adversary Emulation Platform
https://caldera.mitre.org
Apache License 2.0
5.67k stars 1.08k forks source link

Issue installing caldera | Ubuntu 22.0.4 #3060

Closed efanmak closed 1 month ago

efanmak commented 1 month ago

Hello, I encounter the below issue when i try to install caldera in ubuntu 22.04 PRETTY_NAME="Ubuntu 22.04.3 LTS" NAME="Ubuntu" VERSION_ID="22.04" VERSION="22.04.3 LTS (Jammy Jellyfish)" VERSION_CODENAME=jammy


here is the output when i issue the command python3 server.py --insecure

2024-09-30 23:24:08 - WARNING (server.py:202 ) --insecure flag set. Caldera will use the default.yml config file. 2024-09-30 23:24:08 - INFO (server.py:211 ) Using main config from conf/default.yml 2024-09-30 23:24:09 - ERROR (app_svc.py:173 validate_requirement) go does not meet the minimum version of 1.19 2024-09-30 23:24:09 - INFO (contact_gist.py:70 start) Invalid Github Gist personal API token provided. Gist C2 contact will not be started. 2024-09-30 23:24:09 - INFO (tunnel_ssh.py:26 start) Generating temporary SSH private key. Was unable to use provided SSH private key 2024-09-30 23:24:09 - INFO (logging.py:92 log) Creating SSH listener on 0.0.0.0, port 8022 2024-09-30 23:24:09 - INFO (app_svc.py:116 load) Enabled plugin: debrief 2024-09-30 23:24:09 - INFO (app_svc.py:116 load) Enabled plugin: compass 2024-09-30 23:24:09 - INFO (app_svc.py:116 load) Enabled plugin: access 2024-09-30 23:24:09 - ERROR (c_plugin.py:91 _load_module) Error importing plugin=builder, No module named 'docker' 2024-09-30 23:24:09 - ERROR (c_plugin.py:59 load_plugin) Error loading plugin=builder, 'NoneType' object has no attribute 'description' 2024-09-30 23:24:09 - INFO (app_svc.py:116 load) Enabled plugin: response 2024-09-30 23:24:09 - INFO (app_svc.py:116 load) Enabled plugin: sandcat 2024-09-30 23:24:09 - INFO (app_svc.py:116 load) Enabled plugin: fieldmanual 2024-09-30 23:24:09 - INFO (app_svc.py:116 load) Enabled plugin: training 2024-09-30 23:24:09 - INFO (app_svc.py:116 load) Enabled plugin: manx 2024-09-30 23:24:09 - INFO (app_svc.py:116 load) Enabled plugin: atomic 2024-09-30 23:24:09 - INFO (app_svc.py:116 load) Enabled plugin: stockpile 2024-09-30 23:24:09 - INFO (server.py:741 start) serving on 0.0.0.0:2222 2024-09-30 23:24:09 - WARNING (data_svc.py:436 _apply_special_extension_hooks) Unable to properly load .donut for payload plugins.stockpile.app.donut.donut_handler due to failed import 2024-09-30 23:24:09 - WARNING (app_svc.py:171 validate_requirement) upx does not meet the minimum version of 0.0.0. Upx is an optional dependency which adds more functionality. 2024-09-30 23:24:12 - WARNING (c_adversary.py:90 verify) Ability referenced in adversary ef4d997c-a0d1-4067-9efa-87c58682db71 but not found: ff78708e0e18d31c0be7a2be295158ec 2024-09-30 23:24:12 - WARNING (c_adversary.py:90 verify) Ability referenced in adversary ef4d997c-a0d1-4067-9efa-87c58682db71 but not found: 6fdc9037290299164d52b65219d628ef 2024-09-30 23:24:12 - WARNING (c_adversary.py:90 verify) Ability referenced in adversary ef4d997c-a0d1-4067-9efa-87c58682db71 but not found: ae21aefd2d9933df45a4e55485fbc333 2024-09-30 23:24:12 - WARNING (c_adversary.py:90 verify) Ability referenced in adversary ef4d997c-a0d1-4067-9efa-87c58682db71 but not found: d8f4e4e10f4d6da1b174bb18cb859e6c 2024-09-30 23:24:12 - WARNING (c_adversary.py:90 verify) Ability referenced in adversary ef4d997c-a0d1-4067-9efa-87c58682db71 but not found: 86ab6d7ecc05b7dabc7699a9e6a0a173 2024-09-30 23:24:12 - WARNING (c_adversary.py:90 verify) Ability referenced in adversary ef4d997c-a0d1-4067-9efa-87c58682db71 but not found: 5c922d92f383656401d5633ca23db497 2024-09-30 23:24:12 - WARNING (c_adversary.py:95 verify) Objective referenced in adversary ef4d997c-a0d1-4067-9efa-87c58682db71 but not found: c495a9828-cab1-44dd-a0ca-66e58177d8c. Setting default objective. 2024-09-30 23:24:13 - WARNING (hook.py:60 build_docs) Unable to build docs:

Configuration error:

There is a programmable error in your configuration file:

Traceback (most recent call last): File "/usr/local/lib/python3.10/dist-packages/sphinx/config.py", line 356, in eval_config_file exec(code, namespace) # NoQA: S102 File "/home/caldera/Desktop/caldera/plugins/fieldmanual/sphinx-docs/conf.py", line 28, in import_plugin_docs(caldera_root_dir, sphinx_root_dir) File "/home/caldera/Desktop/caldera/plugins/fieldmanual/sphinx-docs/../../../plugins/fieldmanual/utils/plugin_docs.py", line 13, in import_plugin_docs create_index(sphinx_root_dir, doc_paths) File "/home/caldera/Desktop/caldera/plugins/fieldmanual/sphinx-docs/../../../plugins/fieldmanual/utils/plugin_docs.py", line 58, in create_index f.write(index_content) UnicodeEncodeError: 'latin-1' codec can't encode character '\u2122' in position 310: ordinal not in range(256)

Traceback (most recent call last): File "/usr/local/lib/python3.10/dist-packages/aiohttp/web_urldispatcher.py", line 561, in init raise ValueError("Not a directory")

ValueError: Not a directory

The above exception was the direct cause of the following exception:

Traceback (most recent call last): File "/home/caldera/Desktop/caldera/server.py", line 260, in run_tasks(services=app_svc.get_services(), run_vue_server=args.uiDevHost) File "/home/caldera/Desktop/caldera/server.py", line 78, in run_tasks loop.run_until_complete(RestApi(services).enable()) File "/usr/lib/python3.10/asyncio/base_events.py", line 649, in run_until_complete return future.result() File "/home/caldera/Desktop/caldera/app/api/rest_api.py", line 32, in enable self.app_svc.application.router.add_static('/assets', 'plugins/magma/dist/assets/', append_version=True) File "/usr/local/lib/python3.10/dist-packages/aiohttp/web_urldispatcher.py", line 1136, in add_static resource = StaticResource( File "/usr/local/lib/python3.10/dist-packages/aiohttp/web_urldispatcher.py", line 563, in init raise ValueError(f"No directory exists at '{directory}'") from error ValueError: No directory exists at '/home/caldera/Desktop/caldera/plugins/magma/dist/assets'


I tried to install it also in ubuntu 24.04 but same output.

The procedure that i followed was same as the documentation indicates

1) git clone https://github.com/mitre/caldera.git --recursive --branch 5.0.0 2) cd caldera/ and pip3 install -r requirements.txt 3) apt install npm nodejs 4) python3 server.py --insecure --build

Does anyone else have the same issue ? Thanks in advance,

github-actions[bot] commented 1 month ago

Looks like your first issue -- we aim to respond to issues as quickly as possible. In the meantime, check out our documentation here: http://caldera.readthedocs.io/

uruwhy commented 1 month ago

Assuming you're installing nodejs using the out-of-the-box APT repositories for that version of ubuntu, you're likely going to end up with version 12. You'll want as least version 16

Here's what I did on a local Ubuntu 22.04 VM to get version 18 of nodejs:

curl -sL https://deb.nodesource.com/setup_18.x | sudo -E bash -
sudo apt install -y nodejs

Then you can run nodejs -v to confirm the version. For me, I get v18.20.4

Then you can try building and running caldera as before

efanmak commented 1 month ago

thank you , i deployed a new vm and i installed the correct nodejs which now is $node -v v20.18.0

It seems now that server being built without the the former issues, But now i have the same issue as #3064 so i will follow the conversation there. Thanks a lot.