Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
nomore403 — 🚫 보안 연구자를 위한 고급 도구로, 스마트 기술과 적응형 요청 조작을 통해 403/40X 제한을 우회합니다. 빠름. 정밀함. 효과적. | Kitploit
도구/GitHubGitHub/devploit/nomore403
ReconnaissanceVulnerability ScannersIDS/IPS EvasionWAF BypassWeb SecurityPenetration Testing
GitHubdevploit/nomore403

nomore403

🚫 보안 연구자를 위한 고급 도구로, 스마트 기술과 적응형 요청 조작을 통해 403/40X 제한을 우회합니다. 빠름. 정밀함. 효과적.

저장소 보기
1.8k2142개월 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

NoMore403 로고

NoMore403

GitHub stars GitHub forks Go Report Card Go 버전 라이선스: MIT 기여 환영

nomore403은 401, 403 및 관련 응답을 중심으로 HTTP 접근 제어 우회 및 파서 불일치를 테스트하기 위한 명령줄 도구입니다.

이 도구는 실무 웹 보안 작업(버그 바운티, 침투 테스트, 보안 검토, 접근 제어 규칙 회귀 테스트)을 위해 설계되었습니다. 광범위한 요청 변형 세트를 자동화하고, 기준선을 캡처하며, 일반적인 오탐지를 필터링하고, 의미 있는 우회 가능성이 가장 높은 응답을 강조합니다.

기능

대상 URL이 주어지면 nomore403은:

  1. 기준 요청을 보내 차단된 응답을 캡처합니다.
  2. 선택적으로 존재하지 않는 경로에 대해 자동 보정을 수행하여 대상의 기본 오류 동작을 학습합니다.
  3. 요청 경로, 메서드, 헤더 또는 와이어 형식을 변형하는 우회 기법 세트를 실행합니다.
  4. 결과를 점수화하고 그룹화하여 노이즈를 줄입니다.
  5. 재현 가능한 증거를 출력하며, 흥미로운 발견에는 curl 명령어도 포함됩니다.

이 도구는 자체적으로 "인증을 깨뜨리지" 않습니다. 프런트엔드, 프록시, WAF, CDN, 애플리케이션 라우터 및 백엔드가 동일한 요청을 어떻게 다르게 해석하는지 찾는 데 도움을 줍니다.

특징

  • 차단된 응답과 비교하는 기준선 기반 비교
  • 기본 404 또는 상위 경로 응답으로 인한 오탐지를 줄이기 위한 자동 보정
  • 우회 가능성이 높은 항목과 흥미로운 변형에 대한 별도 요약이 포함된 점수화된 출력
  • 가치가 높은 발견에 대한 재생 및 재현성
  • 일시적인 네트워크 오류에 대한 재시도 및 백오프
  • 기법별 진행 상황을 보여주는 동시 실행
  • net/http가 정규화하는 요청 형식을 위한 원시 HTTP 지원
  • 파이프라인 및 후처리를 위한 JSON 및 JSONL 출력
  • 단일 URL, URL 파일, 표준 입력 또는 요청 파일 입력

설치

소스에서 빌드

root@kitploit:~
git clone https://github.com/devploit/nomore403
cd nomore403
go build

Go로 설치

root@kitploit:~
go install github.com/devploit/nomore403@latest

go install로 설치하면 payloads/ 디렉토리가 자동으로 설치되지 않습니다. 저장소를 클론하고 필요시 -f 플래그로 해당 디렉토리를 가리키십시오.

요구 사항

  • 소스에서 빌드하려면 Go 1.24 이상
  • 다음 기법에 의존하는 curl이 PATH에 있어야 함:
    • http-versions
    • http-parser
    • absolute-uri

대부분의 기법은 curl 없이도 작동합니다.

빠른 시작

기본 스캔:

root@kitploit:~
./nomore403 -u https://target.tld/admin

프록시 사용 및 상세 출력:

root@kitploit:~
./nomore403 -u https://target.tld/admin -x http://127.0.0.1:8080 -v

선택한 기법만 실행:

root@kitploit:~
./nomore403 -u https://target.tld/admin -k headers,absolute-uri,raw-desync

표준 입력에서 대상 읽기:

root@kitploit:~
cat urls.txt | ./nomore403

Burp 스타일 요청 파일 사용:

root@kitploit:~
./nomore403 --request-file request.txt

기계 판독 가능 출력:

root@kitploit:~
./nomore403 -u https://target.tld/admin --jsonl -o findings.jsonl

예제 출력

