ssongk
ssongk
ssongk
전체 방문자
오늘
어제

공지사항

  • resources
  • 분류 전체보기 (626)
    • CTF (24)
    • background (79)
      • fuzzing (5)
      • linux (29)
      • linux kernel (15)
      • windows (2)
      • web assembly (1)
      • embedded (0)
      • web (13)
      • crypto (9)
      • mobile (1)
      • AI (1)
      • etc.. (3)
    • write-up(pwn) (171)
      • dreamhack (102)
      • pwn.college (4)
      • pwnable.xyz (51)
      • pwnable.tw (3)
      • pwnable.kr (5)
      • G04T (6)
    • write-up(rev) (32)
      • dreamhack (24)
      • reversing.kr (8)
    • write-up(web) (195)
      • dreamhack (63)
      • LOS (40)
      • webhacking.kr (69)
      • websec.fr (3)
      • wargame.kr (6)
      • webgoat (1)
      • G04T (7)
      • suninatas (6)
    • write-up(crypto) (19)
      • dreamhack (16)
      • G04T (1)
      • suninatas (2)
    • write-up(forensic) (53)
      • dreamhack (5)
      • ctf-d (47)
      • suninatas (1)
    • write-up(misc) (13)
      • dreamhack (12)
      • suninatas (1)
    • development (31)
      • Linux (14)
      • Java (13)
      • Python (1)
      • C (2)
      • TroubleShooting (1)
    • 자격증 (8)
    • 이산수학 (1)
    • 정보보안 (0)
hELLO · Designed By 정상우.
ssongk

ssongk

[Webhacking.kr] Challenge old-30 write-up
write-up(web)/webhacking.kr

[Webhacking.kr] Challenge old-30 write-up

2022. 10. 17. 22:49

(old-28과 마찬가지로 멘토님이 도와주신 문제..)

문제 화면입니다.

문제의 소스 코드입니다.
die 함수를 전부 피하고 결과 값이 존재하면 플래그를 얻을 수 있습니다.
그냥 index.php로 가면 아무것도 출력되지 않아서 die 함수가 실행됐음을 알 수 있습니다.

접근 방식은 이전 old-28과 비슷한데
에러를 일으켜보면 사용되는 서버가 아파치 서버임을 알 수 있습니다.

mysqli_connect()에 인자로 설정된 값이 없으면 php.ini의 디폴트 값을 가져와서 실행하는데
.htaccess 파일로 해당 디렉터리 내의 디폴트 값을 설정해 줄 수 있습니다.
https://www.php.net/manual/en/configuration.changes.php

 

PHP: How to change configuration settings - Manual

Being able to put php directives in httpd.conf and have them work on a per-directory or per-vitual host basis is just great. Now there's another aspect which might be worth being aware of:A php.ini directive put into your apache conf file applies to php wh

www.php.net

 

.htaccess는 위와 같이 작성해주며
host에는 구글 클라우드에서 부여해준 mysql의 외부 아이피를 넣으면 됩니다.
user와 pw는 mysql로 생성한 유저의 아이디와 비밀번호를 넣어주면 됩니다.

로컬에서 열심히 시도해봤지만 오류를 도저히 해결할 수 없어서
구글 클라우드를 통해 구축하였습니다.

인스턴스를 하나 만들어주고 클라우드 셸에서 소스 코드에 적힌대로 db와 table을 작성해줍니다.

0.0.0.0/0의 접속을 승인해줘서 모든 클라이언트가 접속할 수 있도록 설정해줍니다.

이제 .htaccess 파일을 업로드하고
소스 코드로 들어가주면

플래그가 나왔습니다.
이 값을 Auth 탭에 인증하면

점수를 얻었습니다!


레퍼런스
https://aidencom.tistory.com/m/433

 

[ Webhacking.kr ] old 30 Write Up

Start .htaccess 를 이용하여 DB 커넥션을 하이재킹 하는 문제입니다. 문제 풀이에서 사용하는 MySQL 버전은 5.7 을 사용했습니다. MySQL 8.0 이상의 버전을 사용하게되면 5.7 을 사용할 때 보다 트러블 슈

aidencom.tistory.com

 

'write-up(web) > webhacking.kr' 카테고리의 다른 글

[Webhacking.kr] ouroboros golf write-up  (0) 2022.10.27
[Webhacking.kr] Challenge old-59 write-up  (0) 2022.10.27
[Webhacking.kr] Challenge old-28 write-up  (0) 2022.10.12
[Webhacking.kr] baby write-up  (0) 2022.09.24
[Webhacking.kr] Challenge old-53 write-up  (1) 2022.09.24
    'write-up(web)/webhacking.kr' 카테고리의 다른 글
    • [Webhacking.kr] ouroboros golf write-up
    • [Webhacking.kr] Challenge old-59 write-up
    • [Webhacking.kr] Challenge old-28 write-up
    • [Webhacking.kr] baby write-up
    ssongk
    ssongk
    벌레 사냥꾼이 되고 싶어요

    티스토리툴바