'Wargame'에 해당되는 글 454건


codeengn basic 16번 문제다.

흠... 문제자체는 14,15번과 또 똑같다. 이번엔 내부가 좀 다른 느낌이었으면 좋겠다.

파일부터 실행해보자. 별다른건 없는 것 같다. 뭔가 불길하다 또 같은 문제일거같은 느낌..ㅠ

패킹은 따로 안되어 있고 그대로 열어보자.

설마 했는데 또 같은 흐름...하.. 아무리 basic이라도 너무한거 아니냐 ㅠ 

풀이방법은 이전에 2번이나 했기 때문에 따로 설명은 안하겠다. 그대로 입력해주면 된다.


복습 하난 기가 막히게 시켜주는듯..


'Wargame > CodeEngn' 카테고리의 다른 글

code engn basic 18번  (0) 2018.02.04
code engn basic 17번  (0) 2018.02.04
code engn basic 15번  (0) 2018.02.04
code engn basic 14번  (0) 2018.02.04
code engn basic 13번  (0) 2018.02.04
블로그 이미지

JeonYoungSin

메모 기록용 공간

,

codeengn 15번 문제다.

흠.. 문제자체는 14번이랑 같은거 같다. 내부를 봐야할 것 같다.

먼저 파일을 실행해보자.

군말없이 패킹확인하고 열어보자. 패킹은 따로 안되어있다. 그대로 열면 될 것 같다.

...?
진짜 설마 했는데 14번이랑 다른게 없다. 하아.. 이전이랑 같이 그대로 입력해봤다.


딴건 몰라도 가볍게 아무 생각없이 풀기엔 딱 좋은 난이도의 문제들 인 것 같다.


'Wargame > CodeEngn' 카테고리의 다른 글

code engn basic 17번  (0) 2018.02.04
code engn basic 16번  (0) 2018.02.04
code engn basic 14번  (0) 2018.02.04
code engn basic 13번  (0) 2018.02.04
code engn basic 12번  (0) 2018.02.04
블로그 이미지

JeonYoungSin

메모 기록용 공간

,

code engn basic 14번 문제다.

파일부터 실행해보자. 뭔가 입력하면 될 것 같다. 귀엽네 근데 저남자.

패킹부터 확인하고 열어보자. UPX방식으로 패킹되어 있어 언팩 후 열어보았다.

처음엔 하나하나 분석안하고 큰 흐름만 보고 풀었는데 그냥 성공문위에 분기문 조건에 해당하는 CMP 부분만 봐도 답이 너무 쉽게 나왔다. 

네임이 codeEnge랬으니 입력해주고 시리얼값은 대충 입력해서 CMP부분에 BP걸고 돌려봤다.
EAX값이 16진수인데 10진수로 변경해보면 내가 입력한 Serial 값이 나온다. 그럼 ESI값을 구해 내 시리얼 입력값으로 입력해주면 된다. 


실제로 한번 입력해봤다.

성공!

근데 문제풀고 중간에 네임값으로 시리얼값 구하는 알고리즘부분을 해석안하고 넘어간게 뭔가 찝찝했다.

그래서 그냥 가볍게 볼려고 했다가 거의 1시간이상 삽질.... 잘 해석이안된다 ㅠ 미천한 내 어샘블리 실

력아..결국 패스.. 출제자 의도가 정확히 뭔진 몰라서 내가 제대로 풀고있는건지는 잘 모르겠다. 너무 쉽

게쉽게가려하는거  같아서 뭔가 찝찝하긴 하다만.... 얼른 basic 후딱풀고 머리짜내는 문제들로 넘어가야겠다.


'Wargame > CodeEngn' 카테고리의 다른 글

code engn basic 16번  (0) 2018.02.04
code engn basic 15번  (0) 2018.02.04
code engn basic 13번  (0) 2018.02.04
code engn basic 12번  (0) 2018.02.04
code engn basic 11번  (0) 2018.01.28
블로그 이미지

JeonYoungSin

메모 기록용 공간

,

code engn basic 13번 문제다.

파일부터 실행해 봤다.

흠 키 값을 구해야 할 것 같다. 일단 패킹되있는지부터 확인하고 열어보자.

흠..따로 패킹은 안되있는 것 같다. 그냥 열어보니 실행이 안된다..?응?

뭔가 싶어서 Microsoft Visual C# 실행파일 형식에 대해 검색을 좀 해봤다. 찾아보니 실행하려면  .NET

Framework가 필요한 것 같다. 설치를 하려보니 이미 설치가 되어있다고..?뭐지 다시 또 찾아봤다. C#

은 애초에 올리디버거에서 잘 안열린다는 것 같다. 대신 디컴파일러로 유명한  .NET Reflector라는 프로

그램이 있단다. 다운받아보자.

