MacroKeeper

작게 시작해도 운영에 필요한 기능은 갖춥니다

보호 URL, POST 요청, SMS 인증 요청, IP 차단, 대기열, 로그 확인, 예외 처리까지 한 흐름으로 설계합니다.

MacroKeeper 페이지 설명 이미지

기능은 많아 보이는 것보다 운영자가 바로 적용할 수 있어야 합니다

MacroKeeper의 기능은 이벤트, 예약, 신청, 인증, 조회처럼 실제 장애가 나는 지점을 기준으로 구성됩니다. 전체 사이트를 무리하게 막는 방식이 아니라 문제가 되는 보호 URL과 요청 유형부터 좁게 적용합니다.

예를 들어 선착순 예약 오픈 시간에는 예약 등록 URL과 SMS 인증 요청을 강하게 보호하고, 일반 안내 페이지는 그대로 열어둘 수 있습니다. 관리자는 정책을 조정하면서 차단 사유, 해제 시점, 예외 대상을 확인합니다.

URL별 보호 정책

이벤트 오픈, 예약 등록, 신청 완료, 조회 API처럼 실제로 몰리는 경로만 지정합니다. 같은 사이트 안에서도 보호 강도를 URL별로 다르게 적용해 정상 탐색은 유지하고 핵심 처리 구간만 방어합니다.

POST 요청 보호

로그인, 인증번호 요청, 회원가입, 결제, 등록 API처럼 서버 상태를 바꾸거나 비용을 발생시키는 요청을 집중 보호합니다. 짧은 시간 반복 제출, 실패 후 즉시 재시도, 가입 직후 연속 조회 같은 흐름을 제한합니다.

SMS 인증 보호

인증번호 발송은 매크로가 붙으면 비용이 바로 증가합니다. 같은 IP 또는 같은 행위 패턴에서 발송 요청이 반복되면 SMS 사업자 호출 전에 제한해 비용 증가와 인증 지연을 줄입니다.

IP 차단/자동 해제

의심 IP는 정책에 따라 자동 차단하고 정해진 시간이 지나면 자동 해제합니다. 운영자는 필요할 때 즉시 해제하거나 예외 등록을 할 수 있어 과도한 장기 차단을 피할 수 있습니다.

대기 순번

정상 사용자는 막는 대신 순번을 부여합니다. 현재 대기 상태와 입장 흐름을 보여주면 사용자의 무한 새로고침을 줄이고 서버가 감당 가능한 속도로 트래픽을 통과시킬 수 있습니다.

입장 토큰

순번이 된 사용자에게만 짧은 유효시간의 입장 토큰을 발급합니다. 토큰 없이 보호 URL을 직접 반복 호출하는 접근은 통과시키지 않아 대기열 우회를 줄입니다.

예외 처리

관리자, 내부망, 결제 콜백, 모니터링 서버처럼 막히면 안 되는 접근은 별도로 분리합니다. 운영 중 정상 업무가 차단되지 않도록 예외 정책을 먼저 잡고 보호 범위를 넓힙니다.

자동화 도구 탐지

curl, wget, Python, axios, Postman 등 일반 브라우저 이용과 다른 접근을 식별합니다. 단순 User-Agent만 보지 않고 업무 URL, 요청 간격, 반복 횟수를 함께 봐 차단 후보를 정리합니다.

운영 로그와 리포트

어떤 IP가 어떤 URL에서 어떤 규칙에 걸렸는지 남깁니다. 장애 후에는 차단 건수, 반복 요청 감소, 주요 공격 경로를 확인해 다음 이벤트 정책을 더 정확하게 조정할 수 있습니다.

적용 순서

처음부터 모든 기능을 켜기보다, 문제가 되는 URL부터 좁게 적용합니다.

보호 대상, 피크 시간, 반복 요청 유형을 먼저 정리하면 Shield와 Queue 중 어떤 기능을 먼저 적용해야 하는지 명확해집니다. 운영 중에는 로그를 보면서 차단 기준과 예외 대상을 조정합니다.