전체 글 173

sqli 필터링 우회

1. 공백 우회?id=(0)union(select(1),(2),group_concat(column_name),(4),(5)from(information_schema.columns)) 2. = 우회like, in, regexp 쓰면된다. regexp는 정규식 관련 연산자이다.또한, if, strcmp를 이용하는 방법도 있다.if(strcmp(substr(‘abc’,1,1),’a’),0,1) 3. 에러기반 SQLi1) 일단 가장 기본서브쿼리는 한 개의 행만 리턴해야 하는데, (select 1 union select 2)는 두 개의 행을 리턴하므로 에러를 뱉는다.if(조건,1, (select 1 union select 2)) 일케하면, 조건이 거짓일 땐 에러발생이므로 조건에 따른 blind 가능 2) 0xff..

웹/SQLi 2018.10.26

arm 디버깅 환경 구축

일단 설치 sudo apt-get install gdb-multiarch sudo apt-get install qemu-user-static sudo apt-get install gcc-arm-linux-gnueabi 그다음에 armlib이라는 폴더 생성 후 qemu와 lib을 모두 넣는다. mkidr armlib cp -r /usr/arm-linux-gnueabi armlib cd armlib ld와 libc 추가 ln -s /usr/arm-linux-gnueabi/lib/ld-linux.so.3 /lib ln -s /usr/arm-linux-gnueabi/lib/libc.so.6 /lib 이 상태에서 실행 및 디버깅 한다. chroot . ./qemu-arm-static -g [port] ./[bin..

pwnable/arm 2018.09.11

쉘코드 만들기 (tool)

gdb-peda$ shellcode generate입력하면 만들 수 있는 쉘코드 종류가 나온다. connect는 리버스 쉘 연결이고bindport는 자기가 열어놓고 기다린다. 즉, connect로 하면 내가 nc -lvp 8888 처럼 포트 열어놓고 기다려야 한다..... (이거때매 삽질함)bindport를 사용하면 열리니까, 그냥 접속하면 된다. 쉘코드 생성방법은 다음과 같다. 아래는 복붙용ㅋshellcode generate x86/linux bindport 8888 127.0.0.1

pwnable 2018.08.25

Codegate 2018 BaskinRobins31

첫 64비트 문제이다 ! 바이너리를 실행하면 베스킨라빈스 게임을 시작한다(....) 그래서 문제 이름이 베스킨라빈스 취약점은 your_turn 함수에서 터진다. read함수 Xref기능으로 찾으니 순식간에 찾았다. 400바이트만큼 s에 받는데, s는 rbp로부터 0xB0바이트 (176 바이트) 떨어져있다. 까나리가 없고, NX가 걸려있으므로, 바로 조지면 된다. 시나리오는 아래와 같다. 1. read 함수로 bss에 "/bin/sh\x00" 받는다. 2. write 함수로 read함수 got를 릭한다. 3. libc 베이스 주소를 구하고, system함수 주소를 구한다. 4. read 함수로 read함수 got에 system함수를 쓴다. 5. read 함수를 호출하면 system함수가 호출된다. 그런데...

write-up/pwnable 2018.08.18

55번

2년만에 웹 라업이다. 들어가면 머 대충 이런 페이지가 있다. 힌트란다. 컬럼을 준다. 근데 password 컬럼은 안 준다. 저 점수 링크를 누르면 해당 점수의 사람을 보여준다. ?score=2147483647 그리고 limit으로 조절하면 바로 인젝션이 터진다. procedure analyse()로 컬럼을 뽑아보았더니 바로 뽑힌다. ?score=-1%20limit 2,1 procedure analyse() 출력도 해주겠다, 그래서 error base로 바로 조지려고 했다. ?score=-1 limit procedure analyse(extractvalue(1,concat(0x3a,version())),1) 머 대충 이런식으로 했는데 version()이 안 뽑힌다. 그래서 version() 대신 (se..