1.Information Gathering
: Port Scan



(1) 첫 번째 난제!
Bypass Access Control Mechanism

웹에 접속해 보니
허용 중인 아이피 대역이 명시되어 있는데
정상 접속하려면 저쪽에서 요구하는
아이피 대역을 사용해야 한다.
이런 경우
HTTP 헤더 중 하나인
XFF(X-Forwarded-For)를
추가하여 간단히 해결이 가능한데
실행해 보면

정상 접속이 가능하며
동일한 방법으로
버프로 XFF를 추가해
Request를 날리면,

정상 접속이 가능하다.
XFF는
서버에 요청한 사용자의 IP를 식별하기 위한
표준 기능!
매 요청마다 넣어주기 번거로우니
버프에 Match and Replace 규칙을
추가한다.

이제 요청 헤더에 XFF가 자동 삽입된다.
(2) 두 번째 난제!
이런저런 시도를 해보았지만
로그인이 불가한 상황.
혹시나 하는 마음으로
디렉터리를 검색

몇 개 나오길래 요청해 보니
모두 login.php 페이지로
리다이렉트 된다.
응답 내 HTTP 코드를
302에서 200으로 변조 후
재 요청해 보니

페이지 정상 확인이 가능했는데
정상적으로 기능을 사용하려면
매번 302를 200으로 바꿔주던가
Location의 리다이렉트 주소를
접속 경로로 변경해야 한다.
다시 버프에 해당 룰을 만들어 준 뒤
계속 점검을 해나간다.
응답 코드를 바꾸던

Location 값을 없애던 택일

2. Exploitation
직원 명을 검색하는 경우
노출되는 파라미터에
참 / 거짓 구문을 입력해 보니
조회되는 데이터가 다르고


이외 다른 구문을 입력해 보니
sql 인젝션이 가능한 상황이다.

공격 전
가장 먼저 확인해야 할 것은
SQL의 종류인데
어떤 종류의 SQL을 사용하는지 알아야
데이터 조회에 필요한 구문이 먹힌다.

SQL 종류 확인 후
테이블 정보를 조회한 뒤
테이블의 컬럼을 알아본다.
이 대상에서 사용하는 SQL은
별도의 컬럼 필드가 없으므로
데이터를 생성할 때의 쿼리를 담고 있는
sql 필드의 내용을 통해 컬럼 이름을 확인해야 한다.

사용자 데이터 추출 후
ssh로 로그인을 시도하면

침투 성공
3. Privilege Escalation
: privileges check

: 모든 디렉토리 검색
> key는 sql 인젝션이 가능했던 것을 토대로 검색
C: > where /r C:\ *무엇*

특정 파일 내 관리자 비번이 적혀있고
ssh로 로그인 시도하면

끝
'OSCP > Proving Ground' 카테고리의 다른 글
17. Pelican (GET TO WORK) - Linux (0) | 2022.06.29 |
---|---|
16. Wheels (WARM UP) - Linux (XPath 인젝션) (0) | 2022.06.25 |
14. Mice (WARM UP) - Windows (*remote mouse) (0) | 2022.06.13 |
13. Internal (WARM UP) - Windows (0) | 2022.06.12 |
12. Helpdesk (WARM UP) - Windows (0) | 2022.06.11 |