본문 바로가기

4-1. 2025-1 심화 스터디/워게임 도장 깨기

(4)
250513 워게임 도장깨기 [Web]old 15들어가자마자 확인되는 화면이다. 확인을 누르면 Webhacking.kr의 메인 화면으로 돌아가게 된다 개발자도구를 확인했으나 아무것도 확인할 수 없었다. 소스코드 확인이 필요할 것 같다. wget [웹사이트 주소] 형식으로 입력해서 코드를 다운로드한다.cat으로 index.html 파일을 읽어보면 document.write("[Get Flag]");URl https://webhacking.kr/challenge/js-2/ 주소 끝에 ?getFlag를 입력하면 문제 해결 가능하다. getFlag로 입력했는데 계속 getflag로만 연결된다. 웹 사이트 주소를 복사해서 연결(ctrl을 누른 상태로 주소 클릭)해준다. 정확한 주소가 입력되면서 해결했다는 메시지가 출력되는 것을 확인할 수..
[3주차] 250401 워게임 도장 깨기 Pwnable 문제 풀이 후 공유 1. fd문제ssh 접속ssh fd@pwnable.kr -p2222 ls -alfd, fd.c, flag 확인flag는 제3자 권한이 없어서 권한 없음 fd.c→ 해당 파일(?)을 실행할 때 같이 값을 입력하며 0x1234와 뺄셈 후 fd의 저장→ 저장된 fd가 read 함수의 파일 디스크립터로 사용→ 비교 string과 같은 입력값을 입력 시 flag값 확인 가능→ fd 저장 값을 0으로 만들어 준 후 read 함수 입력값으로 LETMEWIN 입력 0x1234(16진수) → 4660(10진수) flag 확인good job :) 출력 아래 flag 값 출력됨!2. collision문제해당 문제는 해쉬 충돌 문제이다. ssh 접속하고 ls -al 명령어 입력 vim 사용하..
[2주차] 250326 워게임 도장 깨기 2주차- 리버싱 문제 풀이 후 공유했다. 문제 1. rev-basic-4문제 설명 문제 풀이main 디컴파일 한 모습sub140001000 함수에 따라 correct 와 wrong이 달라지므로 이곳으로 가본다. 이동 후 디컴파일 한 모습byte_140003000으로 들어가 보았다. basic-rev-3와 비슷하게 16진수로 표현된 것들이!!!!sub~~에 있던 if문을 변형해 코드를 짜면 될 것 같았다. if ( ((unsigned __int8)(16 * *(_BYTE *)(a1 + i)) | ((int)*(unsigned __int8 *)(a1 + i) >> 4)) != byte_140003000[i] ) 이 부분 해석이 어려웠다.a1+i에 있는 바이트 값을 16을 곱함 (4비트 왼쪽 시프트)a1+i값..
[1주차] 250318 워게임 도장 깨기 웹해킹 문제를 풀고 공유했다. 문제1. Out of money 서버 접속 시 화면  이름 입력한 후 로그인 - 산타 사설 거래소: 드핵 코인을 빌리거나 드핵 코인을 드냥 코인 또는 드멍 코인으로 바꿀 수 있음 - 드림 유동성 풀: 담보를 내고 드멍 코인을 빌리거나 드냥 코인이나 드핵 코인을 예치할 수 있음   이 문제의 코드를 살펴보면 담보로 돈을 빌릴 때 한번에 빌릴 수 있는 값만을 설정하고 몇 번 빌리는 것에 대해서는 아무런 제약을 걸어놓지 않은 것을 확인할 수 있음  Flag 구매를 클릭하여 플래그를 알 수 있음드핵 코인이 부족하거나 빌릴 돈이 남아 있을 때는Flag 구매 클릭하면 '드핵 코인이 없어욧!', '빚을 먼저 갚으세욧!'과 같은 메시지 출력  먼저 3333 드핵 코인만큼 빌림담보를 낼 때..