분류 전체보기
티스토리 마크다운 코드 하이라이팅 ( tistory markdown code highlighting )
티스토리 마크다운 코드 하이라이팅 ( tistory markdown code highlighting )
2017.05.28tistory_markdown_highlighthttps://github.com/umbum/tistory_markdown_highlight 매번 ``html `` 입력하기 너무 귀찮아서markdown의 highlighting 문법 ```을 티스토리에서도 사용할 수 있도록 만들었다.이 블로그에는 prismjs와 함께 적용되어 있다. highlightjs쓸만한 테마는 light theme 중에서는atelier-forest-lightatom-one-light 장점ARM assembly, Intel x86 assembly, Shell Session 등 별 희한한 언어 까지 다 지원해준다. CDN을 지원한다. cdn에 올라와있는 js는 23 language만 지원하므로 이것만 필요하면 그냥 cdn에서 불러와서 사..
[JS] TIP
[JS] TIP
2017.05.25JS에서 ||는 boolean이 아닐 수 있다. ```js let a = {} a.none || "abc" // "abc"가 출력된다. let b = a.none || "abc" // b에 "abc"가 할당된다. a.none === undefined || "abc" // true가 출력된다 ``` 이렇게 할당에 사용할 수 있음 Object 유틸 관련 IE에서 지원 안되므로 babel polyfill (preset-env) 필요함. /* Object.assign 객체 병합 */ const a = {a: 1, b:3} a >>> {a: 1, b: 3} Object.assign(a, {c:4}) >>> {a: 1, b: 3, c: 4} Object.assign(a, {b:5}) >>> {a: 1, b: 5, ..
CSS Selector
CSS Selector
2017.05.24CSS Selectorcascading 우선순위```!important > style attribute > #id > .class > tag selector```같은 cascading 우선순위를 가질 경우 아래에 위치한 style이 더 높은 우선순위를 가진다.minify할 때 주의해야 할 점이, 같은 속성 같은 값을 지정하는 경우 cascading을 고려해서 일부러 따로 지정해놓은 경우도 하나로 합쳐버린다. 그래서 끝 값 1정도를 다르게 주어야 하는 경우가 있다.가장 구체적으로 지정된 selector가 제일 우선시 된다.그래서 ``html ``요렇게 있는 DOM에서... `` .body.center``로 선택한 것이 `` .body``로 선택한 것 보다 우선한다.이런 경우 `` .body.body``로 ..
[webhacking.kr] 3 : 문자열이 아니라 숫자로 처리하는 경우 ( n || 1 )
[webhacking.kr] 3 : 문자열이 아니라 숫자로 처리하는 경우 ( n || 1 )
2017.05.23이 글은 보호되어 있기 때문에 이것을 보려면 암호가 필요합니다.
SSH Server 설정
SSH Server 설정
2017.05.22SSH server Ubuntu server가 아니면 SSH를 따로 설치해주어야 한다. ```bash sudo apt-get install openssh-server ``` 이후 설정은 다음을 참고. http://www.drchaos.com/enable-ssh-on-kali-linux-enable-ssh-on-kali-linux/ https://lmgsecurity.com/enable-start-ssh-kali-linux/ SSH root 계정 접속 제한 ```bash vi /etc/ssh/sshd_config PermitRootLogin no vi /etc/pam.d/login Auth required /lib/x86_64-linux-gnu/security/pam_securetty.so ``` 공개키를..
[webhacking.kr] 5 : 난독화 decode / mysql의 공백처리
[webhacking.kr] 5 : 난독화 decode / mysql의 공백처리
2017.05.21이 글은 보호되어 있기 때문에 이것을 보려면 암호가 필요합니다.
외장 메모리 쓰기 금지
외장 메모리 쓰기 금지
2017.05.20킷캣(4.4)에서는 ES파일 탐색기 등으로 외장 메모리에 파일을 쓰는 것이 기본적으로 불가능하도록 되어있다. 외장 메모리에 파일을 쓰기 위해서는 다음 세 가지 방법을 사용할 수 있다.루팅기본 내장 파일 매니저/android/data/{app package name} #3각 어플리케이션은 외장 메모리의 자신의 패키지 폴더 /android/data/{app package name} 에 RW권한을 가지고 있어 파일을 쓸 수 있다. {app package name}은 com.bittorrent.client 같은 형식의 package name을 말한다.단순히 폴더만 만들어 주면 안되는 경우가 있어, 내장 메모리의 /android/data/{app package name} 를 그대로 복사해 외장 메모리에 복사해주면..
[python] binary data와 16진수 / struct.pack
[python] binary data와 16진수 / struct.pack
2017.05.09binary datahex, bin```pythonhex = 0xf1bin = 0b11110001``` unicode / bytes 변환 int to ascii문자열을 bytes로 형변환 하고 싶다면 이 방법이 제일 간단하기는 하다. ```pythona = b'string to byte'```b'\x80' 으로 직접 지정하면 \x80 이상 data도 입력할 수 있다.```pythonhex(ord('a')) #unicode -> bytechr(0x61) #byte -> unicode```ord는 설명으로는 ASCII 변환이라고 써있기는 하지만 `` \x81``같은 데이터를 넘겨도 잘 동작한다. struct.packbinary data를 little endian으로 정렬할 때는 struct module을 사..
[python] 출력 관련 : 문자열, str <> bytes, bytearray
[python] 출력 관련 : 문자열, str <> bytes, bytearray
2017.05.09str과 bytes-like object문자열을 bytes로 만들고 싶다면 이 방법이 제일 간단하기는 하다.```pythona = b'string to byte'```b'\x80' 으로 직접 지정하면 \x80 이상 data도 입력할 수 있다. 파이썬에서 str형은 유니코드를 의미한다. 그래서 ASCII 문자열/바이트 문자열(bytes-like object)을 사용하는 부분에서 문제가 발생하곤 한다. 문자열을 byte 형식으로 변환하고 싶다면 인코딩 해야 한다. str→ → → → encode() → → → → ASCII← ← ← ← decode() ← ← ← ← ```python>>> a = 'string to byte'>>> a.encode()b'string to byte'````` encode()``..
STDIN _IO_FILE structure <_IO_2_1_stdin_> & fgets VS argv
STDIN _IO_FILE structure <_IO_2_1_stdin_> & fgets VS argv
2017.05.09STDIONote ) 파이프와 STDIO는 다르다!파이프는 키보드나 모니터같은 하드웨어 장치와 프로세스를 연결하는 방법이 아니라, 한 프로세스의 stdout을 다른 프로세스의 stdin으로 연결하는 IPC 방법이다. 따라서 STDIO는 pipe 구조로 이루어져 있는 것이 아니다! pipe에 접근하든 STDIO에 접근하든 file philosophy에 의해 `` fd``를 이용해 접근하기 때문에 착각할 수 있음. 파이프로 리다이렉션 하지 않는 경우 stdin, stdout, stderr은 모두 같은 character device를 가리키면서, read-only가 아니다.따라서 `` stdin``을 이용해 출력하거나, `` stdout``을 이용해 데이터를 쓰는 것이 가능하다.* stdio를 PIPE로 리다..
FC3 dark_eyes - hell_fire : remoteBOF, GOT overwrite, mprotect
FC3 dark_eyes - hell_fire : remoteBOF, GOT overwrite, mprotect
2017.05.08GOT overwrite / Remote BOF / [ stdin buf ] Stack layouttemp1024 Byte 12 Byte saved_sfp4 Byte 여기서부터 아래 1024 사용 가능.단, main의 sfp는 제외.buffer256 Byte 8 Byte sfp ret ... strcpy(buffer, temp)니까 결과적으로 1024만큼 쓸 수 있다.입력을 fgets로 처리한다. fgets로 받는 경우 EOF 또는 개행문자(0x0a)를 입력하지 않는 경우 계속 입력을 대기하기 때문에 끝에 \n을 보내주어야 한다. argv로 받는 경우 공백(0x20)은 " "로 묶어서 받아야 하며 0x00은 받을 수 없지만, fgets는 개행문자와 EOF만 인식하므로 공백이나 0x00이 있어도 상관 없다..
[Useful site] 온라인 interpreter, 온라인 compiler
[Useful site] 온라인 interpreter, 온라인 compiler
2017.05.05C9https://c9.io/ ```httpApplication : https://apm-umbum.c9users.ioFiles : https://preview.c9users.io/umbum/apm```웹서버 도메인은 `` 8080``으로 열면 연결되므로 굳이 APM workstation이 아니어도 접속할 수 있다.Flat Theme로 변경한 다음 Syntax Theme를 이것 저것 변경하고 있으면 Dark theme로 변경하겠냐는 알람이 뜨는데, 여기서 Yes 누르면 Flat Theme를 Dark로 쓸 수 있다. jsfiddlehttps://jsfiddle.net/ 웹에서 HTML, CSS, JS를 작성하고 실행해 볼 수 있다. react-nativehttps://expo.io/ repl.ithttps..