학습
워게임
CTF
커뮤니티
랭킹
스토어
커리어
로그인
|
기업 서비스
Home
학습
워게임
CTF
커뮤니티
랭킹
기업 서비스로 이동하기 >
LEVEL 3
clamshell coding
reversing
2085
215
2021.02.25. 10:00:00
로그인 하고 문제 풀기
문제 정보
풀이
50
난이도 투표
26
질문
17
최근 풀이자
215
댓글
34
해당 문제는 Dreamhack CTF Season 1 Round #5 에 출제된 문제입니다.
문제 설명
Description
드림이가 학교에서 숙제를 받았습니다.
간단한 수학 문제인데, 쉘코딩을 통해 풀어주세요!
Translate
난이도 투표
26
문제 풀이를 완료한 후에 피드백을 제출할 수 있습니다.
투표 결과
전체 투표 로그
1 / 6
ín
대표 업적 없음
LEVEL 3에 투표했습니다.
20일 전
Look_Back
시스템 해킹 전문가
LEVEL 3에 투표했습니다.
1개월 전
파란발바닥
리버싱 입문
LEVEL 3에 투표했습니다.
4개월 전
상상이
.HACK 2025 참가자
LEVEL 4에 투표했습니다.
4개월 전
PureCrow
강의 수강: 1
LEVEL 3에 투표했습니다.
5개월 전
질문
17
문제 풀이에 어려움이 있으신가요?
커뮤니티에서 문제에 대한 질문하고 답변 얻기
Segmentation fault (core dumped)
Segmentation fault (core dumped)이 오류가 자꾸 발생하는데 어떻게 하면 좋을까요 ㅠ
현우는 5살
답변
1
추천
0
4년 전
runner 디버깅시 segmentation fault 질문입니다.
runner를 gdb를 이용해서 제 쉘코드가 잘 작동하는지 살펴 볼려고 했습니다만 어떠한 쉘코드를 넣어도 쉘코드 첫 실행 구문부터 Program received signal SIGSEGV, Segmentation fault. 발생하며 멈춰버리더군요. 그래서 제 쉘코드가 잘못됐나 싶어서 자주 사용되는 shellcode들도 가지고 와서 넣어서 실행해봤는데 이 코드들도 마찬가지로 shellcode 첫줄 부터 Program received signal SIGSEGV, Segmentation fault를 발생하면서 멈춥니다. 그래서 컴파일 할 때 스택에 실행 권한을 안 준건가 싶어서 확인해 봤지만 make파일에 -z exestack 옵션이 있었으며, runner파일 자체도 /proc/pid/maps로 확인했을때 stack에 실행권한이 있는 것을 확인했습니다. 이제 더 이상 구글 검색과 제가 가지고 있는 지식으로는 못 풀 것 같아 질문을 올리게 되었습니다. 이 문제를 어떻게 해결하면 좋을까요? (수정) 질문용 1.PNG 계산식을 풀어내는 코드를 c언어로 만든것이고 질문용 2.PNG 위 코드를 gcc -c로 오브젝트파일을 만들어서 objdunp -d로 코드를 뽑아내서 답안을 제출했을때의 사진입니다.그래서 왜 작동하지 않나 궁금해서 디버깅을 실시하였습니다. --답안 코드 -- f30f1efa554889e54883ec20897dec488975e08b45ec83e8028945f8c745f400000000c745f000000000eb678b45f048984883c002488d14c500000000488b45e04801d0488b004889c7e8000000008945fc8b4dfc4863c14869c05655555548c1e8204889c289c8c1f81f89d629c689f089c201d201c289c829d085c075088b45fc0145f4eb088b45fc01c00145f48345f0018b45f03b45f87c918b45f44863d04869d21f85eb5148c1ea2089d1c1f9059929d189ca6bd26429d08945f48b45f4c9c3 질문용 3.PNG 위 사진처럼 그냥 코드 첫줄 부터 segementation fault를 발생하였습니다. 질문용 4.PNG 제코드가 잘못된건가 싶어서 그냥 ret만 하는 코드 c3 만을 넣었는대도 그냥 segementation fault가 발생하였습니다.
보라색맛 감자
답변
3
추천
0
4년 전
.
.
12341234
답변
1
추천
0
4년 전
return 값만 수정해서 문제 접근하려고 합니다.
필터링되어있을까요..
IMHOST
답변
1
추천
0
4년 전
왜 이 코드로는 문제가 안풀릴까요?
nt myAtoi(char* str) { int res = 0; for (int i = 0; str[i] != '\0'; ++i) res = res * 10 + str[i] - '0'; return res; } int main(int argc, char *argv[]) { int x, i, sum = 0; for(i = 2; i < argc; i++) { x = myAtoi(argv[i]); if(x % 3 == 0) sum += x; else sum += x * 2; } return sum % 100; } 이 코드를 사용하면 -11 값이 반환되는데 뭐가 문제인지 잘 모르겠습니다.
abcde
답변
1
추천
0
4년 전
hex를 int로 변환하기
hex string이 주어졌을 때 앞에서부터 두 숫자씩 뽑아서 그것들을 한 int로 저장해서 연산을 처리하게 되는데, 이 hex string에서 숫자 두 개 뽑는 것을 코드로 어떻게 구현할 수 있는지 궁금합니다. 한 마디로 b812000000c3가 있을 때, b8을 int 하나로 만들고 연산하고, 12를 int 하나로 만들고 연산하는 것을 잘 모르겠습니다 ㅠ (이 문제 못 풀고 있어서 못 넘어가고 있어요 ㅠ)
turbulencia1900
답변
1
추천
0
4년 전
host1.dreamhack.games sent an invalid response. 에러가 떠요
This page isn’t working host1.dreamhack.games sent an invalid response. ERR_INVALID_HTTP_RESPONSE 이렇게 뜨면서 접속이 안되네요..
blackbearwow
답변
1
추천
0
4년 전
argv 만지는 방법
제 어셈블리 지식상 2번째 argument는 rsi 레지스터에 저장되는걸로 알고있는데 수열을 접속하는데 어려움을 격고 있네요... argv를 쉘코드내에서 어떻게 interact하는지 힌트 주실수 있을까요?
RaccoonLover
답변
1
추천
0
4년 전
환경? 관련 질문입니다.
안녕하세요, 문제를 어느정도 파악하고 코드를 작성하려고 하는데 궁금한 점이 있어서 여쭤봅니다! 제가 맞게 접근했는지는 잘 모르겠으나 server.py 파일의 answer 계산 과정을 어셈블리코드로 작성하여서 바이너리를 input으로 주면 될 것 같은데 이때 서버가 x86인지 x64인지 정보가 없어 함수로 부터 넘어온 argument를 받아올때 스택으로부터 받아와야 하는지, 혹은 레지스터로부터 받아와야 하는지 등 어떤식으로 코드를 작성해야할지 잘 모르겠습니다. 혹시 이런거를 파악하는 방법이 있을까요? (아니면 애초에 뭔가 잘못 접근하고 있는걸까요...?) 추가적으로 쉘코드 작성하는 것이 처음이라 조사를 해보니 (1) C언어로 실행파일 작성후 gdb로 분석 (2) (1)의 결과를 바탕으로 어셈블리 코드 작성 (3) objdump로 생성된 기계어 코드를 이용 위와 같은 절차로 작성하는 것이 일반적인 것 같은데, 문제를 해결하기위해서는 코드가 길어짐에따라 직접 쉘코드를 입력하기에는 문제가 있을 것 같은데 혹시 이를 복사한다거나 하는 기능이나 팁이 있을까요? 감사합니다!
maple19out
답변
1
추천
0
5년 전
runner 파일이 실행이 안돼요
앗 방금 해결했는데 글 삭제가 안되네요..ㅠㅠ argv뒤에 인자 전달해야하는걸 몰라서 문제가 있는줄 알았습니다 ;-;
성주우우
답변
1
추천
0
4년 전
«
‹
1
2
›
»
LEVEL 3
clamshell coding
reversing
2085
215
2021.02.25. 10:00:00
로그인 하고 문제 풀기
출제자 정보
Dreamhack
대표 업적 없음
Dreamhack official account
First Blood!
Lanph3re
워게임: 50
출제된 지
1시간
만에 풀이 완료!
최근 풀이자
215
MoonWol
대표 업적 없음
18시간 전
ín
대표 업적 없음
20일 전
4THêNē
.HACK 2025 참가자
22일 전
Look_Back
시스템 해킹 전문가
1개월 전
야르
대표 업적 없음
1개월 전
yeji4226
대표 업적 없음
1개월 전
mj-bin
대표 업적 없음
1개월 전
Zupp
대표 업적 없음
3개월 전
JungWoo_JJING
시스템 해킹 초심자
4개월 전
파란발바닥
리버싱 입문
4개월 전
«
‹
1
2
3
4
5
›
»
댓글
34
파란발바닥
리버싱 입문
4개월 전
이렇게 간단한걸...
Translate
Rootsquare
바탈리온
9개월 전
어셈블리어로 코딩하기
Translate
Wane
리버싱 입문
2년 전
난 내가 운이 안 좋은 줄 알았지..
Translate
Sangsae
강의 수강: 1
2년 전
스택 정리의 중요성을 다시 한 번 자각했습니다.
Translate
ssongk
2024 Invitational Contenders
2년 전
어셈블리어와 손절할 뻔..
Translate
Polang
워게임: 1
3년 전
awesome 코딩..
Translate
name2965
시스템 해킹 입문
3년 전
너무 어이없는 부분에서 시간을 하루나 잡아먹었다...
Translate
조르거이
워게임 고인물
4년 전
생각보다 삽질함
Translate
ccoco
강의 수강: 10
4년 전
강의 내용보다는 주어진 파일과 다른 분들이 남기신 질문들과 그 답변들 자세히 읽어보면서 힌트 많이 얻었어요, 전 개인적으로 푸는데 몇일 걸렸는데 다들 끝까지 화이팅!
Translate
어둠의Dark☆
대표 업적 없음
4년 전
easy
Translate
«
‹
1
2
3
4
›
»
댓글 34