본문 바로가기

Failed to allocate memory: 8 해결법 C:\Users\[사용자명]\.android\avd\[avd 이름].avd\config.ini 위의 파일을 열어서, hw.ramSize=1024 와 같은 내용을 hw.ramSize=1024MB 로 변경후 실행하면 정상 작동 됩니다. 더보기
SQL injection addslashes, utf-8 변환시 우회법 php mysql에서 addslashes를 이용해서 인젝션을 차단하고 있거나, euc-kr을 utf-8로 변환을 하는 작업이 있을경우, 멀티바이트를 이용해서 우회가 가능합니다.두가지 케이스 모두 솔루션은 같으므로, 한번에 설명하겠습니다. addslashes는 입력스트링 중에 quote(') 가 있다면 앞에 \를 붙여줌으로써, " \' " 로 변환됩니다.그래서, quote를 소용없게 만드는것이죠. 하지만, 멀티바이트로 보내면 소용이 없습니다. 예를 들어 url encoding 구문으로 %bf%27을 보낸다면, (%27이 quote입니다.)%bf%5C%27 로 변하게 되고. (%5C가 \ 입니다.)결국, %bf%5C 가 한글자로 읽히게 됩니다. (유니코드이기 때문에.)그리고 %27이 \의 간섭을 안받고 자유.. 더보기
LPAD,bin,ascii를 이용한 효과적인 Blind SQL Injection (Only mysql) Blind SQL injection은 아무래도 브루트포싱이다보니, 한글자를 알아내기까지 많은 쿼리를 보내야합니다.빠릿빠릿한 서버라면, 별 상관없을수도 있지만. 느린서버를 공략할때는 너무 답답합니다.하지만, LPAD,bin,ascii와 같은 함수들을 이용하면, 쿼리의 횟수를 확 줄일수 있습니다. 기존의 방법대로라면 한글자를 알아내기까지 최대 약 70개정도의 쿼리를 보내야 한다면.이 방법을 사용했을땐, 8번의 쿼리만으로 글자를 알아낼수 있습니다. 함수들을 설명해드리면,ascii는 캐릭터를 숫자로 변환하는 함수입니다.ex) 'A' -> 65, 'a' -> 94, '0' ->48 bin은 숫자를 2진법 형태의 스트링으로 변환하는 함수입니다.ex) 12 -> '1100', 65->'1000.. 더보기