본문 바로가기

시스템/pwnable.kr

blackjack

blackjack


백만장자가 되면 flag


포인트

1. betting 함수  

2. 정수 overflow


betting 함수


betting 함수를 보면

gameBet > gameCash일 때 경고만 주고 다시 입력하게 한 후

다시 검사를 하지 않아 그 돈으로 배팅을 할 수 있게 된다.


정답


1. betting 함수를 이용해 배팅금액을 크게 한 뒤 게임을 이긴 후 획득

 




2. 정수 overflow를 이용해 게임에서 진 후 배팅한 금액만큼 획득

ex. -1000000000 배팅 -> -(-1000000000) 획득

 



참고


                                                                             1. system("cls") : 함수를 만나기 전까지 출력한 것을 모두 없앤다.

                                                                                                   메뉴 출력 바로 위에 해주면 깔끔


                                                                             2. 정수 overflow : 정수의 범위를 벗어나면 입력된 숫자가 음수(쓰레기값)로 변하며 반대인 결과를 낳게된다.

                                                                                         * 정수의 범위: -2,147,483,648 ~ 2,147,483,647

                                                                                   ex.

                                                                                       




'시스템 > pwnable.kr' 카테고리의 다른 글

cmd1  (0) 2018.11.05
lotto  (0) 2018.11.05
coin1  (0) 2018.11.05
shellshock  (0) 2018.11.05
mistake  (0) 2018.11.05