Python에서 사용자의 입력을 받는 방법이 두 가지가 있습니다. input() 함수를 이용한 방법과 raw_input()을 이용한 방법으로 두 함수는 사용자 입력을 어떻게 받아들이냐의 차이입니다. 예제를 통해 두 가지 방법의 차이점을 알아보겠습니다. input()의 경우 정수형으로 입력을 받습니다. >>> a = input()1234>>> a1234>>> print a1234 raw_input()의 경우 문자열로 입력을 받습니다.>>> a = raw_input()1234>>> a'1234'>>> print a1234 위의 경우 변수 a를 출력했을 때 '' 의 차이를 보고 정수형인지 문자열인지 알 수 있습니다. a = input()을 했을 경우 '' 없이 asdf라고 입력을 하면 문법 에러가 발생하며 '..
파이썬 한 줄로 출력하는 방법 = ) Python 2.x 버전을 사용하면서 강좌를 볼 때 end=' '를 사용해서 print 결과를 한 줄에 출력하는 것을 종종 봤지만 계속 문법 에러를 발생시키면서 invalid syntax만 보여줬습니다. 2.4버전이 너무 낮은건가 싶어서 2.7로 올려도 계속 같은 에러를 보여주길래 그제서야 구글링 해봤습니다. 구글링 결과 end=' ' 는 python 3.x 버전부터 지원되는 문법이라 2.x버전에서는 에러가 발생하게 되고 2.x버전에서는 다른 방법을 사용해야합니다. ※ 참고 : http://stackoverflow.com/questions/2456148/python-print-end Python 3.xfor i in range(10):print( i, end=' ' ..
Sublime Text2를 사용하다 보면 하루에 한 번은 정품등록을 권유하는 메시지가 뜨지만 이용에 제한이 있지는 않습니다. 이정도 프로그램이면 '$59주고 살만하네' 싶기도 하지만 외국 포럼에서 정품등록 방법을 찾아서 적용해봤습니다. 1. Sublime text2가 설치된 폴더로 가셔서 실행 파일을 hex editor로 연 뒤 다음 값을 찾습니다. ### 32bit 운영체제의 경우 ### 5BE509C33B020111 -> 5BE509C32B020111 ### 64bit 운영체제의 경우 ### 33 42 -> 32 42 여러 값이 나오지만 처음 검색되는 값 하나만 변경하시면 됩니다. 2. 이후 Sublime Text2 -> help -> Enter License 에 다음 값을 입력합니다. —– —– B..
Sublime Text2는 장점으로 꼽히는 다양한 내장함수들을 이용해서 자신만의 코딩환경을 구축할 수 있는데요. 대부분 많이 쓰고있으며 현재 제가 사용하고 있는 설정입니다. 개인 설정은 다음 위치에서 설정하실 수 있습니다. Preferences -> Settings - user 옆에 주석도 달아놨으니 각자 원하는 설정으로 수정해서 사용하세요 = ) 드래그 불가능으로 파일도 올려드립니다. {"bold_folder_labels": true,//사이드바 폴더 라벨"caret_style": "phase",//커서 깜빡임(blink/phase/smooth/solid/wide)"color_scheme": "Packages/Color Scheme - Default/Twilight.tmTheme","fade_fold_..
이번에 python으로 프로그래밍을 하다보니 쓸만한 텍스트 에디터가 필요하다는 생각이 들었습니다. python의 IDLE로는 부족함을 느끼던 참에 Sublime Text 라는 프로그램을 찾게 되었는데요. 쓰면 쓸 수록 편리한 프로그램이네요. 일단 UI 깔끔하고 다중 선택으로 여러 단어를 한번에 수정도 가능하고 줄 단위 이동, 삭제도 편합니다. 세로 2, 3, 4 분할 / 가로 분할 등 다양한 Layout을 지원하고 기본적으로 C++ / D / Erlang / Haskell / Ant / Java C / Make / Python / Ruby 의 빌드가 가능합니다. 설치는 아래 링크에서 지원하며 Portable 버전도 있습니다. 현재 3가 최신 버전이지만 2를 많이 쓰는 분위기네요 = ) Sublime Te..
리눅스 명령어를 못 찾을 경우 다음과 같은 명령어로 찾아볼 수 있다. find / -name ***** *****에는 찾고자 하는 명령어를 검색하면 되며 대게 /sbin 폴더안에서 찾을 수 있다. 해당 명령을 PATH에 등록시켜 사용해야하므로 env 명령어로 현재 등록되어 있는 환경변수 목록에서 PATH 항목을 찾아본다 현재 PATH항목 부분을 복사해둔 뒤 다음 명령어로 수정해서 추가시켜준다. export PATH=기존에 있던 PATH항목들:/sbin PATH의 각 항목들은 : (콜론)으로 구분해줄 수 있다.
어셈블리 명령어 상세 - 명령어의 분류 ① 데이터 이동 : mov, lea ② 논리, 연산 : add, sub, inc, dec ③ 흐름제어 : cmp,jmp ④ 프로시져 : call, ret ⑤ 스택조작 : push, pop ⑥ 인터럽트 : int 1) 데이터 이동 1. mov (move data) - 형식 : mov SOURCE, DESTINATION - 기능 : SOURCE위치에 들어있는 데이터를 복사하여 DESTINATION위치에 저장. - 원칙 : 메모리와 레지스터(모든 연산은 레지스터에 저장된뒤 이루어진다.) 사이의 데이터이동, 레지스터와 레지스터 사이의 데이터 이동이나 값을 메모리나 레지스터에 대입할 때 사용한다. (SOURCE와 DESTINATION의 크기가 동일해야 한다.) # DESTI..
Hackershcool level17 = ) 해커스쿨 FTZ 레벨17 [BOF] #include void printit() { printf("Hello there!\n"); } main() { int crap; void (*call)()=printit; char buf[20]; fgets(buf,48,stdin); setreuid(3098,3098); call(); } 17번 문제의 소스를 보면 fgets에 취약점이 존재하고 setreuid로 권한상승이 이뤄지고 있다. 0x080484a8 :push%ebp 0x080484a9 :mov%esp,%ebp 0x080484ab :sub$0x38,%esp 0x080484ae :movl$0x8048490,0xfffffff0(%ebp) 0x080484b5 :sub$0..
- Total
- Today
- Yesterday
- 스크립트
- FTZ
- DNSOverHTTPS
- 해커스쿨
- TISTORY
- www
- DoH
- 티스토리
- 문제풀이
- 사이버테러
- Wargame
- CODEGATE 2014
- 자바스크립트
- 악성코드
- writeup
- 프로그래밍
- 프로그래밍 언어
- network
- CK Exploit Kit
- 파이썬
- Sublime Text 2
- 개발
- BOF
- python
- CloudFlare
- 웨일브라우저
- exploit
- 분석
- hackerschool
- 웹
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
29 | 30 | 31 |