root@kitploit:~
target: https://target.tld/admin   method: GET   frontend: AWS ELB/ALB   payloads: payloads

calib: 404 | 1245b | ±50 | frag 703b

BASELINE
  default       403    520 bytes    https://target.tld/admin

FINDINGS
  hdr-ip     100! 200   2048 bytes   X-Original-URL: /
  abs-uri     26. 403    236 bytes   request-target: https://target.tld/admin
  http        18. 400    122 bytes   HTTP/2

no visible results: 17 techniques

━━━━━━━━━━━━━━ LIKELY BYPASS ━━━━━━━━━━━━━━━━━
[!100 HIGH] Header injection (IP) 403=>200    2048b
         why: status 403->200, len Δ1528, body changed, type changed
        item: X-Original-URL: /
        curl: curl -i -sS -k -H 'User-Agent: nomore403' -H 'X-Original-URL: /' 'https://target.tld/admin'

출력 읽는 방법

주요 기법 출력

각 보이는 줄은 기준선과 충분히 달라 필터링을 통과한 응답입니다.

일반적인 필드:

  • 기법 별칭, 예: hdr-ip, abs-uri, 또는 parser
  • 간결한 점수 표시, 예: 18., 61+, 또는 100!
  • 최종 응답 상태
  • 응답 크기
  • 사용된 항목 또는 페이로드

요약 전이

최종 요약은 기준선에서 결과로의 전이를 보여줍니다:

  • 403=>200은 일반적으로 즉각적인 주의가 필요함
  • 403=>302는 흥미로울 수 있지만, 여전히 인증 장벽으로 되돌아갈 수 있음
  • 403->400 또는 403->404는 일반적으로 우회보다는 파서 또는 라우팅 차이를 나타냄

요약

실행이 끝나면 nomore403은 다음을 출력합니다:

  • LIKELY BYPASS
    • 가장 높은 점수의 결과
    • 재현 가능한 curl 포함
  • INTERESTING VARIATIONS
    • 수동 검토가 필요한 의미 있는 파서 또는 라우팅 차이
  • no visible results
    • 실행되었지만 필터링 후 보이는 출력이 없는 기법의 수

점수 모델

점수는 휴리스틱입니다. 결과의 우선순위를 정하기 위한 것이지 공격성을 증명하기 위한 것이 아닙니다.

도구는 일반적으로 다음을 높게 평가합니다:

  • 2xx로의 전이
  • 3xx로의 전이
  • 큰 본문 길이 변화
  • 본문 해시 변화
  • Location 변화
  • 로그인 또는 거부 흐름으로 해결되지 않는 이상한 리디렉션
  • 재생에서도 유지되는 차이

도구는 일반적으로 다음을 낮게 평가합니다:

  • 거의 동일한 응답
  • 반복되는 파서 노이즈
  • 불안정한 재생 결과
  • 접근 제어로 다시 이어지는 것으로 보이는 빈 본문 리디렉션
  • 많은 400 및 404 케이스 (응답도 크게 변경되지 않는 한)

권장 해석:

  • HIGH: 실행 가능성이 높음; 먼저 검토
  • MED: 가능성 있는 후보; 일반적으로 수동 재생 가치 있음
  • LOW: 파서 차이, 라우팅 이상 또는 낮은 신뢰도 동작

자동 보정

자동 보정은 비상세 모드에서 기본적으로 활성화됩니다.

여러 존재하지 않는 경로에 요청을 보내 대상의 기본 오류 동작에 대한 기준선을 구축합니다. 또한 조각 기반 보정 요청을 수행하여 조각이 제거된 경로로 인한 오탐지를 줄입니다.

다음 플래그로 제어할 수 있습니다:

  • --no-calibrate
    • 차단된 기본 응답에 대해서만 비교
  • --strict-calibrate
    • 본문 해시 및 Location, Content-Type, Server 같은 주요 헤더도 비교

기법

도구는 -k를 지정하지 않으면 기본적으로 모든 기법을 실행합니다.

메서드 및 동사 변형

  • verbs
    • payloads/httpmethods의 대체 HTTP 메서드
  • verbs-case
    • HTTP 메서드의 무작위 대소문자 변형
  • method-override
    • 쿼리, 헤더 및 본문 기반 메서드 재정의 패턴

헤더 및 신뢰 기반 변형

  • headers
    • 포함하는 포괄 기법:
      • IP 신뢰 헤더
      • 단순 헤더
      • Host 변형
  • hop-by-hop
    • Connection을 사용한 홉별 제거 트릭
  • header-confusion
    • X-Original-URL과 같은 재작성 및 경로 재정의 헤더
  • host-override
    • 호스트 재정의 및 전달된 호스트 변형
  • forwarded-trust
    • Forwarded, Client-IP, Cluster-Client-IP 및 관련 신뢰 체인
  • proto-confusion
    • X-Forwarded-Proto, X-Forwarded-Port 및 관련 스킴 힌트

