[PHP]
1. php 는 변수명으로 함수를 사용할 수 있다.
- $a = printf;
- $a("test");
- test 가 출력된다.
- 하지만 echo, print, include는 불가능 하다. (printf는 가능)
2. php 는 ""와 \x(16진수)를 이용하여 문자열을 만들 수 있다.
- $a = "T\x45ST"; //\x45 = E
- print $a;
- TEST 가 출력된다.
3. 1번 + 2번을 통해 여러 ctf 문제들을 우회 가능하다 .. !
+ php jail 관련 문제
glob를 통해 파일의 이름을 출력할 수 있다.
ex) print_r(glob("*"));
- glob의 결과는 Array 형태
- 한개씩 출력하고 싶으면 glob("*")[index_num] 형태로 사용
readfile을 통해 파일을 읽을 수 있다.
ex) readfile(glob("*")[0]);
- php 파일을 읽을경우 주석으로 파일이 읽어진다.
highlight_file을 통해 파일을 읽을 수 있다.
ex) highlight_file(glob("*")[0]);
setcookie를 통해 출력결과를 쿠키값으로 받을 수 있다.
ex) setcookie("ls",glob("*")[0]);
` `를 통해 system함수를 대채할 수 있다. (억음 부호(grave accent))
(단, print, echo 함수를 사용할 수 있어야 한다.)
ex) echo `ls`; //system("ls")와 같은 효과를 낼 수 있다.
ex) print `ls`; //system("ls")와 같은 효과를 낼 수 있다.
'기타_ > 알쓸신잡' 카테고리의 다른 글
[알쓸신잡] 스피어 피싱(Spear-Phishing) (0) | 2020.02.02 |
---|---|
[알쓸신잡] 코로나맵(coronamap) (0) | 2020.02.01 |
[알쓸신잡] 정보보호병 시험, 면접 준비 (0) | 2020.01.06 |
[알쓸신잡] NAC의 모든 것 (0) | 2020.01.05 |
[알쓸신잡] IDS, IPS의 모든 것 (0) | 2020.01.05 |
댓글