Web
-
[WEB]CANT_EVEN_UNPLUG_ITCTF write_up/DEF CON CTF Qualifier 2019 2019. 6. 22. 22:42
문제의 유형을 확인해 보면 INTRO, RECON, WEB 이라고 되어 있는데 WEB이면 URL을 줄만 하지만 해당 문제에는 URL이 주어지지 않는다. 제공되는 파일은 HINT 라는 파일 뿐이기 때문에 파일을 한번 확인해 보겠습니다. Hint: these are HTTPS sites. Who is publicly and transparently logging the info you need? Just in case: all info is freely accessible, no subscriptions are necessary. The names cannot really be guessed. 해당 문제에 보면 유일한 URL 형식의 문자열을 확인해 보면 다음과 같이 military-grade-secrets...
-
[Web] GnomeArena : Rock Paper ScossorsCTF write_up/2018 X-MAS CTF 2019. 6. 16. 19:21
↓ http://199.247.6.180:12002 해당 사이트에서는 이상한 점이 없엇지만.. 저 오른쪽위에 settings.php으로 연결되는 부분이 있습니다.(test.php 부분은 제가 푸느라 입력해서..ㅎ) 파일 선택해서 입력하는 부분이 있네요. File Upload 취약점을 공격하는 CTF 문제인것 같습니다. 일단 WebShell을 php파일로 만듭니다. 하지만 위의 파일은 Profile Image이기 때문에 header 시그니처인 FF D8 FF 를 붙여줍니다. 해당 파일을 File Upload하고 이름 입력해줍니다. URL을 다음과 같이 바꿔줍니다. ↓ ls%20../ ↓ ls+../ ↓ cat%20../flag.txt ↓ cat+../flag.txt Flag : X-MAS{Ev3ry0ne_..
-
[Lord of SQL_injection] #23 hell_fire$ 웹 해킹 $/los.rubiya.kr 2019. 5. 28. 12:55
문제를 보면 새로운 유형의 문제가 나온 것 같습니다. Order by를 이용한 sql injection 인 것 같습니다. https://los.rubiya.kr/chall/hell_fire_309d5f471fbdd4722d221835380bb805.php?order=1 를 입력 하면 id를 기준으로 내림차순이 일어납니다. https://los.rubiya.kr/chall/hell_fire_309d5f471fbdd4722d221835380bb805.php?order=2 를 입력 하면 email을 기준으로 내림차순이 일어납니다. https://los.rubiya.kr/chall/hell_fire_309d5f471fbdd4722d221835380bb805.php?order=3 를 입력 하면 score를 기준으..
-
[Lord of SQL_injection] #22 dark_eyes$ 웹 해킹 $/los.rubiya.kr 2019. 5. 28. 12:53
해당 문제를 보면 저번 21번 문제와 거의 비슷하지만 필터링이 더 들어가 있는 것을 확인해 볼 수 있습니다. 21번 문제에서는 if문을 이용한 error based sql injection을 했지만 이번에는 if 와 case가 필터링 되어 있기 때문에 다른 방법을 찾아 보겠습니다. 우회 방법을 찾던중 출력하는 필드 수의 차이를 이용한 방법을 찾게 되었습니다. select 1 union select [조건] 의 형태의 우회 방법인데 이렇게 조건을 걸었을 때 조건이 참이라면 1을 반환해서 1개의 필드가 되고, 조건이 거짓이라면 0을 반환하게 되어서 2개의 필드로 인식을 하게 되는 것입니다. 저는 조건이 거짓일 때 에러를 띄우기 위해서 select 1 union select [거짓 조건] 의 형식으로 접근을 ..
-
[Web] TimeCTF write_up/Hack CTF 2019. 5. 22. 13:27
사이트에 들어가 보면 다음과 같은 코드를 확인 할 수 있습니다. 코드를 확인해 보면 입력하는 문자열은 숫자여만 하고 최소 5184000 보다 커야하고 최대 7776000보다 작아야 합니다. 하지만 sleep함수 때문에 5184001을 입력하면 5184001초 뒤에 flag가 출력되기 때문에 이것은 아닌거 같습니다. 또한 입력받은 문자열을 int로 다시 환산 하는 것도 희한합니다. 곰곰히 보던중 is_numeric함수에서 취약점을 찾을 수 있었습니다. Is_numeric함수는 숫자이기만 하면 true 를 반환 하기 때문에 정수일 필요는 없다는 것을 알수 있었습니다. 여기서 제가 사용할 숫자형태는 지수 입니다. 5184001을 지수로 반환하면 다음과 같습니다. 5184001 = 5.184001e6 5.184..