SMALL

전체 글 117

[Pwnable.kr] blackjack

[문제] [풀이] 문제에 주어진 url에 접속해보면 c코드들이 출력된다. https://cboard.cprogramming.com/c-programming/114023-simple-blackjack-program.html Simple Blackjack Program Replies: 10 Last Post: 09-09-2004, 05:48 AM cboard.cprogramming.com int betting() //Asks user amount to bet { printf("\n\nEnter Bet: $"); scanf("%d", &bet); if (bet > cash) //If player tries to bet more money than player has { printf("\nYou cannot b..

Wargame/pwnable.kr 2021.08.12

[Webhacking.kr] Old-19

[문제] [풀이] 문제에 주어진 대로 admin으로 접속해보면 다음과 같은 메시지가 출력된다. 이 때 cookie 값을 확인해보면 phpsessid를 확인할 수 있다. admin외에 다른 값(1)을 넣어보면 hello 1과 같은 메시지를 출력한다. 그리고 admin을 넣었을 때와 달랐던 점은 userid가 생성된다는 것이다. 1을 넣었을 때 id가 YzRjYTQyMzhhMGI5MjM4MjBkY2M1MDlhNmY3NTg0OWI%3D로 표현되었다. 이 외에도 다른 값을 넣어 보았는데, 마찬가지로 userid가 생성되는 것을 볼 수 있었다. MDNjN2MwYWNlMzk1ZDgwMTgyZGIwN2FlMmMzMGYwMzQ4NjVjMGMwYjRhYjBlMDYzZTVjYWEzMzg3YzFhODc0MThjZTRiMTZ..

[Webhacking.kr] Old-54

[문제] [풀이] 중요 코드를 살펴보면 다음과 같다. 그 중에서도 function answer 함수가 문제 풀이에 핵심적인 역할을 한다. 한 글자씩 표현되는 값을 중첩되게 표현하기 위해서는 aview.innerHTML=x.responseText; 부분을 aview.innerHTML+=x.responseText; 로 변경해주면 된다. if(x.responseText=="") aview.innerHTML="?"; 이 코드는 삭제해도 무방하다. 공백을 확인하기 위해서 넣어줬는데, 그러기 위해서는 if(x.responseText=="") aview.innerHTML+="?"; 로 변경해주면 된다. 변경한 값을 console 창에서 변경해준 뒤에 다시 페이지를 실행해보면 flag를 획득할 수 있다. [핵심] wi..

[CodeEngn] Basic RCE L09

[문제] [풀이] 문제를 실행하면 error 메시지 출력 후 종료된다. 이에 IDA를 통해 UPX 패킹이 되어 있는 것을 확인할 수 있었고, unpacking을 진행한 뒤 ollydbg로 실행하였다. 6A0068002040006812204000 [핵심] StolenByte란? : 훔친 바이트란 의미, 프로그램의 한부분의 코드를 훔쳐내어 다른 부분으로 옮겨진 코드 - 주로 옮겨지는 코드는 엔트리 포인트위의 몇개의 코드임 - 옮겨진 코드들은 OEP 주소로 점프하기 전에 위치에서 PUSH 됨. -> 주로 OEP 주소의 코드를 따로 분리해서 OEP로 점프 직전에 PUSH로 넘겨주 - 패커가 이동시킨 코드의 윗부분 (보통 OEP 로부터 몇 개의 명령어) - 프로그램을 패킹 시 확인 가능. - 숨겨진 코드를 다시 ..

Wargame/CodeEngn 2021.08.11
LIST