Кальдера через SSL

Я пытаюсь настроить кальдеру через https, но у меня возникли проблемы. Я выполнил инструкции, приведенные в документации (https://caldera.readthedocs.io/en/latest/Plugin-library.html), но вот что у меня есть:

      ┌──(root㉿kali)-[/home/kali/Desktop/caldera]
└─# cd plugins/ssl
                                                                                      
┌──(root㉿kali)-[/home/…/Desktop/caldera/plugins/ssl]
└─# openssl req -x509 -newkey rsa:4096  -out conf/certificate.pem -keyout conf/certificate.pem -nodes

            (Key generation and questions....)
                                                                                      
┌──(root㉿kali)-[/home/…/Desktop/caldera/plugins/ssl]
└─# cp templates/haproxy.conf ./conf  
                                                                                      
┌──(root㉿kali)-[/home/…/Desktop/caldera/plugins/ssl]
└─# nano conf/haproxy.conf 
                                                                                                                                                                       
┌──(root㉿kali)-[/home/…/Desktop/caldera/plugins/ssl]
└─# cd ../..                           
                                                                                                                                                                  
┌──(root㉿kali)-[/home/kali/Desktop/caldera]
└─# python3 server.py --fresh --insecure -P ssl
2023-08-08 13:39:22 - WARNING (server.py:118 <module>) --insecure flag set. Caldera will use the default.yml config file.
2023-08-08 13:39:22 - INFO  (server.py:125 <module>) Using main config from conf/default.yml
2023-08-08 13:39:23 - INFO  (server.py:151 <module>) Fresh startup: resetting server data. See data/backup directory for data backups.
2023-08-08 13:39:23 - ERROR (app_svc.py:173 validate_requirement) go does not meet the minimum version of 1.11
2023-08-08 13:39:23 - INFO  (contact_gist.py:70 start) Invalid Github Gist personal API token provided. Gist C2 contact will not be started.
2023-08-08 13:39:23 - INFO  (tunnel_ssh.py:26 start) Generating temporary SSH private key. Was unable to use provided SSH private key
2023-08-08 13:39:23 - INFO  (app_svc.py:116 load) Enabled plugin: ssl
2023-08-08 13:39:23 - INFO  (logging.py:92 log) Creating SSH listener on 0.0.0.0, port 8022
2023-08-08 13:39:23 - INFO  (server.py:741 start) serving on 0.0.0.0:2222
2023-08-08 13:39:23 - INFO  (server.py:73 run_tasks) All systems ready.
2023-08-08 13:39:28 - ERROR (base_events.py:1771 default_exception_handler) Task exception was never retrieved
future: <Task finished name='Task-29' coro=<_check_using_default_cert() done, defined at /home/kali/Desktop/caldera/plugins/ssl/hook.py:24> exception=ConnectionRefusedError(111, 'Connection refused')>
Traceback (most recent call last):
  File "/home/kali/Desktop/caldera/plugins/ssl/hook.py", line 26, in _check_using_default_cert
    server_cert = get_server_certificate(('127.0.0.1', 8443))
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/ssl.py", line 1527, in get_server_certificate
    with create_connection(addr, timeout=timeout) as sock:
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/socket.py", line 851, in create_connection
    raise exceptions[0]
  File "/usr/lib/python3.11/socket.py", line 836, in create_connection
    sock.connect(sa)
ConnectionRefusedError: [Errno 111] Connection refused

Файлы, которые я изменил, следующие:

плагины/ssl/conf/haproxy.conf

      bind *:8443 ssl crt plugins/ssl/conf/insecure_certificate.pem

к

      bind *:8443 ssl crt plugins/ssl/conf/certificate.pem

conf/default.yml (часть плагина)

      plugins:
- access
- atomic
- compass
- debrief
- fieldmanual
- manx
- response
- sandcat
- stockpile
- training

к

      plugins:
- access
- atomic
- compass
- debrief
- fieldmanual
- manx
- response
- sandcat
- stockpile
- training
- ssl

И те же изменения в local.yml

Почему это дает мне ошибку, показанную выше? Сертификат существует, поэтому я не понимаю, почему у меня возникают проблемы. Это похоже на то, что сервер https никогда не запускается, порт 8443 никогда не открывается, и он пытается получить сертификат, но порт 8443 закрыт.

0 ответов

Другие вопросы по тегам