-
-
-
SQL injection 바로 잡기 #5 Where 동작의 이해Wargame Site/SQL injection 2020. 3. 12. 23:09
이번에 배울 개념은 정말 중요한 개념이다. 직접 테이블을 구성해보고 실험을 해보는 것을 추천한다. 우선 하나의 질문이 있다. 이 질문에 대답을 할 수 있다면 해당 포스트를 보지 않아도 된다. Q. 위와 같은 Table 이 있을 때 다음과 같은 Query 의 동작의 결과를 설명할 수 있는가? 보통 사람들이 생각하기에 name 의 length 가 3 일 경우 4 가 들어가서 ( 4 , 'park' ) 이 출력되고, legnth 가 3 인게 아닐 경우 1 이 들어가서 ( 1 , 'kim' ) 이 출력될 것이다 라고 개념을 잘못 잡을 수 있다. 하지만, Empty set 가 출력되었다. 이 질문에 답을 하기 위해서는 우선 Where 의 동작을 잘 이해해야한다. 필자가 직접 집필한 저서에도 기록을 해놓았다. wh..
-
SQL injection 바로 잡기 #4 문자열Wargame Site/SQL injection 2020. 3. 12. 19:55
우선 수업을 진행하면서 문자열의 직접적인 언급이 필터링되어 있는 문제에 대해서 해결책을 크게 4가지 제시했다. 0x 표현 역슬래시 표현 ike 활용 concat 활용 crackus 5 번 문제에서 다음과 같이 admin 의 사용이 막혀있는 것을 알 수 있다. 0x표현 0x 표현은 문자열로 바뀌는 것을 알 수 있다. \ 역슬래시 활용 이스케이프 문자에 해당되는 문자를 제외하고 다른 문자들 앞에 역슬래시를 넣어줌으로써 우회가 가능하다. ( '\n' 는 Line Feed 이다. ) like 활용 LOS 11 번문제 Golem 에서 더 자세히 다루고 있다. concat 활용 Concat 이라는 함수를 통해서 admin 을 나누어서 하나의 문자열을 나타낼 수 있다. 하지만, 여기서 학생들이 자주하던 실수가 있다...
-
What To Do ~~끄적끄적 2020. 3. 12. 19:07
우선 BOB 합격 이후 포스팅을 못했다. BOB 기간동안 밤새가면서 과제도 해결하고 공부해야할 방향에 대해서 좀 더 구체적으로 생각해보는 좋은 시간을 가졌다. 그것보다 BOB 친구들과 네트워크를 만족스럽게 다졌기 때문에 후회는 없다. 초창기에 'SQL injection' 을 주제로 포스팅을 시작할 때에도 인터넷에서 해답을 참조해가면서 LOS 를 한 번 격파하고 나서 개념을 스스로 정리한 뒤, 한 달이라는 기간을 두고 해답을 보지않고 스스로 격파한 기억이 난다. 글 하나를 포스팅한다는 것에 퀄리티를 위해서도 그 편이 나을 것 같았기 때문이다. 그 결과 많은 곳에서 내 블로그에 대한 호평을 해주었고, 그 자료를 근거로 단독집필도 진행했다. 또 그 책을 토대로 행사도 여럿 진행 했으며, 현재는 SUA 동아리 ..
-
시간 정보 표현 방식끄적끄적 2019. 7. 12. 08:19
GMT 와 UTC 시간을 나타내는 방식 중 UTC 와 GMT 에 대해서 알아보자. GMT 는 영국 그리니치 천문대를 기준으로 하는 평균 태양시로 1925 년부터 사용되었다. 하지만, 지구의 자전 주기가 미세하게 느려지고 있어 윤초의 개념이 도입되었고, 윤초를 보정한 국제 표준시인 UTC 가 등장했다. UTC 는 1972 년 1월 1일을 기준으로 하고 있으며, '협정 세계시' 라고도 불린다. 현재 우리나라는 UTC + 9 를 Local Time 으로 하고 있다. MS-DOS 의 시간 저장 형식 MS-DOS 의 시간 저장 형식은 날짜 (2 Bytes) + 시간 (2 Bytes) 의 구조를 가지고 있다. 날짜 Year ( 7 Bits ) Month ( 4 Bits ) Day ( 5 Bits ) 기본적으로 Ye..
-
파일시스템에 대한 끄적끄적끄적끄적 2019. 7. 11. 21:08
그냥 흐름대로 정리해놓은 메모장이다. 추후 전체적인 이해를 하고 난 뒤, 따로 섹션을 만들 예정이다. 파일 (File) 데이터(정보)를 담고있음 File Type Text File, Executable File(PE), MP3, ZIP, Document File Zip 안에 있는 형식 : pptx, xlsx ... Computer Storage Device 자기테이프, HDD, RAM, SSD 데이터의 저장 1Sector = 512 Bytes - From 1956 1 Sector = 4096 Bytes - From 2011 저장장치의 논리적 접근 Logical Block Addressing (LBA) LBA 22 : 22bit 를 Block Addressing 에 사용함 22bit > 2^22 > 4M ..
-
|Lord Of Bufferoverflow| #19 nightmare - xaviusWargame Site/BOF 2019. 7. 10. 08:22
오늘은 id;ll 로 한번에 확인했다 ^^ 이 코드를 천천히 분석해보면서 가장 궁금했던 점은 Lib 영역을 필터링하는데 " \x40 "을 사용하지 않았다는 점이다. 당연히 \x40 영역이 좀 더 포괄적인 개념이라고 생각하지만, 그 자세한 이유에 대해서 고민을 했다. 그러던 중, fgets 의 세 번째 인자 즉, stdin 를 통해 접근할 수 있지 않을까 하는 생각이 들었다. 표준입력 즉, 내가 입력한 값이 들어가는 곳이기 때문에 만약 stdin 영역이 \xbf, \x08 로 시작하지 않는다면 해결할 수 있을 것이다. 디버깅을 해보면 stdin 이 push 될 것이다. 세 번의 PUSH 중 첫 번째 push 된 값이 stdin 과 관계가 있을 것이다. 따라가다보면 ds:0x8049a3c 가 stdin 이라..