http://www.red-gate.com/products/dotnet-development/reflector/

처음써보는 프로그램이라 프로그램 자체에 대한 자세한 설명은 궁금하시면 따로 검색해주는게 좋을 것 같다.

간단하게 설명해드리면 처음에 파일을 연다음 file탭에 export  Assembly source code를 누르면 다음

과 같이 ConsoleApplication3 라는게 생긴다. 그러면 우클릭해서export source code를 클릭해주면

코드가 생기는데 저기서 메인코드를 찾아주면 된다.



프로그램을 열고 파일을 연다음 다음과 같은 메인 코드를 찾았다.

특정 암호화방식을 거쳐 planText()라는 걸 만들어 내는 것 같다. 저걸 알아내려면 저 코드를 해석해야

되는데 저 함수 동작과정을 알아내긴 너무 귀찮아보인다. 그렇다면 결국 구하고자 하는건 PlatinText()

값이기 때문에 코드만 조작할 수 있다면 Console.WriteLine(plainText);를 변수 계산된 곳 밑에 넣어주

면 값을 볼 수 있을 것 같다. 그렇다면 코드를 수정할 수 있는 방법을 찾아야되는데 이부분은 처음다뤄보

는 프로그램이라 검색을 좀 해봤다. 그냥 추출한 소스코드를 visual studio에서 열면 visual측에서 기본

적으로 C# 파일 호환이 가능해 이를 활용하면 될 것 같다.

Console.WriteLine(plainText); 코드를 main문에서 바로 실행되도록 적절한 위치에 넣어봤다.

다음과 같이 나온다.

실제로 입력해주면 성공하게된다.


'Wargame > CodeEngn' 카테고리의 다른 글

code engn basic 15번  (0) 2018.02.04
code engn basic 14번  (0) 2018.02.04
code engn basic 12번  (0) 2018.02.04
code engn basic 11번  (0) 2018.01.28
code engn basic 10번  (0) 2018.01.28
블로그 이미지

JeonYoungSin

메모 기록용 공간

,

codeengn basic 12번 문제다.

키 값을 구하고 MessagBox 출력 부분을 찾아서 HexEdit로 수정하면 될 것 같다.

파일을 다운받고 실행해봤다. 체크를 눌러도 별다른 반응이 없고 about 누르면 그냥 무슨 정보 같은게

뜬다.

파일 타입을 확인해보니 패킹이 되어있지는 않다.

코드는 간단하다. 분기문 전에 CMP문에서 값이 어떻게 비교되는지 보기위해 BP를 걸고 돌려봤다.

처음에는 ASCII코드로 나와있는 저 값이 키 값인줄 알고 뭔가하고 보다 유심히 보니 키 값은 아니었고

EAX값을 알아내는게 중요했는데 저 PUSH 3번 들어간 부분에서 어떤 알고리즘 형식으로 EAX값이 계

속 변하고 있었다. 그래서 이 알고리즘을 해석해보려고 안간힘을 썼으나 잘 모르겠다..ㅡㅡ 근데 뭐지이

거 알고리즘부분 다 지나고나면 값이 원래대로 돌아온다..?응? 뭐한거지 쓸데없이 삽질한 기분이다.휴...

하 .. 뭔가이상하다했다..

그럼 EAX, 7A2896BF비교가 핵심이니 이를 활용하면 될 것 같다. 근데 10진수로 준 값이 16진수인 7A2896BF랑 비교되므로 7A2896BF값을 10진수로 바꾼 후 이 값을 입력해주면 키값은 구할수가 있다.

흠 쉽다.. 그럼이제 헥사에디터로켜서 저부분을 키값으로 바꾸기만 하면 될 것 같다.


다음과 같이 바꿔주면 된다.

이제 정답입력하면 되는데 여기서 필요한 부분은 다 구했는데  null 처리하는 부분이랑 주소 범위 적는

방식으로 답 넣으라고해서 ㅡㅡ20분인가 헤맴....아나.. 어차피 필요한 거 다구했는데 정답 제출하는건

좀 심플하게좀 내주지 휴.. 암튼 역시나 간단한 개념 다루는 문제였다.


'Wargame > CodeEngn' 카테고리의 다른 글

code engn basic 14번  (0) 2018.02.04
code engn basic 13번  (0) 2018.02.04
code engn basic 11번  (0) 2018.01.28
code engn basic 10번  (0) 2018.01.28
code engn basic 9번  (0) 2018.01.28
블로그 이미지

JeonYoungSin

메모 기록용 공간

,

root-me LDAP injection - blind

2018. 1. 29. 00:09

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

root-me Local File Inclusion

2018. 1. 28. 22:16

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

root-me HTTP cookies

2018. 1. 28. 22:07

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

root-me CRLF

2018. 1. 28. 21:46

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.