
도메인 목록을 가져와 URL을 크롤링하고 엔드포인트, 비밀, API 키, 파일 확장자, 토큰 등을 스캔합니다.

도메인 목록을 입력하면 URL을 크롤링하고 엔드포인트, 시크릿, API 키, 파일 확장자, 토큰 등을 스캔합니다
Coded with 💙 by edoardottt
Share on Twitter!
설치 • 사용법 • 시작하기 • 변경 내역 • 기여 • 라이선스
brew install cariddi
sudo snap install cariddi
go install -v github.com/edoardottt/cariddi/cmd/cariddi@latest
pacman -Syu cariddi
nix-shell -p cariddi
Go (>=1.24.0)가 필요합니다
git clone https://github.com/edoardottt/cariddi.git
cd cariddi
go get ./...
make linux # (to install)
make unlinux # (to uninstall)
한 줄 명령: git clone https://github.com/edoardottt/cariddi.git && cd cariddi && go get ./... && make linux
실행 파일은 cariddi 폴더에서만 작동한다는 점에 유의하세요.
git clone https://github.com/edoardottt/cariddi.git
cd cariddi
go get ./...
.\make.bat windows # (to install)
.\make.bat unwindows # (to uninstall)
단일 대상만 스캔하려면 다음을 사용할 수 있습니다
echo https://edoardottt.com/ | cariddi
여러 대상을 사용하려면 대신 파일을 사용할 수 있습니다. 예를 들어 urls.txt에 다음 내용을 넣습니다:
https://edoardottt.com/
http://testphp.vulnweb.com/
Windows의 경우:
powershell.exe -Command "cat urls.txt | .\cariddi.exe"를 사용하세요cat urls.txt | cariddi.exe를 사용하세요cariddi -version (버전 출력)cariddi -h (도움말 출력)cariddi -examples (예제 출력)cat urls.txt | cariddi -intensive (서브도메인, 즉 *.target.com도 검색하며 크롤링)cat urls.txt | cariddi -s (시크릿 탐색)cat urls.txt | cariddi -err (웹사이트의 오류 탐색)cat urls.txt | cariddi -e (유용한 엔드포인트 탐색)cat urls.txt | cariddi -info (웹사이트의 유용한 정보 탐색)cat urls.txt | cariddi -ext 2 (유용한 파일 탐색 (7단계 중 2단계))cat urls.txt | cariddi -e -ef endpoints_file (사용자 정의 엔드포인트 탐색)cat urls.txt | cariddi -s -sf secrets_file (사용자 정의 시크릿 탐색)cat urls.txt | cariddi -ie pdf,png,jpg (스캔 중 이 확장자 무시)기본값: png, svg, jpg, jpeg, bmp, jfif, gif, webp, woff, woff2, ttf, tiff, tif, mp4, webm, mkv, avi, mov, flv, wmv, mp3, wav, flac, ogg, m4a, aac, ico, cur, eot, otf는 시크릿, 정보 및 오류 스캔 중 무시됩니다.
cat urls.txt | cariddi -proxy http://127.0.0.1:8080 (프록시 설정, http 및 socks5 지원)cat urls.txt | cariddi -d 2 (페이지 크롤링 사이에 2초 지연)cat urls.txt | cariddi -c 200 (동시성 수준을 200으로 설정)cat urls.txt | cariddi -i forum,blog,community,open (이 단어를 포함하는 URL 무시)cat urls.txt | cariddi -it ignore_file (입력 파일의 줄 중 하나 이상을 포함하는 URL 무시)cat urls.txt | cariddi -cache (.cariddi_cache 폴더를 캐시로 사용)cat urls.txt | cariddi -t 5 (요청 타임아웃 설정)cat urls.txt | cariddi -headers "Cookie: auth=admin;type=2;; X-Custom: customHeader"cat urls.txt | cariddi -headersfile headers.txt (외부 파일에서 사용자 정의 헤더 읽기)cat urls.txt | cariddi -ua "Custom User Agent" (사용자 정의 User Agent 사용)cat urls.txt | cariddi -rua (매 요청마다 무작위 브라우저 user agent 사용)cat urls.txt | cariddi -plain (결과만 출력)cat urls.txt | cariddi -ot target_name (결과를 txt 파일로 저장)cat urls.txt | cariddi -oh target_name (결과를 html 파일로 저장)cat urls.txt | cariddi -json (출력을 JSON으로 stdout에 출력)cat urls.txt | cariddi -sr (HTTP 응답 저장)cat urls.txt | cariddi -debug (크롤링 중 디버그 정보 출력)cat urls.txt | cariddi -md 3 (최대 3단계 깊이)cariddi -h는 도움말을 출력합니다.
Usage of cariddi:
-c int
Concurrency level. (default 20)
-cache
Use the .cariddi_cache folder as cache.
-d int
Delay between a page crawled and another.
-debug
Print debug information while crawling.
-e Hunt for juicy endpoints.
-ef string
Use an external file (txt, one per line) to use custom parameters for endpoints hunting.
-err
Hunt for errors in websites.
-examples
Print the examples.
-ext int
Hunt for juicy file extensions. Integer from 1(juicy) to 7(not juicy).
-h Print the help.
-headers string
Use custom headers for each request E.g. -headers "Cookie: auth=yes;;Client: type=2".
-headersfile string
Read from an external file custom headers (same format of headers flag).
-json
Print the output as JSON in stdout.
-md
Maximum depth level the crawler will follow from the initial target URL.
-i string
Ignore the URL containing at least one of the elements of this array.
-ie value
Comma-separated list of extensions to ignore while scanning.
-info
Hunt for useful informations in websites.
-intensive
Crawl searching for resources matching 2nd level domain.
-it string
Ignore the URL containing at least one of the lines of this file.
-oh string
Write the output into an HTML file.
-ot string
Write the output into a TXT file.
-plain
Print only the results.
-proxy string
Set a Proxy to be used (http and socks5 supported).
-rua
Use a random browser user agent on every request.
-s Hunt for secrets.
-sf string
Use an external file (txt, one per line) to use custom regexes for secrets hunting.
-sr
Store HTTP responses.
-t int
Set timeout for the requests. (default 10)
-ua string
Use a custom User Agent.
-version
Print the version.
일반적으로 Burpsuite는 브라우저 내에서 사용하므로, 브라우저에서 burpsuite의 인증서를 신뢰하기만 하면 됩니다.
cariddi를 BurpSuite 프록시와 함께 사용하려면 몇 가지 추가 단계를 수행해야 합니다.
-proxy http://127.0.0.1:8080 옵션으로 cariddi를 사용하려고 하면 burpsuite 오류 로그 섹션에서 다음 오류가 발생합니다:
Received fatal alert: bad_certificate (or something similar related to the certificate).
cariddi가 Burpsuite와 제대로 작동하게 하려면 브라우저뿐만 아니라 전체 PC에서 인증서를 신뢰해야 합니다. 다음 단계를 따라야 합니다:
Bupsuite의 Proxy 탭으로 이동한 다음 Options를 클릭합니다. CA Certificate 버튼을 클릭하고 Certificate를 DER 형식으로 내보냅니다
openssl x509 -in burp.der -inform DER -out burp.pem -outform PEM
sudo chown root:root burp.pem
sudo chmod 644 burp.pem
sudo cp burp.pem /usr/local/share/ca-certificates/
sudo c_rehash
cd /etc/ssl/certs/
sudo ln -s /usr/local/share/ca-certificates/burp.pem
sudo c_rehash .
출처: Trust Burp Proxy certificate in Debian/Ubuntu
이 단계를 수행한 후 cariddi를 Burpsuite와 함께 사용하려면 다음을 수행해야 합니다:
-proxy http://127.0.0.1:8080 플래그와 함께 사용합니다.각 릴리스의 자세한 변경 사항은 릴리스 노트에 문서화되어 있습니다.
풀 리퀘스트를 열기 전에 golangci-lint를 다운로드하고 실행하세요
golangci-lint run