프로젝트 소개

DashLord는 여러 웹사이트와 API의 기술적 모범 사례를 추적하기 위한 대시보드입니다. 데이터 수집 및 보고서 생성은 GitHub Actions를 통해 완전히 자동화됩니다. ## 작동 방식 프로세스는 두 단계로 진행됩니다: 1. **데이터 수집**: 설정된 각 URL에 대해 분석 도구가 실행되며, 결과는 저장소에 버전 관리되는 JSON 파일로 생성됩니다. 2. **보고서 생성**: 결과가 집계 및 압축되어 정적 웹사이트로 제작되며, GitHub Pages를 통해 `gh-pages` 브랜치에 게시됩니다. ## 배포 자체 인스턴스를 배포하려면 DashLord 템플릿으로 새 저장소를 생성하고, `dashlord.yml` 파일을 편집하여 스캔할 URL을 정의한 다음, Actions 탭에서 `DashLord scans` 워크플로를 실행하십시오. 보고서는 `https://[organisation].github.io/[repository]` 주소에서 공개적으로 액세스할 수 있습니다. ## 설정 `dashlord.yml` 파일에서 다음 사항을 설정할 수 있습니다: - 대시보드의 제목, 설명 및 엔티티 - 제목, 태그, 관련 저장소 및 관련 Docker 이미지가 포함된 스캔 대상 URL 목록 - 각 분석 도구의 개별 활성화 또는 비활성화 ## 통합 도구 DashLord는 개별적으로 활성화 가능한 다양한 분석 도구를 기반으로 합니다: - **보안**: Nmap (포트 스캔), ZAP, Nuclei, TestSSL, Trivy (Docker 이미지 취약점), Dependabot (GitHub 보안 알림), CodeQL (코드 스캔 알림) - **성능 및 가용성**: Lighthouse, updown.io (API 키를 통한 가용성 모니터링) - **기술**: Wappalyzer (기술 탐지), Mozilla HTTP Observatory, 404 오류 탐지, 스크린샷 캡처 - **준수**: 서드파티 스크립트 탐지, /stats 페이지, 접근성 선언 스캔 빈도는 설정 가능하며(기본값 매주 일요일 자정), 워크플로를 수동으로 트리거할 수도 있습니다.