webhacking/sql, sql injection

숫자 뽑아오기.

qkqhxla1 2014. 8. 19. 18:25

sql 인젝션시 숫자가 어떻게든 필요한데 숫자가 다 막혀있을경우...

더군다나 수학 함수도 다 필터링되어있을 경우 환경변수에서 뽑아서 만들면 됩니다.

mysql같은경우 show variables;명령어로 환경변수 확인 가능.



tmp_table_size 같은 경우 뭔가 숫자가 많아서 하나씩 뽑아내거나 하기 편하겠네요.

환경변수는 @@로 호출. 환경변수에서 필요한 수 뽑아내는 예제.



조금 공부해보신분들은 아시겠지만 substr이 막혀있으면 left,right나 mid같은걸로도 됩니다.

위에 적은 예제처럼 수학 함수로 변형해서 뽑아오거나 또는....

1^1 == 0,  같은문자^같은문자 == 0  숫자는 막혀있다고 가정했으니 문자로 해도 됩니다.


1 like 1 ==1,  같은문자 like 같은문자 == 1 마찬가지입니다.

그런 정리된 문서는 많으니 찾아보시길..


15.07.15추가.

환경변수는 information_schema.global_variables 안에 들어있다. 즉

select * from information_schema.global_variables; 같은 쿼리에서 인자를 변화시켜 원하는 숫자나 문자가 어느 변수에 있는지 알기 쉽다는것이다. 


ex) 'o'라는 문자가 들어간 변수를 찾고싶다.

select * from information_schema.global_variables where position('o' in VARIABLE_VALUE);

'webhacking > sql, sql injection' 카테고리의 다른 글

시간 기반 sql 인젝션.  (0) 2014.08.22
효율적인 블라인드 인젝션  (0) 2014.08.20
webhacking.kr 7번 소스코드  (0) 2014.08.19
webhacking.kr 7번  (0) 2014.08.19
rubiya님의 문서  (2) 2014.08.15