본문 바로가기
반응형

전체 글992

디버깅 환경 디버깅 가능한 환경이 6가지 있다. WinDbg Preview Windows Debugger (WinDbg) Kernel Debugger (KD) NTKD Console Debugger (CDB) NT Symbolic Debugger (NTSD) WinDbg Preview WinDbg Preview는 현대적인 비주얼, 빠른 윈도우, 본격적인 스크립팅 경험, 확장 가능한 디버거 데이터 모델 전면 및 중앙으로 구축된 WinDbg의 마지막 버전이다. WinDbg Preview는 WinDbg와 동일한 기본 엔진을 사용하므로 익숙한 모든 명령, 확장 및 워크플로는 이전과 동일하게 작동한다. 더 많은 정보는 Debugging Using WinDbg Preview 에서 보면된다. WinDbg WinDbg는 유저모드,.. 2020. 12. 29.
old-54 풀이 페이지를 열면 9 부분자리에 Flag 값이 한자리씩 노출된다. 그런데 금방 없어져서 놓치게 된다. function run(){ if(window.ActiveXObject){ try { return new ActiveXObject('Msxml2.XMLHTTP'); } catch (e) { try { return new ActiveXObject('Microsoft.XMLHTTP'); } catch (e) { return null; } } }else if(window.XMLHttpRequest){ return new XMLHttpRequest(); }else{ return null; } } x=run(); function answer(i){ x.open('GET','?m='+i,false); x.send.. 2020. 12. 26.
old-47 풀이 페이지를 보면 메일 제목만 적어서 보내는 기능이 존재한다. 버튼을 누르면, 메일 헤더와 데이터를 보내는 모습이 보인다. 그런데 데이터 부분에 flag를 전송한다. 그렇다면 헤더 부분을 조작하여 내 메일 주소로 보내면 flag를 받을 수 있것 같다. 메일에서 참조(Cc: Carbon Copy) 기능을 사용해서 내 메일도 받을 수 있게 subject와 같이 보낸다. 응답 값을 보면 RCPT TO 부분에 내 메일까지 첨부된 것을 볼 수 있다. 메일을 확인해보면 이렇게 Flag가 왔다!! Flag FLAG{wasted_too_much_time_damn} 2020. 12. 26.
old-33 풀이 1단계 문제 페이지를 열면 링크가 하나 주어진다. 해당 페이지를 열면 소스코드가 주어지는데, 여기서 조건을 맞추면 다음 링크가 주어진다. import requests URL = 'https://webhacking.kr/challenge/bonus-6/' # # 33-1 url_1 = URL + '?get=hehe' res = requests.get(url_1) print(res.text) 2단계 주어진 링크를 받아서 들어오면 또 다른 문제가 주어진다. # 33-2 url_2 = URL + 'lv2.php' datas = { 'post': 'hehe', 'post2': 'hehe2' } res = requests.post(url_2, data=datas) print(res.text) 3단계 # 33-.. 2020. 12. 24.
coin1 설명 Mommy, I wanna play a game! (if your network response time is too slow, try nc 0 9007 inside [pwnable.kr](http://pwnable.kr/) server) Running at : nc [pwnable.kr](http://pwnable.kr/) 9007 시작하면 하는 방법이 나온다. 설명을 해석해보면 금화를 주었다. 동전 중 위조품이 하나 있다. 위조품은 실제 동전과 똑같다. 그러나, 위조품은 실제 동전과 무게가 다르다. 실제 동전은 무게가 10이다. 가짜 동전은 무게가 9이다. 저울을 이용해서 가짜 동전을 찾는데 도움이 될 것이다. 만약 가짜 동전을 100전 찾으면, 너에게 상을 줄 것이다. 참고로, 60초 주어진다.. 2020. 12. 23.
함수의 오버로딩 (Overloading) 컴파일에서 함수를 오버로딩하는 과정 함수의 이름은 같은데 매개변수, 리턴타입 등의 특징은 다른 여러개의 함수를 만들 수 있는 기능 자신과 타입이 정확히 일치하는 함수를 찾는다. 정확히 일치하는 타입이 없을 경우, 형변환을 통해서 일치하는 함수를 찾는다. char, unsigned char, short는 int로 변환 unsigned short는 int의 크기에 따라 int 혹은 unsigned int 로 변환된다. float은 double로 변환된다. enum은 int로 변환된다. 2단계까지도 일치하는 것이 없다면 임의의 숫자(numeric) 타입은 다른 숫자 타입으로 변환 (ex float -> int) enum도 임의의 숫자 타입으로 변환된다. (ex enum -> double) 0은 포인터 타입이나.. 2020. 12. 21.
반응형