Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
aws-perimeter — VPC, IAM, S3, CloudTrail, 컨테이너(ECS/EKS) 및 AI 공격 탐지를 아우르는 102개 이상의 보안 검사를 수행하는 터미널 기반 AWS 보안 스캐너입니다. 위험한 IAM 권한, 노출된 비밀, 잘못 구성된 S3 버킷, 컨테이너 취약점, 새로운 LLMjacking 위협을 탐지합니다. | Kitploit
도구/GitHubGitHub/thirukguru/aws-perimeter
Cloud Infrastructure SecurityVulnerability ScannersContainer SecurityConfiguration AuditingPenetration TestingCloud SecurityDevSecOpsSecret DetectionThreat IntelligenceIdentity & Access Management (IAM)MisconfigurationAI Security
376개월 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
GitHubthirukguru/aws-perimeter

aws-perimeter

VPC, IAM, S3, CloudTrail, 컨테이너(ECS/EKS) 및 AI 공격 탐지를 아우르는 102개 이상의 보안 검사를 수행하는 터미널 기반 AWS 보안 스캐너입니다. 위험한 IAM 권한, 노출된 비밀, 잘못 구성된 S3 버킷, 컨테이너 취약점, 새로운 LLMjacking 위협을 탐지합니다.

저장소 보기

aws-perimeter

Go Version Go Reference Go Report Card License

터미널 기반 AWS 보안 스캐너로, VPC, IAM, S3, CloudTrail, 컨테이너(ECS/EKS), AI 공격 탐지 등 100개 이상의 보안 검사를 제공합니다. 위험한 IAM 권한, 노출된 비밀, 잘못 구성된 S3 버킷, 컨테이너 취약점, 새로운 LLMjacking 위협을 탐지합니다.

제품 개요: docs/CAPABILITIES_OVERVIEW.md

기능

VPC 보안

  • 보안 그룹 분석 (SSH/RDP 열림, 데이터베이스 포트)
  • 퍼블릭 노출 탐지 및 관리 포트 위험
  • 네트워크 ACL 분석 및 VPC Flow Log 감사
  • VPC 피어링 위험, 배스천 호스트 탐지
  • NAT 게이트웨이 상태 및 VPC 엔드포인트 적용 범위

IAM 보안

  • 권한 상승 탐지 (17가지 패턴)
  • 오래된 자격 증명 (90일 이상)
  • 교차 계정 신뢰 분석
  • MFA 적용 누락
  • 과도하게 허용된 정책 (*:*)
  • 역할 체이닝, 외부 ID, 권한 경계

S3 보안

  • 퍼블릭 버킷 탐지
  • 암호화 감사 및 위험한 버킷 정책
  • 퍼블릭 액세스 차단 상태
  • 민감한 파일/객체 발견 (.env, .git, 자격 증명)
  • S3 객체 내 텍스트 콘텐츠 기반 비밀 탐지

CloudTrail 및 로깅

  • 트레일 적용 범위 누락 및 멀티 리전 로깅
  • 로그 검증 상태
  • CloudWatch Logs 통합

비밀 탐지

  • Lambda 환경 변수 (10가지 비밀 패턴)
  • Lambda 배포 패키지 (ZIP) 스캔
  • EC2 사용자 데이터 스캔
  • 퍼블릭 S3 객체 콘텐츠 스캔
  • ECR 이미지 레이어 스캔 (내장된 자격 증명)
  • AWS 키, GitHub/Slack/Stripe 토큰

컨테이너 보안 (신규)

ECS 보안 (10가지 검사)

  • 권한 있는 컨테이너
  • 환경 변수 내 비밀
  • 퍼블릭 IP 노출
  • 호스트 네트워크 모드
  • 비 ECR 이미지
  • 쓰기 가능한 루트 파일시스템
  • 위험한 Linux 역량
  • ECS Exec 활성화
  • Container Insights 상태
  • 관리자 작업 역할

EKS 보안 (12가지 검사)

  • 퍼블릭 엔드포인트 액세스
  • 프라이빗 엔드포인트 비활성화
  • 컨트롤 플레인 로깅
  • 비밀 암호화
  • Kubernetes 버전
  • IRSA용 OIDC 제공자
  • 레거시 인증 모드
  • 퍼블릭 서브넷 노드
  • 제한 없는 SSH 액세스
  • 관리자 수준 노드 IAM 역할
  • AMI 유형 (Bottlerocket 선호)

