본문 바로가기

shayete

[Linux] Oh-my-Zsh! - agnoster theme 설정 Oh-my-Zsh! 의 agnoster 테마입니다. 간단하게 설정하는 방법을 알려드리겠습니다. 저 테마를 쓰려면 zsh 쉘이 있어야 합니다. Oh-my-Zsh! 는 Github에서 받거나 apt로 받을 수 있는데 sudo apt-get install zsh 로 설치해줍니다. 그 후, cd ~/.dotfiles/zsh/themes; git clone https://gist.github.com/3712874.git 로 테마폴더에 agnoster 를 받아줍니다. (혹여나 저 .dotfiles에 zsh가 존재하지 않는다면 find 명령어로 find / -name "*zsh*" -print 2>/dev/null 찾아서 그 폴더로 갑니다.) #이렇게 찾아도 안보이면 그냥 git에서 zsh 다운받아 설치하고 ~/.o.. 더보기
[2014 Christmas CTF] The Magic Picture Book write up이 풀려있기 때문에 슬슬 소스, 바이너리, 플래그파일을 뿌립니다. http://gon.kaist.ac.kr/?cat=1 여기 링크는 카이스트 곤 동아리 분들이 푼 write up 사이트입니다. 제가 아직 지식이 부족해서 바이너리를 복잡하게 꼬았어요. 미안합니다 ㅠ 다음엔 더 질좋고 공부하기에도 좋은 문제를 만들도록 하겠습니다.열심히 공부할게요. 문제는 이런식으로 생겼고 Weights and Measures 와 같이 exploit 코드는 공개하지 않겠습니다. signal()을 쓰면 fork()로 연결된 child 프로세스가 종료될 때 종료되지 않고 남아있는 걸 해결할 수 있다네요. 바이너리 사용법은 간단합니다. ./The_Magic_Picture_Book 4940 이런식으로 바이너리 옆에 사.. 더보기
[2014 Christmas CTF] Weights and Measures write up도 다들 올리시고들 하니, 이번에 냈던 2014년 크리스마스 ctf 알고리즘 문제 Weights and Measures 바이너리파일, C코드, 플래그 파일 올립니다. ..... 카이스트 곤 분들이 제 문제를 첫번째, 두번째 순서로 올려놔주셨네요. 감사합니다 ㅠ http://gon.kaist.ac.kr/?cat=1 여기 링크로 가시면 카이스트 곤 크리스마스 ctf 문제풀이를 보실 수 있습니다. 제가 임의로 짠 exploit 코드는 공개하지 않겠습니다. 제가 예상하지도 못한 방법으로 풀었던 우수한 write up들이 많기 때문이지요. 문제를 만들면서 많이 배웠습니다. 앞으로 더 재밌는 문제 준비할게요. 감사합니다. 사용법은 간단합니다../turtle 4940 같이 바이너리 옆에 사용할 포트를 .. 더보기
Alpha-Numeric Shellcode (Ascii Shellcode) 알파뉴메릭 쉘코드 제작방법에 대해 포스팅합니다. 말 그대로 숫자, 영어만으로 쉘코드를 제작할 수 있습니다. 오래된 기법이긴 하지만 이리저리 국내, 해외사이트를 뒤져봐도 정작 제작하는 방법은 안 나와있고 여러가지 툴을 이용한, Alpha3으로 제작하기, 메타스플로잇 alpha_mixed 옵션을 이용해서 만들기 밖에 없네요. 아스키쉘코드를 적용시키려면 우선 환경이 중요합니다. esp컨트롤로 스택포인트를 eip에 위치시켜서 xor한 값을 실행시킬 수 있습니다. 우선, 제일(?) 유명할 거라 생각되는 리눅스 쉘코드를 던져봅니다. http://shell-storm.org/shellcode/files/shellcode-827.php #include #include char *shellcode = "\x31\xc0\.. 더보기
[2015 Nullcon] exploitable 300 이 문제 이 외에도 여러 문제가 있지만 이 대회는 왠지모르게 씽크빅 대결인 듯 하여 그나마(?) 기술적인 exploitable 문제 하나 포스팅합니다. 바이너리를 실행해보면 Command% 가 나옵니다. 사용법은 set [name] [data] get [name] set a 1234get a를 하면 a 에 1234가 저장되서 get a 로 1234가 출력됩니다. 이것만으로는 아무것도 모르므로 gdb로 분석합니다. main 함수를 보면 input_loop 함수로 넘어가고 여기로 넘어가면 "Command%" 출력 후 fgets로 문자열을 받고 process_command 함수로 넘어갑니다. 여기는 strstr 함수로 비교를 해서 help입력 시, help 함수로, exit 입력시 exit.strcmp로 se.. 더보기
[Linux] 개성적인 터미널 만들기 이번엔 자신만의 터미널 만들기에 대해 포스팅을 해봅니다. 여기서 다룰 내용은 터미널 출력 포맷팅 (Color Bash Shell), figlet 툴, asciiview 툴 사용법입니다. 일단 결과물부터.. 터미널을 열면 피카츄 그림과 함께 제 아이디가 출력되고배시 쉘에 컬러로 이쁘게 꾸밀 수 있습니다. 우선, 일반 그림을 아스키문자로 바꿔주는 툴이 따로 있는데asciiview 라는 툴입니다. sudo apt-get install aview로 툴을 설치해준 뒤, 그림이 있는 경로에서 asciiview xxxx.jpg -driver curses 를 해주면 그림을 아스키문자로 변환해줍니다. 자세한 옵션은 터미널에서 man asciiview 를 사용하시면 됩니다. 혹은 http://manned.org/ascii.. 더보기
[Linux] Peda [Python Exploit Development Assistance for GDB] gdbinit8 만 쓰다가 새로 알게 된 Peda 입니다. gdbinit8만 써도 딱히 불편함이 없긴한데 이 페다는 스택에 쌓인 것까지 다 보여줘서스택값을 일일히 찾아다닐 필요가 없습니다. 이것 외에도 다양한 강력한 기능들이 포함되어 있는데 이건 제가 이것에 익숙해진 다음에 포스팅하도록 할게요. https://github.com/longld/peda 여기서 페다를 다운받을 수 있고 이 사이트에서 설치법이 친절하게 나와있습니다. 다만 문제가 하나 있습니다. 이건 gdb 7.7에서는 돌아가지 않는다는 건데, gdb 7.7에서는 파이썬3을 지원하기 때문입니다.사용하기 위해서는 gdb를 7.4로 내려야 하는데 이 방법을 알려드리겠습니다. sudo apt-get install synaptic 으로 시냅틱 패키지 .. 더보기
Poodle [padding oracle on downgraded legacy encryption] 이걸 전주에서 발표한 지 2달쯤 지난 것 같은데 그 후로 너무 바빠서 지금 포스팅을 하게 되네요. 10월에 잠깐 이슈가 되었던 푸들어택은 POODLE(Padding Oracle On Downgraded Legacy Encryption)의 약자로 TLS 프로토콜을 SSLv3로 다운그레이드시켜 패딩오라클 어택을 합니다. 사실상 이 공격은 2011년의 BEAST(Browser Exploit Against SSL/TLS) 어택과 비슷하다고 보면 됩니다. 결국은 패딩을 이용한 공격으로 사용자의 정보를 가로채는 기술이니까요. 푸들은 2014년 10월 14일, 구글보안팀의 Bodo moller, Thai duong, Krzytof kotowicz가 공개했습니다. TLS 프로토콜을 사용하는 클라이언트와 서버의 핸드쉐이.. 더보기
[2014 Hack.lu] guess the flag write-up 몇달 전에 있었던 hack.lu ctf 문제 중 exploit 문제 Guess the Flag 입니다. 그 날 이 문제 풀면서 멘붕이 왔었는데 바쁜 일 다 끝나고 학교동아리 홈페이지에 이 문제를 아주 약간 바꿔서 올린걸 풀어보았습니다. 문제의 원래 코드는 이렇게 생겼습니다. 전 동아리 서버에 올린 문제로 풀이를 하겠습니다. 문제의 서버환경은 64bit이지만 동아리 서버는 32bit입니다. 문제풀이 하실 때에 크게 차이 없을거에요. 이 문제의 핵심적인 부분을 설명드리자면, * guess> 뒤에 100글자를 입력해야 하고 위의 is_flag_correct() 함수에서 char value1 = bin_by_hex[flag_hex[i * 2 ]];char value2 = bin_by_hex[flag_hex[i .. 더보기
[2014 화이트햇 콘테스트] 한글치환암호 이번에 ctf풀면서 스터디하자! 하고 만들어진 Mr.Mr 팀입니다.어쩌다보니 예선 일반부 9위까지 올라가게 됬네요.문제풀이 시작하겠습니다. 한글치환암호 문제입니다.노가다성이 좀 짙어서 디테일한 설명은 힘들고 간단하게 설명드리겠습니다. 우리가 알고있는 한글과는 다르게 ㄱ 을 ㄴ으로 치환해서 바꾸고 ㅏ 를 ㅢ 로 바꿀수도 있는게 한글치환암호인데 일단 여기서 가장 많이 쓰인 건 컃콌 입니다.보통 소설이나 뭐 어디든 이 두 글자를 보면 '나는' 이 생각나는데이걸가지고 치환을 시작하면 나 의 ㄴ 은 ㅋ으로, ㅏ 는 ㅑㅊ 로 치환된 것을 알 수 있고는의 ㅡ 는 ㅖ, 밑의 ㄴ 은 ㅆ 으로 치환된 것을 알 수 있습니다. 그리고 먗. 이렇게 쓰인건 아까 나 에서 ㅑㅊ가 ㅏ로 치환된 것을 알 수 있었는데이걸 유추해보면 다.. 더보기