일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 웹해킹
- kotest
- hackctf
- 스프링 배치
- Batch
- node.js
- spring Batch
- docker
- 파이썬
- pwnable.xyz
- gcp ci/cd
- Python
- gcp cloud build
- gcp
- 리버싱
- 네트워크
- webhacking.kr
- 보안
- 백준
- 웹보안
- 회고
- 포너블
- 시스템 해킹
- 사이버보안
- Baekjoon
- nodejs
- programmers
- cloud run
- sequelize
- 프로그래머스
목록hackctf reversing (2)
uju's Tech
파일 확인 해보니 elf 64 비트 실행 파일 임을 알았다. chmod 777 권한을 부여하여 실행해보자! 실행 실행해보니 input을 받고 그에따라 값을 내보내는것 같다. 그렇다면 조건문에서 내 input과 어떠한 값을 확인하고 분기하여 값을 출력함을 알 수 있다. 먼저 디버깅을 해보자~! main 디버깅 strcmp비교해서 분기 strcmp에서 비교 후 분기하는것을 확인할 수 있다. 브레이크 포인트를 main+185에 걸어주자1 r 으로 실행! 실행화면 내가 입력한 dddddd와 비교하는 값을 레지스터를 통해 확인하였다. 레지스터 확인 얼핏 보니 OfdlDSA|3tXb32~X3tX@sX`4tXtz 랑 비교를 해서 같으면 good game을 출력해준다. goodgame! 그렇다면 여기서 우리는 비교하는..
https://uju-tech.tistory.com/25 위 링크에 대한 쉽게 푸는 풀이이다.. 정공법(???) 으로 푼 풀이..?이고 이번에는 약간 쉽게가자!풀이입니다! main함수 main함수를 확인해보면 이 부분에서 1이어서 0과 비교했을 때 같지 않아서 flag를 뛰어넘었습니다!! 라는 문구가 띄워진다.. 그렇다면 저 1을 0으로 바꾸면?? 바로 flag가 출력될것이다!! 그럼 ida에서 바꿔서 flag를 바로 띄워보잣!! ida에서 값을 바꾸고 fetch한다음 실행할 것이다. 바꿀 값에서 오른쪽 마우스를 눌러 synchronise with hex view를 누르자. hexview클릭! 그리고 hexview로 이동! 이동하면 해당 변수의 부분이 초록색으로 나타내준다. 수정 후 모습 수정을 하려면 ..