AI 공격 탐지 (신규)

2025년 2월 위협 인텔리전스 기반: 8분 AWS 침해

  • GPU 인스턴스 모니터링: p2/p3/p4/p5, g3/g4/g5, inf1/inf2, trn1 인스턴스 탐지
  • GPU 퍼블릭 노출: 퍼블릭 IP를 가진 GPU 인스턴스
  • GPU IMDSv1 위험: 자격 증명 탈취에 취약한 GPU 인스턴스
  • Bedrock 남용: 고용량 프로비저닝된 처리량 탐지
  • 사용자 정의 모델: 승인되지 않은 Bedrock 모델 학습
  • Bedrock 로깅: 누락된 모델 호출 로깅
  • 빠른 프로비저닝: EC2 API 스로틀 탐지 (공격 패턴)

보안 검사 요약

카테고리개수
핵심 (IAM, VPC, S3, CloudTrail, 비밀)38
확장 (Lambda, ELB, Route53, Inspector 등)

중요 보안 검사

사전 요구 사항

1. AWS CLI 설치

root@kitploit:~
# macOS
brew install awscli

# Linux
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip && sudo ./aws/install

2. AWS 자격 증명 구성

root@kitploit:~
aws configure
# 또는 명명된 프로필 사용
aws configure --profile myprofile

3. 필요한 IAM 권한

AWS 자격 증명은 스캔 대상 서비스에 대한 읽기 전용 액세스가 필요합니다. AWS 관리형 정책 ReadOnlyAccess로 충분하며, 아래 필수 권한을 참조하세요.

참고: aws-perimeter는 읽기 작업만 수행하며 AWS 리소스를 절대 수정하지 않습니다.

설치

빠른 설치 (macOS/Linux)

root@kitploit:~
curl -sSfL https://raw.githubusercontent.com/thirukguru/aws-perimeter/main/install.sh | sh

Go 사용

root@kitploit:~
go install github.com/thirukguru/aws-perimeter@latest

사용법

root@kitploit:~
aws-perimeter                          # 전체 보안 검사 실행
aws-perimeter --output json            # JSON 출력
aws-perimeter --profile prod           # 특정 AWS 프로필
aws-perimeter --region us-west-2       # 특정 리전
aws-perimeter --regions us-east-1,us-west-2            # 멀티 리전 스캔
aws-perimeter --regions us-east-1,us-west-2 --max-parallel 4  # 제어된 동시성으로 멀티 리전 스캔
aws-perimeter --regions us-east-1,us-west-2 --max-parallel 4 --best-effort  # 하나의 리전이라도 성공하면 종료 성공
aws-perimeter --rules                   # RULES.md를 stdout으로 출력 (Markdown)
aws-perimeter --capabilities            # 기능 개요를 stdout으로 출력 (Markdown)
aws-perimeter --all-regions                            # 활성화된 모든 리전 스캔
aws-perimeter --org-scan --org-role-name OrganizationAccountAccessRole  # 멀티 계정 조직 스캔
aws-perimeter --org-scan --max-parallel 5              # 조직+리전 팬아웃 동시성
aws-perimeter --output html --output-file report.html  # HTML 보고서 생성
aws-perimeter --store --profile prod --region us-west-2 # 실행 + 스캔 결과 저장
aws-perimeter --trends --trend-days 30 --account-id 123456789012  # 과거 추세 테이블 표시
aws-perimeter history list --db-path ~/.aws-perimeter/history.db
aws-perimeter dashboard --port 8080

팬아웃 모드 (--regions, --all-regions, --org-scan)에서 --output html --output-file ...과 함께 사용하면, aws-perimeter는 리전/계정 및 타임스탬프 접미사가 포함된 각 스캔 단위당 하나의 보고서를 작성합니다 (예: security-report-us-east-1-20260210-213045.html 또는 security-report-123456789012-us-east-1-20260210-213045.html). HTML 모드에서는 터미널 테이블 출력이 억제되고 간결한 요약 줄만 출력됩니다.

JSON 자동화 모드

--output json을 사용하면 aws-perimeter는 배너/스피너 노이즈 없이 단일 유효한 JSON 문서를 출력하므로 파이프라인에서 안전하게 사용할 수 있습니다.