경로 및 정규화 변형

  • endpaths
    • payloads/endpaths의 접미사 및 경로 끝 변형
  • midpaths
    • payloads/midpaths의 경로 삽입 및 탐색 스타일 변형
  • double-encoding
    • 인코딩된 경로 변형, 공격적인 이중 인코딩 형식 포함
  • unicode
    • %uXXXX 및 과도하게 긴 UTF-8 경로 변형
  • path-case
    • 경로 세그먼트 대소문자 전환
  • path-normalization
    • 점 세그먼트 및 세미콜론 정규화 변형
  • suffix-tricks
    • .json, .css, ;index.html과 같은 접미사 및 확장자 트릭, 형식 스타일 쿼리 전환

프런트엔드 및 와이어 형식 변형

  • http-versions
    • 동일한 요청을 HTTP/1.0 및 HTTP/2에서 비교
  • http-parser
    • http-versions와 별도로 클라이언트/프런트엔드 파서 차이를 노출하기 위해 의도적으로 최소한의 curl 요청 전송
  • absolute-uri
    • curl --request-target을 통해 절대 형식 요청 대상 사용
  • raw-duplicates
    • 원시 HTTP로 보안 관련 헤더 중복
  • raw-authority
    • 중복되거나 충돌하는 authority 및 호스트 신호
  • raw-desync
    • 충돌하는 전송 의미 체계를 포함한 프런트엔드/백엔드 구문 분석 차이를 겨냥한 요청 형식

원시 HTTP 동작

일부 기법은 Go의 net/http 클라이언트가 제공하지 않는 와이어 수준 제어가 필요합니다. 이러한 기법은 원시 HTTP 엔진을 사용합니다.

현재 원시 기법에는 다음이 포함됩니다:

  • raw-duplicates
  • raw-authority
  • raw-desync
  • 일부 %uXXXX 유니코드 경로 요청

참고:

  • 원시 요청은 필요할 때 자동으로 전송됩니다.
  • 원시 기법은 현재 업스트림 프록시를 지원하지 않습니다.
  • 원시 동작은 다음에 유용합니다:
    • 중복 헤더
    • 정확한 요청 대상
    • 전송 인코딩 및 Content-Length 경계 사례

핑거프린팅 및 기법 순서

도구는 다음과 같은 프런트엔드 힌트를 추론할 수 있습니다:

  • AWS ELB / ALB
  • CloudFront
  • Cloudflare
  • Nginx
  • Envoy
  • Apache
  • IIS

이러한 힌트는 기법 순서 및 출력 컨텍스트를 개선하는 데 사용됩니다.

중요:

  • 핑거프린팅은 기본적으로 기법을 비활성화하지 않습니다.
  • -k를 사용하지 않으면 도구는 여전히 전체 기본 기법 세트를 실행합니다.

재현성 및 재생

최종 요약에서 높은 가치의 결과가 자동으로 재생됩니다.

재생 출력은 다음 질문에 답하는 데 도움이 됩니다:

  • 동작이 반복되었는가?
  • 동일한 상태 및 응답 형태를 유지했는가?
  • 조사하거나 보고하기에 충분히 안정적인가?

최종 요약에는 다음이 포함됩니다:

  • 재생 횟수, 예: 1/1 또는 2/2 matched on replay
  • 흥미로운 결과에 대한 재생 가능한 curl 명령어

입력 모드

단일 대상

root@kitploit:~
./nomore403 -u https://target.tld/admin

URL 파일

root@kitploit:~
./nomore403 -u targets.txt

표준 입력

root@kitploit:~
cat targets.txt | ./nomore403

요청 파일

root@kitploit:~
./nomore403 --request-file request.txt

요청 파일은 Burp 또는 다른 프록시에서 캡처된 트래픽을 재생할 때 유용합니다.

사용자 정의 페이로드 위치

--payload-position을 사용하면 내장된 endpath 및 midpath 변형 로직 대신 명시적인 마커에 페이로드를 삽입할 수 있습니다.

예:

root@kitploit:~
./nomore403 -u 'https://target.tld/§100§/admin/§200§' -p §

일반적인 워크플로

빠른 분류

root@kitploit:~
./nomore403 -u https://target.tld/admin

인터셉팅 프록시로 조사

