분류 전체보기 146

webhacking.kr 26번 풀이

소스 코드입니다. 엄청 간결하네요 ㅎㅎㅎㅎ 아이 좋아ㅏㄹ 일단 중요한 곳만 따로 잘라 왔어요. 하나하나씩 해석을 하보면, 먼저 preg_match로 admin이라는 문자열을 필터링 하네요! 그런데 /i가 없어요! 즉 대소문자 구분을 한다는 말이죠 네 예상대로 no가 나옵니다. 역시 대소문자를 섞어서 ?id=AdMin를 입력했을 땐 아무일도 일어나지 않습니다. urldecode(): urlencode()로 URL인코딩된 문자열을 디코딩한다. 아휴 네네 좋습니다. 쉽네요 그럼 urlencode()로 인코딩된 문자열을 id변수에 전달하면 되겠군요 그래서 인터넷에 바로 url인코더를 검색하고 admin을 인코딩 했는데 admin이 그대로 나와서 당황..;;;; 네 그래서 urlencode()를 검색해 보니까 u..

webhacking.kr 21번 풀이

일단 간단하게 id를 admin으로 해서 시도해 봅시다 흠 단순히 login fail이라고 나오네요 간단한 sql injection구문을 넣어봅시다 음 똑같이 나오네요? pw에 시도해 봅시다. 어 이번엔 좀 다르게 나옵니다. 이번에도 다르게 'no hack'이라고 나오네요 이번엔 'guest'로 로그인 해봤는데 빠밤 성공이라고 뜨네요! 일단 노가다로 이것저것 해 봐서 알아낸 것들은 1. 필터링 되는 문자(대소문자구분X): select 2. 필터링 안되는 문자: where, from, union, #, -- , 3. 참일 경우: worng password 4. 거짓일 경우: login fail 이렇게 긴 방황의 끝에 드디어 갈피를 찾았습니다. 바로 참과 거짓을 통해 pw를 알아내는 것이죠!! passwor..

webhacking.kr 3번 풀이

첫화면에 게임이 나온다 일단 간단한 문제니까 풀어보자 (프로그래밍과 관련 1도 없으니까 그냥 위 사진 보고 따라하셔도 됩니다. ) 게임방법 --> https://ko.wikipedia.org/wiki/%EB%85%B8%EB%85%B8%EA%B7%B8%EB%9E%A8 노노그램 - 위키백과, 우리 모두의 백과사전 노노그램(영어: Nonogram, 일본어: お絵かきロジック 오에가키로짓쿠[*])은 일본의 퍼즐 게임이다.[1] 각각 적혀있는 숫자를 보면서 숨겨져 있는 숫자를 예상하여 지워나가면서 그림을 그리는 게임 ko.wikipedia.org 처음에 answer에 단서가 있는 줄 알고 십진법으로 돌려봤지만 ㅎ 저건 그냥 모노그램의 답이였다. 일단 ctrl+shift+i 로 개발자 도구를 열어봐도 얻는게 달리 없..

webhacking.kr 2번 풀이(파이썬 이용)

2021.12.03 - [webhacking.kr] - webhacking.kr 2번 풀이 webhacking.kr 2번 풀이 음 아이피 활용 문제인 거 같다. 일단 소스보기 링크가 없으니 알아서 봐보자 ctrl+shift+i --> 개발자도구 열기 'if you access admin.php i will kick your ass' 자 그럼 바로 admin.php에 접속해보자 secret.. sh1256.tistory.com 이번엔 webhacking.kr 2번을 파이썬을 이용해 풀어보자 https://m.blog.naver.com/nunub0t/221769017265 [Webhacking.kr] old 2번 문제풀이 2번 문제로 접속하면 이런 페이지가 나온다. 소스보기로 살펴보자 주석으로 시간이 나오고..

webhacking.kr 2번 풀이

음 아이피 활용 문제인 거 같다. 일단 소스보기 링크가 없으니 알아서 봐보자 ctrl+shift+i --> 개발자도구 열기 'if you access admin.php i will kick your ass' 자 그럼 바로 admin.php에 접속해보자 secret password를 입력하면 해결되는 문제인 거 같다. 여기서도 개발자도구를 활용해 소스코드를 봤지만 건질 게 없엇다.ㅠ 단서는 바로 이전 페이지의 주석으로 된 시간에 있었다. 쿠키도 한번 봐주자 time이라는 쿠키가 들어있다. https://chrome.google.com/webstore/detail/editthiscookie/fngmhnnpilhplaeedifhccceomclgfbg?hl=ko EditThisCookie EditThisCook..

