전체 글 182

컴파일 VS 인터프리터 (Compile VS Interpreter)

프로그램을 해독하는 방식 (소스코드를 기계어로 변환하는 방식)에는 컴파일과 인터프리터 방식 두가지가 있다. 대부분의 프로그래밍 언어가 컴파일 방식을 택하기 때문에 프로그램의 해독(소스코드 => 기계어)을 컴파일이라고 이야기하는 것이다. 컴파일은 소스코드 => 기계어로의 해독 과정을 뜻하는 단어가 아니다!!! (기계어로의 변환 방식 중 하나가 컴파일) 오브젝트를 생성하고 저장하는 방식 ⇒ 컴파일 (번역본 제작 - 한번 해독 해두고 계속 실행) 그때그때 실행코드를 생성하는 방식 ⇒ 인터프리터 (옆에서 통역 - 실행시 마다 해독) 우리가 한글(=기계어) 밖에 모르는 사람을 위해 영어(=하이레벨언어) 책을 읽어줘야하는 상황에 놓여있을때 (기계어 밖에 모르는 컴퓨터를 위해 하이레벨언어를 해독해줘야하는 상황에 놓여..

공부/JUN STUDY 2021.09.14

ipTIME 공지/광고기능 (ipTIME A604MU 공유기 설정창 열기)

며칠전 ipTIME A604MU를 구입하여 사용자 설정 창에 들어가 비밀번호를 설정했다. 오늘은 ipTIME 사용자 설정 창에 있는 공지/광고 기능을 사용해보았다. ipTIME의 공지/광고 기능은 와이파이가 연결되는 시점에 인터넷을 사용하기 이전 특정한 페이지로 리다이렉트를 시켜 확인버튼을 눌러야 인터넷을 사용할 수 있도록하는 기능이다. (a.k.a captive portal) ipTIME A604MU을 사용할때 브라우저에서 192.168.0.1을 입력해서 접속해보면 다음과 같은 창에서 기능을 설정할 수 있다. 결론부터 이야기하면 잘 안된다. 아이폰 safari 브라우저에서는 거의 확정적으로 안되고.. 가끔가다 확인버튼을 눌러도 다른 인터넷이 아예 안되는 경우가 있었다. 정상작동은 3번에 1번 꼴로 동작..

[Dreamhack.io 단계별로 도전하기] welcome Pwnable CTF / wargame 푸는 순서/방법 (MIC.)

https://dreamhack.io/wargame/challenges/27/ 드림핵 wargame 단계별로 풀어보기 welcome 문제이다. 문제 페이지를 보면 접속 정보와 문제 파일을 확인할 수 있다. 어떻게 접속해서 어떤 문제를 풀라는 것일까?? Pwnable CTF / wargame 풀이는 다음과 같은 순서로 이루어진다. 0. 제공된 문제 파일 다운로드 (공격해야하는 프로그램) 1. 제공 받은 프로그램/소스코드 분석 (문제 파일) 2. 원격으로 공격할 서버에 접속 (접속 정보) 3. 서버에 접속하는 순간 주어준 프로그램이 자동으로 실행된다. 4. 이제 그 프로그램을 잘 주물러서 서버의 쉘을 획득하면 됨! 5. 이후 쉘에서 악의적인 동작(flag 파일 읽기)를 수행 이때 서버에 접속하는 방법은 여러..

CTF/dreamhack.io 2021.08.02

리눅스 환경 변수 설정/입력/바꾸기 (Qt creator 바로 실행하기)

리눅스에서 환경 변수를 설정하거나 입력, 바꾸는 방법을 알아보자. 1. /etc/bash.bashrc 파일 열기 (sudo) cd etc /etc 디렉터리로 들어간 다음, 안에 있는 bash.bashrc파일을 열어주면 된다. 파일을 열때 sudo 권한으로 열지 않으면 저장이 안된다. sudo 권한으로 열어주도록하자. sudo vim bash.bashrc 2. 맨 밑에 경로 추가하기 sudo 권한으로 bash.bashrc 파일을 연뒤, 맨 밑으로 스크롤을 내려 다음과 같이 추가해주면 된다. export PATH=$PATH 예시) export PATH=$PATH:home/ubuntu/qt_5.15.2/Tools/QtCreator/bin Qtcreator를 실행할 수 있는 qtcreator 명령이 다음과 같은..

GDB 기초 명령어 (리눅스 ELF 동적 분석) 내가 보려고 만든 GDB 단축키

gdb 실행gdb ./[프로그램이름]함수의 디스어셈블리 결과 출력disas [함수이름]disassemble [함수이름]프로그램 열기r [프로그램이름]프로그램 실행 (브레이크 포인트 / 중단점 까지)c브레이크 포인트 걸기b *[해당주소]브레이크 포인트 정보 출력info breakpoints해당 번호 브레이크 포인트 삭제delete [브레이크 포인트 번호, 지정안하면 다 삭제 됨]정보 출력 / 지정된 메모리 영역 출력 타입 및 갯수(바이트) 지정p $레지스터이름x/2wx $레지스터 이름 w->word(16진수)타입 2개 출력 x/s $레지스터 이름 s->string(문자열)타입 gdb ./분석하려는프로그램 : gdb시작disassemble 함수이름 : 함수 어셈블리어 확인b *주소 / b $레지스터 / b ..

BOB 9기 (차세대 보안리더 양성 프로그램 Best Of the Best) 종강 D-3 기념일기

BOB 3차 교육 마무리가 3일 전으로 다가왔다. 세상에... 매일 하루종일 수업을 들을때는 투정 부리기도 참많이 부렸지만 막상 끝이라 생각하니 섭섭한 마음이 커진다. 고런 감성을 타고 잠깐이나마 기록을 남겨보고자 한다. BOB의 과정을 겪으며 가장 크게 느낀점은, "난 정말 새발의 피의 피의 피의 피의 피다." 인거 같다. 멘토 님들, 선배 님들, 동기 분들.... BOB 과정 내내 정말 많은 짱짱해커 분과 함께했다. 쪼끄만 웅덩이에 살고 있던 물고기가 태평양 바다에 간다면 이런 느낌일까..? 세상은 얼마나 넓은지. 또, 내가 배워야 할 것들이 얼마나 많은지 알게 되었다. 코로나 시국이라 1차 교육은 일주일에 한번 정도 대면, 3차 교육은 전부 비대면으로 진행했다. 가만히 집에 앉아서 하루종일 교육 일..

일기 2021.02.17

Zeroday VS Oneday VS Olday(N-day) 제로 데이 VS 원데이 VS 올데이

핵심 정리 Olday, Oneday, Zeroday 모두 취약점의 종류를 나타내는 단어입니다. 0, 1, N day 취약점은 패치발표, 패치 적용, 해당 취약점에 대한 관심도를 기준으로 나뉩니다. 0 - day 패치를 발표하지 않음. 무방비 상태 1 - day 패치를 발표함. 적용은 안됨. 시간이 생명 N - day 패치를 발표한지 오래임. 아직도 적용이 안됨 구분 0-day 1-day N-day 취약점 해결(취약점X) 패치 발표 X O O O 패치 적용 X X X O 벤더 관심도 O O X O 0-day VS 1-day VS N-day 비교 표 서론 평소 Zeroday attack이 굉장히 위험하다. 뭐 이런 이야기들은 손쉽게 들어볼 수 있습니다. 반면에 Oneday, Olday(N-day)라는 단어를..

공부/JUN STUDY 2021.01.24
728x90