root@kitploit:~
./nomore403 -u https://target.tld/admin -x http://127.0.0.1:8080 -v

원시 및 프런트엔드 중심 기법만 실행

root@kitploit:~
./nomore403 -u https://target.tld/admin -k absolute-uri,raw-duplicates,raw-authority,raw-desync

사용자 정의 신뢰 IP 테스트

root@kitploit:~
./nomore403 -u https://target.tld/admin -i 10.0.0.5

나중 분석을 위해 JSONL 저장

root@kitploit:~
./nomore403 -u https://target.tld/admin --jsonl -o findings.jsonl

플래그

최신 CLI 전체 목록은 ./nomore403 --help를 실행하십시오.

주요 플래그:

  • -u, --uri
    • 대상 URL, URL 파일 또는 입력 경로
  • -k, --technique
    • 실행할 기법의 쉼표로 구분된 목록
  • -x, --proxy
    • 업스트림 프록시
  • -H, --header
    • 사용자 정의 헤더 추가
  • -i, --bypass-ip
    • 신뢰 헤더 기법에 사용되는 IP 또는 호스트 이름
  • -v, --verbose
    • 필터링된 출력뿐만 아니라 모든 보이는 결과 표시
  • --json
    • 구조화된 JSON 출력
  • --jsonl
    • 결과당 하나의 JSON 객체 출력
  • --no-calibrate
    • 자동 보정 비활성화
  • --strict-calibrate
    • 필터링 중 더 많은 응답 필드 비교
  • --retry-count

출력 형식

사람이 읽을 수 있는 터미널 출력

기본 모드는 대화형 검토 및 분류에 최적화되어 있습니다.

JSON

구조화된 단일 문서를 위해 --json을 사용하십시오.

JSON Lines

다음과 같은 경우 --jsonl을 사용하십시오:

  • 결과를 점진적으로 처리
  • 증거를 파이프라인에 저장
  • 자신의 도구에 결과 가져오기

페이로드 파일

payloads/ 디렉토리에는 여러 기법에서 사용되는 목록이 포함되어 있습니다.

현재 파일:

  • httpmethods
  • headers
  • ips
  • simpleheaders
  • endpaths
  • midpaths
  • useragents

이 파일을 대상이나 워크플로에 맞게 사용자 정의할 수 있습니다.

제한 사항

  • 원시 HTTP 기법은 현재 업스트림 프록시를 지원하지 않습니다.
  • 점수는 휴리스틱이며 오탐지나 미탐지를 생성할 수 있습니다.
  • 리디렉션 점수는 현재 완전히 따라간 리디렉션 체인이 아닌 즉시 리디렉션 응답에 대한 휴리스틱을 사용합니다.
  • 일부 기법은 대상 특정 동작에 의존하며, 많이 정규화된 스택에서 노이즈가 많을 수 있습니다.
  • curl 기반 기법은 PATH에 curl이 필요합니다.

보안 및 책임 있는 사용

이 도구는 테스트할 권한이 있는 시스템에서만 사용하십시오.

저자와 기여자는 오용에 대해 책임지지 않습니다. 귀하는 관련 법률, 프로그램 규칙 및 조직 정책을 준수할 책임이 있습니다.

기여

기여를 환영합니다.

유용한 기여 영역:

  • 버그 수정
  • 더 나은 페이로드
  • 새로운 우회 기법
  • 원시 HTTP 개선
  • 프런트엔드 핑거프린팅
  • 문서화 및 예제

기법을 기여하기 전에 다음을 선호합니다:

  • 명확히 구별되는 파싱 또는 신뢰 경계 동작
  • 재현 가능한 증거
  • 요청 형태 또는 재생 동작을 검증하는 테스트

라이선스

이 프로젝트는 MIT 라이선스에 따라 출시됩니다. LICENSE를 참조하십시오.

도구 다운로드
  • ip-encoding
    • 점 표기, 정수, 16진수 및 IPv6 형식의 localhost 및 신뢰 주소 변형
  • payload-position
    • URL의 명시적으로 표시된 위치에 페이로드 삽입
    • 일시적 오류에 대한 재시도 횟수
  • --retry-backoff-ms
    • 지수 백오프 기준 시간(밀리초)
  • --host-delay
    • 동일한 호스트에 있는 배치 대상 간 지연
  • --top-score-min
    • LIKELY BYPASS의 최소 점수
  • --variation-score-min
    • INTERESTING VARIATIONS의 최소 점수
  • --top
    • 요약 섹션당 최대 항목 수, 0은 요약 비활성화