Analysis우선 이번에는 sleep을 사용하지 못하기 때문에 단순히 score 기준으로 오름차순 내림차순 정렬을 하는 방법으로 조건을 걸어서 해볼 수 있지 않을까? 생각해봤다.그래서 아래와 같이 조건문으로 email의 길이를 구하기 위해서 반환하는 값에 따라서 테이블이 조회되는 행의 순서가 다르게 나오는 것을 확인할 수 있었다. 근데 4번째 컬럼 기준으로 정렬이 되는거일텐데,, 그래도 출력이 되더라..Solution그래서 우선 테이블에 나오는 순서가 다르기 때문에 f12(관리자 모드)로 보았을 때, 테이블에서 admin이 먼저 나올때 보여지는 태그 순서가 다르다한마디로 조건이 참일때admin 이 나오고 참이 아니면admin 즉 rubiya 위치에 있을거라는 것..이를 이용해서 길이와 email을 모두..
Analysis이번에는 prob()와 regex, like가 필터링이 되어있다.우선 query로 화면에 보여지는게 두개인 것을 확인할 수 있는데,,그리고 addslashes 함수가 적용이 되어 있다. 이번에는 strrev가 적용되지 않았기 때문에 만약 ‘를 입력값으로 주면 \’으로 들어간다. 근데 이제 query로 보여지는 것은 \’로 보여지지 않고 pw=''' 이렇게 보여지기 때문에 우선 pw를 blind sql injection으로 알아낼 수 있다고 판단. 참이게 되면 hello admin이 뜰 것이기 때문!!Solution우선 아래와 같이 pw를 확인해봤는데 드디어 pw가 8자가 아니라 9자리 이상인것을 확인이번에는 12자리이다.이제 blind sql injection을 아래 코드로 시도해보았다.i..
우선 Content Provider에 대해서 간단하게 살펴보자. [Content Provider]- Content Provider는 애플리케이션이 자체적으로 저장한 데이터나 다른 애플리케이션의 데이터를 관리하고, 이를 다른 애플리케이션과 안전하게 공유할 수 있도록 돕는 표준 인터페이스다.- 앱 데이터를 다른 앱에서 사용할 수 있는 통로를 제공한다고 생각하면 된다. - Content Provider의 주소 URI는 "content://authority/path"와 같은 형식으로 구성된다.++ 추가적으로 새롭게 알게된 내용!!UriMatcher를 사용하면 ContentProvider에서 여러 URI 패턴을 처리할 수 있게 되는데, 이러한 패턴은 ContentProvider 내부의 URI 매핑 테이블에 등록되..