root@kitploit:~
aws-perimeter --profile prod --region us-west-2 --output json | jq .

# 멀티 리전 JSON은 집계된 최상위 JSON 문서 하나를 출력합니다:
aws-perimeter --profile prod --regions us-east-1,us-west-2 --output json | jq .

# stdout 리디렉션을 통해 문서 내보내기
aws-perimeter --rules > rules.md
aws-perimeter --capabilities > capabilities.md

멀티 리전 JSON 페이로드 포함:

  • summary (total_regions, success, failed, skipped)
  • results (리전별 통합 스캔 페이로드)
  • failures (리전 스캔 실패 시 리전 + 오류 세부 정보)

팬아웃 요약 출력

비 JSON 출력 모드의 멀티 리전 및 조직 스캔의 경우, aws-perimeter는 실행 종료 시 통합 요약을 출력합니다:

  • 스캔 단위별 행: account_id, account_name, region, status, duration, error.
  • 집계 합계 (TOTAL, SUCCESS, FAILED, SKIPPED).
  • 조직 스캔의 계정별 롤업 테이블 (계정당 성공/실패/생략 개수).

--max-parallel과 --best-effort

  • --max-parallel은 팬아웃 모드(--regions, --all-regions, --org-scan)에서 동시에 실행되는 리전/계정 스캔 단위 수를 제어합니다.
  • 값이 높을수록 스캔 속도가 빨라지지만 API 압력이 증가하고 스로틀/네트워크 경합 가능성이 높아집니다.
  • 권장 시작 값: --max-parallel 3 또는 --max-parallel 4.
  • --best-effort는 멀티 리전 스캔에 적용됩니다: 하나의 리전이라도 성공하면 명령이 성공(0)으로 종료되며, 일부 리전이 실패해도 마찬가지입니다.
  • --best-effort 없이 실행하면 실패한 리전이 있으면 0이 아닌 종료 코드가 반환됩니다.
  • JSON 멀티 리전 출력에서 실패한 리전은 정확한 오류와 함께 failures 아래에 표시됩니다.

플래그

필수 AWS 권한

다음 권한은 전체 기능 적용 범위(멀티 리전 및 조직 스캔 포함)에 필요합니다:

root@kitploit:~
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "sts:GetCallerIdentity",
        "sts:AssumeRole",
        
        "organizations:DescribeOrganization",
        "organizations:ListAccounts",
        
        "ec2:Describe*",
        "ec2:GetEbsEncryptionByDefault",
        
        "iam:List*",
        "iam:Get*",
        "iam:GenerateCredentialReport",
        
        "s3:ListAllMyBuckets",
        "s3:GetBucket*",
        "s3:GetEncryptionConfiguration",
        
        "cloudtrail:DescribeTrails",
        "cloudtrail:GetTrailStatus",
        "cloudtrail:LookupEvents",
        
        "lambda:ListFunctions",
        "lambda:GetFunctionConfiguration",
        "lambda:GetFunction",
        
        "ecr:DescribeRepositories",
        "ecr:DescribeImages",
        "ecr:BatchGetImage",
        "ecr:GetDownloadUrlForLayer",
        
        "ecs:ListClusters",
        "ecs:DescribeClusters",
        "ecs:ListServices",
        "ecs:DescribeServices",
        "ecs:DescribeTaskDefinition",
        
        "eks:ListClusters",
        "eks:DescribeCluster",
        "eks:ListNodegroups",
        "eks:DescribeNodegroup",
        
        "bedrock:ListProvisionedModelThroughputs",
        "bedrock:ListCustomModels",
        "bedrock:GetModelInvocationLoggingConfiguration",
        
        "guardduty:ListDetectors",
        "guardduty:GetDetector",
        "guardduty:ListFindings",
        "guardduty:GetFindings",
        
        "securityhub:DescribeHub",
        "securityhub:GetFindings",
        
        "config:Describe*",
        
        "kms:ListKeys",
        "kms:DescribeKey",
        "kms:GetKeyRotationStatus",
        "kms:Decrypt",
        
        "rds:DescribeDB*",
        
        "dynamodb:ListTables",
        "dynamodb:DescribeTable",
        "dynamodb:DescribeContinuousBackups",
        
        "secretsmanager:ListSecrets",
        
        "elasticloadbalancing:Describe*",
        
        "backup:List*",
        
        "apigateway:GET",
        
        "cloudfront:List*",
        "cloudfront:Get*",
        
        "cloudwatch:GetMetricStatistics",
        
        "sns:ListTopics",
        "sqs:ListQueues"
      ],
      "Resource": "*"
    }
  ]
}

