[Wargame]XSS(web) 예전에 풀어봤던 XSS를 복습삼아 다시 풀어봤다. Flag값을 알아내는 문제이다. 다음과 같은 페이지가 있고 vuln page는 XSS공격에 취약함을 alert(1);을통해 보여주고 있다. 코드를 보면 check_xss에서 쿠키값에 FLAG값을 넣어서 보내주고 있으므로 쿠키값을 알아내는 문제라고 볼 수 있다. 그리하여 location.href : url 업데이트 코드를 입력하면 다음과같이 flag값이 나온다. 정보보안/DreamHack 2022.03.29
13 [Basic RCE] 정답 문자열을 구하는 문제인것 같다. 이런식이 었다. 이번에 처음 안 사실인건데 .net(C#) 으로 구성된 프로젝트는 디버깅을 할 수가 없다. C#으로 빌드하면 중간에 코드가 만들어져 JIT컴파일러에 의해 컴파일되고 운영체제가 바로 실행한 수 있는 코드로 변환된것이다. 이런 방식을 Intermidiate Language 방식 이라한다. 따라서 dotPeek 이라는 툴을 이용하면 코드를 확인할 수 있다. 그리고 str을 출력해보면 정보보안/CodeEngn 2022.03.29
09 [Basic RCE] StolenByte 를 구하라고 하는데 StolenByte가 뭔지 잘몰라서 검색을 해보니 OEP와 비슷한것 같다. 파일을 실행했을때는 abexcrackme3가 있었는데 이를 패킹 한것같았다. 디버거에서 잡아주는 EntryPoint에 pushad가 있어 popad를 찾아서 StepOver하니 OEP를 찾을 수 있었다. 정보보안/CodeEngn 2022.03.15
05, 06[Basic RCE] 키를 찾는 문제인것 같다. 실행하면 다음과 같이 나온다. 아무런 값을 넣고 실행한뒤 나오는 경고문을 string으로 찾으면 다음과 같이 Id와 SerialNumber가 나온다. 6번문제는 Pack되어 있는 프로그램에 OEP와 Serial을 구하는 문제이다. Serial은 위와 같은 방식으로 똑같이 찾을 수 있다. OEP같은 경우에는 Ollydbg에서 이를 자동으로 찾아주지만 직접따라가 봐도 찾을 수 있다. 정보보안/CodeEngn 2022.03.13
04[Basic RCE] 디버거 프로그램을 탐지하는 프로그램인 것 같다. 그냥 실행했을때 이렇게 떴지만 디버거로 켰을때는 디버깅 당한다는 글로 바뀌었다. 디버거를 한줄한줄 실행시켜보며 Step in도 해보다 보면 아래와 같은 함수를 쉽게 볼수 있다. 1초의 Delay를 주면서 IsDebuggerPresent 함수로 디버거 여부를 확인한다. IsDebuggerPresent 함수도 내부에는 별 내용이 없었다. 정보보안/CodeEngn 2022.03.13
03[Basic RCE] 시작 부터 고비였다. 02번 문제가 프로그램이 깨져서 작동을 안하는 걸 flag를 찾는것이었는데 이번것도 그런건줄 알고 이것저것 열어봤는데 다시 읽어보니 DLL이 없는 것이었다. 그래서 해당 DLL 설치하고 다시 실행하니 잘됐다. 처음 뜨는 창을 보고 뭔가 잘못한줄 알았다. 하지만 보니 Passwort -> Password인 것같아서 그대로 실행했다. 실행하면 code 입력 창이나온다. 아마 이 코드를 찾는 문제인것같다. 비슷한 유형의 문제를 리버싱입문 책에서 봤기 때문에 같은 방향으로 해결할 수 있을 것 같았다. asdf입력하니 틀렸다고 나온다. 디버거로 열어보고 실행해 보았다. 순차적으로 진행하면서 보고 있었는데 생각해보니 string을 검색하면 됬던 것이었다. 아래에 틀렸을때 실행되는 부분이 나와 .. 정보보안/CodeEngn 2022.03.13
지뢰찾기 게임해킹 최종 실습으로 먼저 가상환경으로 윈도우7을 설치 했다. 예전에 우리가 봤던 지뢰찾기 게임을 볼 수 있다. 책에서는 먼저 작동 방식을 가정하고 시작한다. 예를들자면 시간을 조절하는 함수 같은경우에 setTimer를 사용했다는 가정이다. ollydbg로 지뢰찾기를 실행하고 함수 목록을 보면 setTimer가 있다. 이 주소 부터 시작하면 setTimer에 들어가는 매개변수부터 본다면 Timer에 uElapse가 시간의 간격을 조절한다. 1000일때 1초를 의미한다. 디버거에서도 보면 그에 해당하는 인자가 들어간다. 그래서 이 1000을 5000으로 바꿔준다면 사진으로는 안느껴지겠지만 1초가 5초에한번 씩 흐른다. 다음으로 해볼 내용은 지뢰가 있는 위치를 만드는 맵핵을 만드는것이다. 이것을 만들기 위해서는 게.. 정보보안/리버싱 입문 2022.03.06
22.03.04 The Great Dane 흑의 차례로 시작한다. 룩으로는 퀸으로 폰이 지켜지고 있어 체크를 못넣어 퀸체크를 넣어야할것같다. 하지만 체크를 넣으면 룩이 죽는다. 이 전개는 퍼즐에서 많이 본 전개이다. 기물을 희생해서 킹을 끌어와서 체크메이트 하는 것이다. 맞는것같다. 퀸체크를 넣으면 킹이 도망갈 구멍이 생기기 때문에 폰을 미끼로 다시 끌어온다. 퀸 체크 다음 수는 퀸으로 체크를 넣는것이아니라 폰으로 넣어야 강제수가 생긴다. 마지막으로 체크메이트 체스/Daily Puzzle 2022.03.04