AWS 초보의 도전 : 패키지 저장소의 패키지
- 김수현(BOB13기, 화햇스쿨 2기)
- code Artifcat에 패키지 방화벽 API 연결
공급망 공격(supply chain attack)
- 원천 레포를 공격
- Typosquatting vs Dependency COnfusion attack
- 오타를 노림(Typosquatting)
- 버전 지정을 하지않으면 최신 버전 가지옴
- 악성 코드 개발자가 최신값으로 올려놓으면, 버전 지정하면 악성 라이브러리 다운받아짐
- npm - 악성 스크립트 말아넣을 수 있음(rm -rf *) 같은
- 악성 라이브러리 체크 로그
공급망 디펜더
- 공급망 공격 차단하기 위해
- 평판으로 파악
- 라이브러리 이름 유사도, 블랙 리스트 관리, 평판조회(깃헙스타, 다운로드, release 개수)
Code Artifact
- 제한된 업스트림
- code artifact - request module x → 외부에서 가져옴
- 제한 된 업스트림이 있음..
- 클라우드에서 code artifcate → upstream으로 pypi-store로 설정하면 가져오는 구조
- Nexus Proxy에서는 자체적 프록시 설정 가능
- 외부 요청 가능
- 외부 API 요청가능
- supply chain defender → 평판조회 → 개발자한테 내려주무
- secure-pypi
- 개발자들이 요청하는 code artifact
- 외부연결x 업스트림 x
- package-install → 요청시 pypi-store → 연결 가져올 수 있음
- Event Bridge 규칙 - 404 error → step function trigger → 평판 조회 후 안전하지 않으면 차단 후 슬랙 알림
- 평판 조회 후 안전하면, 외부에서 다운로드 한 후, Secure-pypi에 업로드
- 그러면 공급망 공격이면 아프겠군?
- step-function
- 서버 x
- 블록코딩(노코드)
- 시각적인 워크플로 설계
- Dynamo DB update
- lambda trigger- > response를 받아올 수 있음
- DB 업데이트 → status 업데이트
- 평판 조회 risk가 green이면 굵기가 됨
- Run command을 트리거 시키기
- package-install 가진 상태로..