Mellivora
Mellivora는 PHP로 작성된 CTF 엔진입니다. 빠른 개요를 원하시나요? imgur의 스크린샷 갤러리를 확인하세요. 빠른 시작을 원하시나요? Docker로 Mellivora 사용하기를 확인하세요.
기능
- 임의의 카테고리와 챌린지.
- 선택적 다중 팀 유형이 있는 점수판.
- 수동 또는 자동 자유 텍스트 제출 마킹.
- 챌린지 힌트.
- 팀 진행 페이지.
- 챌린지 개요 페이지.
- 카테고리 및 챌린지 노출을 특정 시간으로 제한.
- 부모 챌린지 해결 시 챌린지 공개 (모든 팀 기준).
- 이메일 정규식을 기반으로 한 선택적 가입 제한.
- 로컬 또는 Amazon S3 챌린지 파일 업로드.
- 파일에 선택적 자동 MD5 추가.
- 대회 개요가 포함된 관리 콘솔.
- 첫 페이지 뉴스 생성/편집.
- 임의의 메뉴 항목 및 내부 페이지.
- 선택적 총 횟수 및 시간 기반 제출 제한.
- IP 상관 관계를 통한 사용자 관리.
- 예외 포착을 위한 내부 로그.
- reCAPTCHA 지원.
- 가입 시 사용자 정의 또는 자동 생성 비밀번호.
- 사용자/이메일/IP 검색.
- 구성 가능한 캐싱.
- 캐싱 프록시 (예: Cloudflare) 인식 (선택적 x-forwarded-for 신뢰).
- 정적 파일을 위한 선택적 별도 도메인.
- Segment 분석 지원.
- SMTP 이메일 지원. 대량 또는 단일 이메일 작성.
- TOTP 이중 인증 지원.
- CTF Time 호환 JSON 점수판.
- 셀프 서비스 및 관리자 비밀번호 재설정.
- 그 외에도 ...
확장
Mellivora는 Amazon Elastic Beanstalk에서 잘 확장되며 S3 파일 스토리지를 지원합니다.
성능
Mellivora는 가볍습니다. 그리고 빠릅니다. 매우 빠릅니다. EC2 마이크로 인스턴스에서 대규모 대회를 실행하고 싶으신가요? 문제 없습니다!? 도움이 안 될 수도 있는 벤치마크를 보려면 benchmarks.md를 확인하세요.
설치
개발

PR은 기쁘게 받아들입니다. Codeception을 사용하여 테스트하세요. 테스트에 대한 자세한 내용은 여기를 읽어보세요.
라이선스
이 소프트웨어는 GNU General Public License v3 (GPL-3)에 따라 라이선스가 부여됩니다. "include/thirdparty/" 디렉토리에는 타사 코드가 포함되어 있습니다. 소프트웨어 사용 가능성 및 배포에 대한 정보는 해당 LICENSE 파일을 읽어주세요.