webhacking.kr 1번 풀이

일단 view-source를 눌러서 소스코드를 보자 처음에 코드를 보고 이게 무슨 개소리인가.. 했다. 일단 쿠키 'user_lv'에 2을 넣어보자. (1을 넣어보려 했으나 쿠키의 기본값이 1이였다) https://chrome.google.com/webstore/detail/editthiscookie/fngmhnnpilhplaeedifhccceomclgfbg?hl=ko EditThisCookie EditThisCookie는 쿠키 관리자입니다. 이것을 이용하여 쿠키를 추가하고, 삭제하고, 편집하고, 찾고, 보호하거나 막을 수 있습니다! chrome.google.com 위의 프로그램으로 쿠키를 수정할 수 있다. level 값이 2로 바뀌었다. 이번엔 4를 넣어보자 level이 다시 1이 되었다. 첫번째 조건..

프로세스(process), 쓰레드(thread) 생성

1. 프로세스 -컴퓨터에서 연속적으로 실행되고 있는 컴퓨터 프로그램 --> 프로세스 -Code, Data, Stack, Heap영역의 구조로 되어있는 독립된 메모리 영역. -멀티 프로세싱: 하나의 응용프로그램을 여러 개의 프로세스로 구성하여 각 프로세스가 하나의 작업을 처리하게 하는 것. 2. 쓰레드 -프로세스의 자원을 이용해서 실제로 자업을 수행하는 역할 --> 쓰레드 - 모든 프로세스에는 최소한 하나의 쓰레드가 존재함 - 쓰레드는 프로세스 내에서 각각 stack만 따로 할당받고 Code,Data,Heap영역은 공유. - 쓰레드가 두개 이상이면 멀티 쓰레드(Multi-Thread) 프로세스 생성 방법 자바에서는, 런타임 환경이 프로세스가 실행될 수 있는 기반 환경을 제공해 주기 때문에, 런타임 환경을 ..

자바 공부 2021.02.26

인터페이스(역할, 사용, 상속)

1. 인터페이스의 개념와 역할 -동일한 목적 하에 동일한 기능을 수행하게끔 강제하는 것이 바로 인터페이스의 역할이자 개념이다. (이로 인해 오류의 가능성을 줄이고, 유지보수성을 높일 수 있다) 선언방법은 다음과 같다. -선언을 하고 클래스에 적용할 때 implements를 사용한다. public interface 인터페이스이름 { public void 메소드이름1() } class 클래스이름 implements 인터페이스이름{ public void 메소드이름1() } 참고: limkydev.tistory.com/197 [JAVA] 자바 인터페이스란?(Interface)_이 글 하나로 박살내자 1. 인터페이스 개념과 역할 인터페이스....이 글하나로 박살내자. (회사에서 존댓말을 많이 쓰기때문에 여기서라도..

자바 공부 2021.02.25

문제풀이-2

1. 일단 입력받는 것 자체가 오랜만이라 제대로 입력받는지 확인을 해보자. 제대로 작동한다..!! 아직은 안헤매도 된당 ㅎㅎ package org.opentutorials.javatutorials.numberstring; import java.util.Scanner; class Date{ int Y, M, D; public Date(int Y, int M, int D) { this.Y=Y; this.M=M; this.D=D; } public void print1() { System.out.println(Y+","+M+","+D); } public void print2() { String[] Month = {"January", "February", "March", "April", "May", "June",..

자바 공부 2021.02.16

상속(개념, 클래스 상속, 부모 생성자 , 다형성, 추상 클래스)

1. 상속, 클래스 상속 자바에는 부모클래스와 자식클래스가 존재한다. 자식 클래스는 부모 클래스를 통해 그 부모의 멤버를 상속받아 쓸 수 있다. 예제를 보면서 클래스 상속을 사용해 보자. package org.opentutorials.javatutorials.numberstring; class Student{ int num1, num2; public Student (int num1, int num2) { this.num1=num1; this.num2=num2; } public void Print() { System.out.println("print1."+ num1 +", "+ num2); } } class Student1 extends Student{ public Student1(int num1, int..

자바 공부 2021.02.16