
그래프 기반 AWS 보안 분석 도구로, 클라우드 구성을 덤프하고, 잘못된 구성을 탐지하며, 확장 가능한 YAML 규칙을 사용하는 Neo4j 디지털 트윈을 통해 공격 경로를 매핑합니다.
nuvola (소문자 n)는 사전 정의되고 확장 가능하며 사용자 정의가 가능한 규칙을 간단한 Yaml 구문으로 생성하여 AWS 환경 구성 및 서비스를 덤프하고 자동 및 수동 보안 분석을 수행하는 도구입니다.
이 프로젝트의 기본 아이디어는 클라우드 플랫폼의 추상화된 디지털 트윈을 만드는 것입니다. 구체적인 예를 들어, nuvola는 Active Directory 분석에 사용되는 BloodHound의 특성을 반영하지만, 클라우드 환경(현재는 AWS만 해당)에서 사용됩니다.
그래프 데이터베이스를 사용하면 다양한 혁신적인 공격 경로를 찾을 가능성이 높아지며, 오프라인, 중앙 집중식 및 경량의 디지털 트윈으로 사용할 수 있습니다.
docker-compose 설치awscli와 함께 사용하도록 구성된 AWS 계정으로, 클라우드 리소스에 대한 전체 액세스 권한이 있어야 하며, ReadOnly 모드(정책 arn:aws:iam::aws:policy/ReadOnlyAccess면 충분)가 더 좋습니다.git clone --depth=1 https://github.com/primait/nuvola.git; cd nuvola
.env 파일을 생성하고, 필요한 경우 편집하여 DB 사용자 이름/비밀번호/URL을 설정합니다.cp .env_example .env;
저사양 RAM 장치에서 도구를 실행하는 경우 Neo4j에 할당된 메모리 크기를 편집해야 할 수 있습니다.
make start-containers
make build
./nuvola dump --aws-profile default_RO --output-dir ~/DumpDumpFolder --output-format zip
./nuvola assess --import ~/DumpDumpFolder/nuvola-default_RO_20220901.zip
./nuvola assess

.env_example을 사용하는 경우 NEO4J_server_memory_* neo4j 메모리 설정이 너무 커서 호스트 시스템의 메모리 부족으로 도커 컨테이너가 충돌할 수 있습니다. NEO4J_server_memory_* 줄을 제거하면 neo4j가 사용 가능한 시스템 리소스를 기준으로 해당 값을 계산합니다(참고).
nuvola 및 해당 데이터베이스 스키마를 시작하려면 nuvola Wiki를 확인하세요.
Prima Assicurazioni로 데이터가 전송되거나 공유되지 않습니다.
nuvola는 그래프 이론을 사용하여 클라우드 환경에서 가능한 공격 경로와 보안 구성 오류를 밝혀냅니다.
이 프로그램은 자유 소프트웨어입니다. 자유 소프트웨어 재단이 발표한 GNU 일반 공중 사용 허가서(GNU General Public License) 버전 3 또는 (선택 사항으로) 이후 버전의 조건에 따라 재배포 및/또는 수정할 수 있습니다.
이 프로그램은 유용할 것이라는 희망으로 배포되지만, 어떠한 보증도 제공하지 않습니다. 상품성 또는 특정 목적에의 적합성에 대한 묵시적 보증조차도 제공하지 않습니다. 자세한 내용은 GNU 일반 공중 사용 허가서를 참조하세요.
이 저장소 및 프로그램과 함께 GNU 일반 공중 사용 허가서의 사본을 받았을 것입니다. 그렇지 않은 경우 http://www.gnu.org/licenses/에서 확인하세요.