일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 자바스크립트
- 메소드
- IF문
- 백준 알고리즘
- sql injection
- 객체
- 파이썬
- 배열
- jQuery
- object
- blind sql injection
- python
- suninatas 풀이
- xss game
- 김성엽 대표님
- github
- htmlspecialchars
- element 조회
- 사칙연산
- 조건문
- 함수
- xss game 풀이
- property
- burp suite
- document
- 백준 파이썬
- 포인터
- lord of sql injection
- window
- Pwndbg
- Today
- Total
목록분류 전체보기 (389)
power-girl0-0
보호되어 있는 글입니다.
안녕하세요! ლ(╹◡╹ლ) 풀이 간단히 적고 가겠습니다~~ 1. 문제 문제에 주어진대로 접속하면, 존재하는 3개의 파일을 확인할 수 있다. fd.c파일을 열어 c언어 코드를 확인할 수 있다. 2. 풀이 c코드를 분석해보면, 아래와 같은 조건을 확인할 수 있다. 1. 입력받은 인자값에서 0x1234 뺀 값을 read함수의 fd 위치에 넣어준다. 2. read함수를 통해, 입력받은 값이 LETMEWIN이라는 문자일 경우, flag를 획득한다. 즉, fd의 값을 0으로 만들어서, read함수가 표준입력 역할을 수행하도록 만들면 된다. ※ fd (file descriptor) : 리눅스나 유닉스에서 프로세스가 파일을 다룰 때 사용하는 개념 ⇨ 0 : 표준입력 ⇨ 1 : 표준출력 ⇨ 2 : 표준에러 따라서, 0x..
주소 : https://webhacking.kr/old.php Webhacking.kr webhacking.kr [ 풀이 ] 해당 입력값에 dohyeon이라는 이름을 넣으려하니, 글자수가 5개로 제한되어있다. 소스코드를 살펴보자. 주석처리를 살펴보면, ls명령어를 해야한다고 써있다. system('ls'); 명령어를 실행시키면 될 듯 하다. 근데 소스코드를 잘보면, hello에 대한 문구를 출력해주는 코드를 system()함수를 사용하고 있다. 이를 이용해서, ls명령어를 실행해주면 될 듯하다. 먼저, {$id}값이 끝났다는 '(싱클쿼터)후에 ;(세미콜론)을 사용해서 echo명령어를 끝내고 ls를 입력해준다. 여기서 본 글 작성자는 사실 조금 헤맸당 ㅎ_ㅎ 마지막에 남아도는 '(싱글쿼터)를 처리하지 못했..
주소 : https://webhacking.kr/old.php Webhacking.kr webhacking.kr [ 풀이 ] 해당 문제에서 webshell문제라고 말해주고 있다. 일단 webshell.php 파일을 만들어주자. 본 글 작성자는 아래와 같이 read_file함수를 사용해서 파일을 읽어오도록 web_shell.php이라는 파일을 만들었다. 그래서 webshell.php 파일을 업로드 해보았는데, 아래와 같이 wrong type이라고 출력된다 ㅠ_ㅠ type이 잘못되었다고 출력되는 것을 보아, type만 우회해주면 되나?라는 생각에 burp suite툴을 이용해보았다. content-type을 이미지타입으로 변경시키고 전송해보았다. 오! 이번에는 성공적으로 업로드 되었다. 출력된 업로드파일을 ..
주소 : https://webhacking.kr/old.php Webhacking.kr webhacking.kr [ 풀이 ] flag.docx를 다운로드 해보니, 아래와 같이 권한이 없다고 출력된다. 이번에는 test.txt파일을 다운로드 해보니, 성공적으로 다운받아졌다. 개발자도구를 이용해서 소스코드를 확인해보니, flag.docx에는 무조건 자바스크립트로 권한없다고 경고창이 출력되게 해놨다... (마치 농락당한 기분이다 ㅇㅁㅇ) 그런데, test.txt의 하이퍼링크에 base64인코딩 값이 들어있는 듯하다. 아래 사이트를 이용해서, 디코딩 해보았다. ( base64 디코딩 : https://www.convertstring.com/ko/EncodeDecode/Base64Decode ) 빙고 ~_~ te..
주소 : https://webhacking.kr/old.php Webhacking.kr webhacking.kr [ 풀이 ] 소스코드를 살펴보자. 위 소스코드를 살펴보면 . / 등을 필터링하고 있다. 또한 ./{$upload_dir}/{$fn}이라는 파일 경로를 복사하여, flag값을 쓰는 코드인 듯 하다. 그래서 $upload_dir에 대한 값을 알면, 왠지 flag값을 알 수 있을듯하다. 아마듀 @_@ 어떻게 하지 고민하다가, 위쪽의 소스코드에 error에 대한 코드를 볼 수 있었다. 엄,,, 에러에 관한 소스코드이긴 한데,,, 처음보는 함수(?)였다....ㅠ_ㅠ 서칭을 통해, 알아보니 에러를 출력해주는 코드이다. 또한, 에러가 출력되면 파일 경로까지 같이 출력시켜주는 에러인 듯 하다. 에러를..
주소 : https://webhacking.kr/old.php Webhacking.kr webhacking.kr [ 풀이 ] 바로 소스코드를 살펴보자. 자! 이번 문제는 소스코드만 잘봐도, 쉽게 풀 수 있는 문제였다. ㅎ_ㅎ $result[0]이 1값이면, 문제가 풀린다. 쿼리문을 자세히 살펴보면, 1을 뽑아내고 있다. 즉, 뒤 조건문인 id는 다른 것 필요없이 참으로만 만들어주면 된다! 여기서 주의할 점은 \\는 없는 값으로, ' 는 ''로 치환되는 것과 id가 15개까지만 잘리는 것이다. 또! 쿼리문을 자세히 봐보자. post방식으로 받아온 id값 뒤에 닫는 '(싱글쿼터)가 없다. 즉 '(싱글쿼터)를 써야 한다. 으흠 ~_~ 아니 근데 왜 id를 15개만 자르는 것일까?!! 이유없이?? 노노 아니다!..
주소 : https://webhacking.kr/old.php Webhacking.kr webhacking.kr [ 풀이 ] 입력창에 아무 값이나 입력해본 결과, 별다른 점이 없다. 개발자도구를 통해, 소스코드를 살펴본 결과 주석으로 admin.php를 알려주고 있다. 해당 경로로 이동결과, 앞서 입력값에 입력했던 값과 내 ip가 출력된다. 또한, admin으로 로그인해야된다고 한다! 그렇다면, 로그인할 페이지가 있다는 의미이다. 다시 첫페이지로 오니, 입력창 값을 보내기 위한 버튼이 login이었다. 여기서 로그인하는 건가...(?) admin을 입력해서, 전송해보자! 오 뭔가 다른 문구가 출력되었다! admin이 아니라고 출력된다. guest로도 시도해봤으나, 아무 변화도 없었다! 오호,,, 인젝션은..