본문 바로가기
  • True knowledge exists in knowing that you know nothing. -Socrates-

분류 전체보기137

webhacking.kr 14번 문제 개인적으로 매우 간단해서 풀기 좋았던 문제 입니다.javascript문제 인데요. 아래의 그림을 참고해봅시다.현재 URL을 ul이라는 변수에 저장합니다.그리고 그 ul 변수에서 ".kr"의 위치를 ul에 저장시킵니다.그 위치에 *30한 값을 ul에 다시 저장합니다.ul의 값과 입력 받은 값이 같을 때 password를 출력해 줍니다. 브라우저 console을 이요하면 쉽게 답을 알 수 있습니다.답은 510인데요 여기서 510을 입력하고 Enter를 누르시면 아마 답이 출력이 안될 것 입니다.마우스로 check를 클릭해 주시면 됩니다. (javascript) (답은 소스코드에 나오듯이 510*510)입니다. 2017. 6. 13.
webhacking.kr 12번 문제 chrome console를 이용하여 쉽게 소스 코드를 확인 할 수있습니다. url을 이용해서 여러가지 연산을 하는데요하나 하나 다 해석해도 좋지만, chrome의 console기능을 이용해서 쉽게 문제를 풀 수 있습니다. 해석 enco='';enco2=126;enco3=33;// 위는 변수에 각각을 대입하는 것입니다.ck=document.URL.substr(document.URL.indexOf("=")) 순차적으로 해석하면 document.URL.indexOf("=")는 현재 URL에서 "=" 문자열의 인덱스 값을 가져오는 것입니다.하지만 URL에 "="가 존재 하지 않으므로 -1doucument.URL.substr(-1)은 1입니다.ck에는 1이 들어가게 됩니다. 아래 if문에서 ck를 == 연산자를.. 2017. 6. 13.
webhacking.kr 11번 문제 풀이 안녕하세요 :) webhacking.kr 11번 문제를 풀어보도록 하겠습니다. 일단 문제는 아래의 정규식에 알맞게 출력하면 됩니다. 아래와 같은 정규식을 맞추기 위해서는 정규식을 공부해야 하는데요 https://wikidocs.net/4308 여기서 정규식을 보고 공부하시면 됩니다.테스트는 http://www.regular-expressions.info/javascriptexample.html 저는 이런식으로 정규식을 이용했습니다. 2017. 6. 13.
LOB 8 vampire -> skeleton 안녕하세요 :) 문제 tip스텍을 다시 천천히 보자 코드 쓱싹 변경 사항ultra argv hunter! argv에 있는 모든 내용을 삭제합니다. ㅠㅠ 하지만 심볼릭 링크(shell code)를 걸어 놓고 gdb를 통해서 스텍을 훑어 보면 argv 말고도 다른 공간에 argv[0]의 내용이 저장되어 있습니다. (왜 적제 되는지는 잘 모르겠습니다 ㅠㅠ.) 위는 core dump를 통해서 실제 스텍 주소를 찾은 것입니다. (심볼릭 링크 포함) shell 냠냠:) 2017. 6. 12.
LOB 7 troll ->vampire 안녕하세요 :) 문제 tip 1. 버퍼에 엄청 많은 값을 입력하면 주소는 어떻게 변할까? 코드 쓱싹변경 사항 if(argv[1][46]=="\xff")이면 종료 시킨다. 이번 문제는 단순하면서도 재미있습니다.지금까지 풀었던 문제에서 ret에 담는 주소는 bffff~와 같은 형태였습니다.근데 argv[1][46]이 \xff이면 프로그램을 종료시킵니다.이를 우회 할 수 있는 방법은 엄청 많은 데이터를 입력 하여 주소를 정상적으로 \ff가 아니게 만들면 됩니다. (tmp 폴더에 복사 후 core dump를 통해 주소 값을 알아냅니다 :> ) 위와 같이 NULL을 100000개 넣어주면 0xbffe~ 주소까지 채울 수 있습니다. shell 쓱싹 :) 2017. 6. 12.
LOB 6 orge->troll 안녕하세여 :) 문제 tip 1. 스텍에 올라가는 것들은 무엇이 있을까2. 심볼릭 링크란?$ln -s ./troll ./link_troll 코드 쓱싹 변경 된 사항 argv[1]!=2 가 되면 프로그램을 종료시킵니다. /tmp 폴더에 복사한후 gdb를 통하여 스텍에 올라와 있는 값들을 확인 합니다.그러면 아래와 같이 /tmp/./troll이 보이시나요 ? (gdb) x/1000s $esp-1000 이와 같이 argv[0]이 stack에 올라간다는 것을 알 수 있습니다.페이로드 구조는 argv[0]+A*44+"shell code 주소" 여기서 argv[0]은 심볼릭 링크를 걸어준파일 명입니다.심볼릭 링크는 윈도우에서 바로가기 라고 생각하시면 됩니다. core 파일을 통해서 argv[0]의 주소를 찾을 수 .. 2017. 6. 12.