kms:Decrypt는 암호화된 객체/패키지(예: SSE-KMS S3 객체 읽기)를 스캔할 때만 필요합니다. 프로덕션에서는 필요한 KMS 키로 범위를 제한하세요.

--org-scan의 경우, 관리 주체가 멤버 계정 역할(기본값: OrganizationAccountAccessRole)을 수임할 수 있어야 합니다. 예:

root@kitploit:~
{
  "Effect": "Allow",
  "Action": "sts:AssumeRole",
  "Resource": "arn:aws:iam::*:role/OrganizationAccountAccessRole"
}

멤버 계정 역할 신뢰 정책은 또한 스캐너 주체(사용자/역할)가 이를 수임할 수 있도록 허용해야 하며 (--external-id를 사용하는 경우 sts:ExternalId 조건 포함).

팁: 빠른 시작을 위해 IAM 사용자/역할에 AWS 관리형 정책 arn:aws:iam::aws:policy/ReadOnlyAccess를 연결하세요.

로드맵

3단계: 고급 위협 탐지

  • STRIDE 위협 모델링
  • 공격 경로 분석
  • 데이터 유출 탐지
  • 암호화폐 채굴 지표

4단계: 엔터프라이즈 기능

  • 멀티 계정 Organizations 지원
  • CI/CD 통합
  • SIEM 내보내기 (Splunk, ELK)
  • 과거 추세

요약

라이선스

Apache License 2.0

도구 다운로드
35
컨테이너 보안 (ECS + EKS)22
AI 공격 탐지7
합계102
검사심각도설명
권한 상승🔴 중요사용자가 관리자로 권한 상승 가능
관리자 액세스 (:)🔴 중요전체 AWS 액세스 부여됨
노출된 비밀🔴 중요Lambda/EC2에 API 키/토큰 존재
퍼블릭 S3 버킷🔴 중요버킷이 공개적으로 접근 가능
CloudTrail 없음🔴 중요감사 로깅 없음
SSH/RDP 열림🔴 중요인터넷에 포트 22/3389 열림
권한 있는 컨테이너🔴 중요ECS 컨테이너에 루트 액세스
GPU IMDSv1🔴 중요GPU 인스턴스 자격 증명 취약
교차 계정 신뢰🟠 높음외부 계정이 역할을 수임할 수 있음
EKS 퍼블릭 엔드포인트🟠 높음Kubernetes API가 공개적으로 접근 가능
Bedrock 로깅 없음🟠 높음AI 모델 사용이 감사되지 않음
플래그약자설명
--profile-p사용할 AWS 프로필
--region-rAWS 리전
--regions쉼표로 구분된 리전 목록
--all-regions활성화된 모든 리전 스캔
--org-scan모든 활성 AWS Organization 계정 스캔
--org-role-name멤버 계정에서 수임할 IAM 역할 이름
--external-id교차 계정 수임 역할을 위한 외부 ID
--output-o출력 형식: table, json, 또는 html
--rules규칙 카탈로그 Markdown을 출력하고 종료
--capabilities기능 Markdown을 출력하고 종료
--output-file-f출력 파일 (html에 필요)
--storeSQLite에 스캔 결과 저장
--db-path사용자 지정 SQLite DB 경로
--trends과거 추세 표시
--trend-days추세 기간 (일) (기본값 30)
--compare최근 두 스캔 비교
--export-json추세 JSON 파일 내보내기
--export-csv추세 CSV 파일 내보내기
--account-id추세/이력을 위한 계정 필터
--max-parallel최대 동시 리전/계정 스캔 단위 수
--best-effort멀티 리전 스캔에서 하나의 리전이라도 성공하면 성공 반환
--dry-run수정 미리보기 모드
--remediate지원되는 수정 적용
--dashboard-port대시보드 포트 (루트 플래그; dashboard 하위 명령은 --port 사용)
--version-v버전 정보
단계상태규칙
1단계✅ 완료73
2단계🔲 진행 중+20
2.5단계🆕 AI 공격 탐지+13
3단계🔲 계획됨+15
4단계🔲 계획됨기능