일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 리버싱 문제
- abex crackme
- 인공지능
- 리버싱
- 웹해킹
- 해킹
- CodeEngn
- 자바스크립트
- 어셈블리어
- html
- 백준 알고리즘
- sql injection
- 회귀 수식
- writeup
- 보안
- 알고리즘
- webhacking
- 백준
- 웹
- php
- 리액트
- 리버싱 워게임
- 워게임
- 넘파이
- MySQL
- C언어
- 컴퓨터 구조
- webhacking.kr
- 리눅스
- 머신러닝
- Today
- Total
목록webhacking (3)
인공지능 개발일지
아래는 42번의 초기화면이다. Test.txt를 먼저 다운 받았다. 이어서 flag.docx 도 바로 다운 받았다. 뭐지..?접근 거부가 뜨고 flag파일의 subject가 read me 읽어달라는 것을 보니 flag 파일에 접근하라는 힌트 같다. 일단 url접근은 아닌 것 같으니 버프슈트를 써봤다. 버프슈트로 flag파일을 다운 받으려 할 때 세션을 탈취해서 코드를 보는 것이 목적이다. 그런데 예상과 달리 test는 코드가 세션을 탈취하는데는 성공했지만 별 다른 특별한 코드가 보이지 않는다. 왜냐하면 내가 원하는 코드는 접근 거부를 시키는 내용이 들어간 코드이기 때문이다. 그래서 개발자 모드(F12)로 flag부분의 코드를 봤더니 alert()창을 띄우는 코드가 있고, test부분 코드는 아래와 같다...
아래는 23번의 초기화면이다. 이 문제는 상당히 친절하다.alert(1)을 띄우기만 하면 된단다. 따라서 바로 url창에 alert(1)을 삽입해봤다. 안타깝게도 바로 풀리진 않는다. 아닌가보다. 다음으로는 입력 프롬프트에 있는 그대로 를 입력해 봤지만 역시나 풀리지 않는다. 그래서 고민하던 중 흥미로운 것을 발견했다. 바로 위 no hack이 떴을 때의 url창이다. 다시 보겠다. 바로 우리가 입력한 것이 그대로 code라는 변수에 들어간다는 점이다. 그래서 바로 alert(1);만 프롬프트에 입력해 보았다. 안 풀린다. 다시 url을 보니 냄새가 난다.();이 특수문자들을 필터링하는 냄새가 따라서 alert(1); 을 16진수로 변환한 값을 입력해 봤다. alert0x4810x490x5B 하지만 안타..
먼저 webhacking 사이트의 old 18번을 들어가 보면 아래와 같이 입력을 기다리 는 창이 뜬다. 아래의 view-source를 클릭해서 html코드 중에서 색깔 있는 부분만 보면된다. 먼저 세번째 if문을 보면 조건절에 PHP정규 표현식함수 preg_match함수를 사용했다. 이는 공백패턴이 입력되면 no hack을 띄우는 역할을 한다. 따라서 공백을 사용하면 안 된다. 한편 php에서 전달 받는 파라미터를 저장하는 방식에는 $_GET방식과 $_POST방식이 있는데 여기서는 url에 붙여서 전송하는 $_GET방식을 사용하였음으로 url에 무언갈 덧붙여야 한단 것을 알 수 있다. 그런데 주석에 no==2이면 admin이라고나와있다. 그러면 result변수=~하고 나와 있는 문장에서 id=’gues..