우분투 20.04 LTS에서 BeEF를 서비스로 실행

우분투 20.04 LTS에서 BeEF를 서비스로 실행

최근 침투 테스트 작업을 위해 BeEF를 사용하는 방법을 배우고 있으며, 클라우드에 서버를 설정하고 그 안에 BeEF를 설치하여 서비스처럼 백그라운드에서 실행하려고 하는데 할 수 없습니다. 일어나다.

root@BeEF:~# sudo systemctl status beef
● beef.service - BeEF Framework
     Loaded: loaded (/etc/systemd/system/beef.service; enabled; vendor preset: enabled)
     Active: failed (Result: exit-code) since Fri 2024-02-16 03:50:53 UTC; 33s ago
    Process: 88622 ExecStart=/usr/local/rvm/rubies/ruby-3.0.0/bin/ruby /opt/beef/beef (code=exited, status=1/FAILURE)
   Main PID: 88622 (code=exited, status=1/FAILURE)

Feb 16 03:50:53 BeEF systemd[1]: Started BeEF Framework.
Feb 16 03:50:53 BeEF ruby[88622]: <internal:/usr/local/rvm/rubies/ruby-3.0.0/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require': cannot load such file -- m>
Feb 16 03:50:53 BeEF ruby[88622]:         from <internal:/usr/local/rvm/rubies/ruby-3.0.0/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
Feb 16 03:50:53 BeEF ruby[88622]:         from /opt/beef/core/loader.rb:14:in `<top (required)>'
Feb 16 03:50:53 BeEF ruby[88622]:         from <internal:/usr/local/rvm/rubies/ruby-3.0.0/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
Feb 16 03:50:53 BeEF ruby[88622]:         from <internal:/usr/local/rvm/rubies/ruby-3.0.0/lib/ruby/3.0.0/rubygems/core_ext/kernel_require.rb>:85:in `require'
Feb 16 03:50:53 BeEF ruby[88622]:         from /opt/beef/beef:45:in `<main>'
Feb 16 03:50:53 BeEF systemd[1]: beef.service: Main process exited, code=exited, status=1/FAILURE
Feb 16 03:50:53 BeEF systemd[1]: beef.service: Failed with result 'exit-code'.

다른 문제가 발생하여 몇 시간 후에 직접 해결했습니다. 첫 번째는 내 Ruby가 오래되었지만 방금 설치했고 ruby-3.0.0쇠고기가 제대로 작동한다는 것입니다(실행할 때). 서비스 파일 만들기를 시작한 후 백그라운드에서 실행하려고 하면 작동하지 않습니다. 내 Ruby가 /usr/bin/ruby다른 디렉토리에 설치되지 않은 것을 발견했습니다 . (그렇다고 /usr/local/rvm/rubies/ruby-3.0.0/bin/ruby생각했습니다 rvm. 그런데 저는 Ruby를 사용한 적이 없어서 그것에 대해 아무것도 모릅니다.) 그런 다음 오류 메시지가 변경되었으며 이것이 이전에 발생한 오류 메시지입니다. 나는 한동안 작동하도록 노력해 왔지만 방법을 모르겠습니다. 서비스가 작동하는 데 필요한 모든 파일을 로드하고 있는 것 같지는 않지만, 서비스 파일에 어떤 파일을 로드해야 하는지 모르겠습니다.

이것이 내가 한 일입니다:

# beef.service

[Unit]
Description=BeEF Framework
After=network.target

[Service]
Type=simple
Environment="PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
ExecStart=/usr/local/rvm/rubies/ruby-3.0.0/bin/ruby /opt/beef/beef

[Install]
WantedBy=multi-user.target

참고로, 어떤 이유로든 중요하다면 이미 Beef가 설치되어 있으므로(저장소 복제) /opt앱을 호출하고 싶을 때 /opt/beef/beef.

누구든지 이 문제를 해결하는 방법을 알고 있거나 이 문제를 해결하는 방법에 대한 아이디어가 있으면 매우 기쁠 것입니다. 감사합니다!

답변1

BeFF가 시스템에 올바르게 설치되지 않았습니다.

BeFF에는 자체 systemd 서비스가 제공됩니다 beef-xss.service. systemd 파일 서비스는 다음 위치에 있어야 합니다./usr/lib/systemd/system/beef-xss.service

서비스 상태 확인:

beef-xss
systemctl status beef-xss

gitlab에서 쇠고기 보기

관련 정보