티스토리 뷰

728x90
반응형

설치방법

제약사항

  • pip: 9.0.2 or greater
  • setuptools: 36.2.0 or greater

안전하게 설치하는 방법으로는 virtualenv 를 사용해서 pip 설치하는 것이니 참고하기!

pip install awscli

 

설정방법

pip로 awscli 를 설치했다면 이제 awscli 를 바로 실행할 수 있음!

$ aws configure
AWS Access Key ID: MYACCESSKEY
AWS Secret Access Key: MYSECRETKEY
Default region name [us-west-2]: us-west-2
Default output format [None]: json

AWS 로부터 발급받은 Access Key 랑 Secret Key를 입력해주고, 필요하다면 region name 과 output format을 지정해주자!

 

기본 명령어

$ aws <command> <subcommand> [options and parameters]
$ aws help
$ aws <command> help
$ aws <command> <subcommand> help

명령어 사용법은 위와 같이 확인할 수 있고, 자주 사용하는 명령어는 아래와 같음

# 버킷 목록 확인
$ aws s3 ls

# sync 는 디렉터리 경로 째로 복사
aws s3 sync s3://BucketName/ C://Local/

# cp 는 파일 하나 복사
aws s3 cp s3://BucketName/test.txt C://Local/test.txt

 

개인적인 생각

최근에 취약점 분석하던 어떤 타겟에 RCE 취약점이 존재해서, 쉘 따서 들어가서 파일 탐색하다가 우연히 AWS Credential 을 찾을 수 있었음. Access Key 랑 Secret Key 가 떡하니 노출되어 있길래, 그걸 가지고 위 aws-cli 를 이용해서 버킷에 접근했더니, 또 떡하니 소스코드, DB, 파일업로드, 사용자계정 등의 백업이 많이도 올려져있었음. 낼름 먹음. 끝... 은 아니고, 무튼 AWS 에서도 왜 그렇게 Secret Key 가 노출되면 안되는지에 대해서 경고하고 있던데 왜그런지 알게 해주는 대목이었음. 결론은 절대 노출되지 않도록 주의하도록 하자!!

 

참고 링크

https://github.com/aws/aws-cli

 

GitHub - aws/aws-cli: Universal Command Line Interface for Amazon Web Services

Universal Command Line Interface for Amazon Web Services - GitHub - aws/aws-cli: Universal Command Line Interface for Amazon Web Services

github.com

https://docs.aws.amazon.com/cli/latest/reference/

 

aws — AWS CLI 1.27.83 Command Reference

 

docs.aws.amazon.com

728x90
반응형
댓글