전체 글 172

13번

우선 필터링 목록이 빡쎄다 union+-*_informationschema#and/charhexlimitasciigroup (group_concat, group by)= ?no=1일 때만 참이 뜬다.?no=0 or 1요래하면 쿼리 전체가 참이된다. 테이블 명과 컬럼 명이 주어졌으니, flag를 추출하면 된다. ?no=0 or length(flag)를 이용하여 flag의 길이를 알아낸다. 그러나 거짓으로 뜬다. (유추할 수 있는 쿼리는 select flag from prob13password where no={GET_[no]} 이며, 반환행이 1개일 때만 참으로 뜨는듯.)select ~ where no=0 or length(flag)는 참인데 거짓으로 뜬다. (flag길이가 0일리는 없으니, length(..

gcc옵션

gcc가 스택을 보호하기 위해 ‘canary’를 삽입한다.함수 내에서 사용하는 스택 프레임과 return address 사이에 canary를 넣는다. Buffer Overflow가 발생해 canary를 덮었을 때,이를 감지하고 프로그램을 강제 종료 해버리는데, 이를 SSP(Stack Smashing Protection)라고 한다. gcc컴파일시 옵션 –fno-stack-protector를 사용해 보호기법 해제 -fstack-protector-all는 모든 프로시저에 이 보호기법 적용.

기타 2016.07.12

python - 튜플

튜플 (tuple) 0. 생김새 및 정의 tp = (1, 2, 3, 4) tp = 1, 2, 3, 4 +튜플은 한번 정해진 순서를 바꿀 수 없다. +튜플은 값의 변경과 삭제 불가능. 1. 값 접근 리스트와 마찬가지로 index값으로 접근할 수 있다. tp[0] // 1 tp[3] // 4 2. 패킹 / 언패킹 (packing / unpacking) packing : 하나의 변수에 여러 값을 넣는 것 unpacking : 패킹 된 변수에서 여러 값을 꺼내는 것 a = (12, 15)#packing b, c = a #unpacking f = b, c #packing 3. 패킹 / 언패킹 활용a = 2b = 23a, b = b, a #swap

Programming/python 2016.04.20