
주어진 대상에 대해 엔드포인트, 잠재적 매개변수, 대상 특정 단어 목록 및 시크릿을 발견하는 데 사용되는 Python 도구입니다.
이 도구는 엔드포인트를 발견하고, 잠재적인 파라미터를 발견하며, 대상별 단어 목록을 생성하고, 주어진 대상에 대한 비밀을 찾는 데 사용됩니다. 다음 방법으로 찾을 수 있습니다:
waymore -mode R의 보관된 응답 파일 검색 및 waymore.txt의 URL과 waymore_index.txt의 원본 URL 요청 - waymore README.md 참조)Python 스크립트는 제 Burp 확장 프로그램 GAP의 링크 찾기 기능을 기반으로 합니다. 시작점으로 Gerben Javado의 놀라운 도구 LinkFinder를 가져와 링크를 찾기 위한 정규식을 사용했지만, 더 많은 것을 찾기 위한 추가 개선 사항을 적용했습니다.
xnLinkFinder는 Python 3을 지원합니다.
기본 (전역) Python 환경에 xnLinkFinder를 설치하세요.```bash
pip install xnLinkFinder
또는```bash
pip install git+https://github.com/xnl-h4ck3r/xnLinkFinder.git -v
다음으로 업그레이드할 수 있습니다```bash pip install --upgrade xnLinkFinder
### pipx
[pipx](https://pypa.github.io/pipx/)를 사용하여 격리된 Python 환경에서 빠른 설정```bash
pipx install git+https://github.com/xnl-h4ck3r/xnLinkFinder.git
참고: PDF 파일에서 링크를 추출하려면 시스템에 pdftotext를 설치할 수 있습니다. Linux에서는 sudo apt install -y poppler-utils, macOS에서는 brew install poppler를 사용하여 설치할 수 있습니다. pdftotext가 설치되어 있지 않은 경우, xnLinkFinder는 pypdf Python 라이브러리를 대체하여 사용합니다. 텍스트를 찾을 수 없는 경우(예: 스캔된 PDF), 설치된 경우 ocrmypdf를 사용하려고 시도합니다(예: sudo apt install -y ocrmypdf). 일반적으로 pdftotext와 ocrmypdf를 사용하면 pypdf만 사용하는 것보다 훨씬 더 나은 결과를 얻을 수 있습니다.
| ----------- | -------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| -i | --input | 입력: URL, URL 텍스트 파일, 검색할 파일 디렉터리, Burp XML 출력 파일, ZAP 출력 파일, Caido CSV 파일, HAR JSON 파일 또는 내용을 검색할 단일 파일. |
| -o | --output | 링크 출력을 저장할 파일 (필요 시 경로 포함, 기본값: output.txt). cli로 설정하면 출력이 STDOUT에만 기록됩니다. 파일이 이미 존재하면 -ow 옵션이 전달되지 않는 한 추가(중복 제거)됩니다. |
| -op | --output-params | 잠재적 매개변수 출력을 저장할 파일 (필요 시 경로 포함, 기본값: parameters.txt). cli로 설정하면 출력이 STDOUT에만 기록되지만(다른 프로그램으로 파이프되지 않음). 파일이 이미 존재하면 -ow 옵션이 전달되지 않는 한 추가(중복 제거)됩니다. |
| -owl | --output-wordlist | 대상 특화 워드리스트 출력을 저장할 파일 (필요 시 경로 포함, 기본값: 워드리스트 출력 없음). cli로 설정하면 출력이 STDOUT에만 기록되지만(다른 프로그램으로 파이프되지 않음). 파일이 이미 존재하면 -ow 옵션이 전달되지 않는 한 추가(중복 제거)됩니다. |
| -oo | --output-oos | 범위 외 링크 출력을 저장할 파일 (필요 시 경로 포함, 기본값: OOS 출력 없음). cli로 설정하면 출력이 STDOUT에만 기록되지만(다른 프로그램으로 파이프되지 않음). 파일이 이미 존재하면 -ow 옵션이 전달되지 않는 한 추가(중복 제거)됩니다. |
| -os | --output-secrets | 응답에서 발견된 비밀 정보를 저장할 파일 (JSON 형식, 필요 시 경로 포함, 기본값: 비밀 출력 없음). 파일이 이미 존재하면 -ow 옵션이 전달되지 않는 한 비밀이 병합됩니다. 비밀은 유형과 값별로 그룹화되며 각 항목이 발견된 출처의 배열이 포함됩니다. |
| -ow | --output-overwrite | 출력 파일이 이미 존재하는 경우 추가하는 대신 덮어씁니다. |
| -sp | --scope-prefix | /로 시작하는 링크는 출력에서 원본 링크 대신 범위 도메인이 접두사로 추가됩니다. 전달된 값이 유효한 파일 이름이면 해당 파일이 사용되고, 그렇지 않으면 문자열 리터럴이 사용됩니다. |
| -spo | --scope-prefix-original | -sp 인수가 전달된 경우, /로 시작하는 원래 링크도 출력에 포함될지 결정합니다 (기본값: false) |
| -spkf | --scope-prefix-keep-failed | -spkf 인수가 전달된 경우, 접두사가 추가된 링크가 404 또는 RequestException 발생 시에도 출력에 유지될지 결정합니다 (기본값: false) |
| -sf | --scope-filter | 링크의 도메인이 지정된 범위에 있는 경우에만 출력 링크를 필터링합니다. 전달된 값이 유효한 파일 이름이면 해당 파일이 사용되고, 그렇지 않으면 문자열 리터럴이 사용됩니다. 입력이 도메인/URL(또는 도메인/URL 파일)인 경우 이 인수는 이제 필수입니다. 범위에 없는 사이트를 크롤링하거나 잘못된 결과를 방지하기 위함입니다. |
| -c | --cookies † | HTTP 요청과 함께 전달할 쿠키를 추가합니다. 'name1=value1; name2=value2;' 형식으로 전달하십시오. |