본문 바로가기

Injection4

7.SQL Injection>회원정보 출력 안녕하세요 베비온입니다. 이번엔 union을 이용해 회원정보들을 출력해보겠습니다. 저번에 테이블명과 컬럼명을 출력했었죠? 이번엔 그것을 이용해서 회원정보들을 가져와볼게요 글 제목인 6번에 아이디를, 글쓴이인 4번 필드에 비밀번호를 출력해보겠습니다.회원정보 출력하기 a' union select '1','2','3',logpw,'5',logid,'7','8','9','10','11' from member -- 차례로 아이디와 비밀번호를 출력했습니다. 맞는정보인지 볼까요? 비교해보면 맞네요! 비밀번호를 암호화하여 저장하지 않았기때문에 바로 출력이 됩니다. 후에 암호화하여 출력하는 것까지 해볼게요 2017. 4. 30.
6.SQL Injection>테이블 명, 컬럼 명 알아내기 안녕하세요 베비온입니다.오늘은 저번에 했던 union을 사용해서 테이블 명과 컬럼 명을 알아내보겠습니다. 저번에 게시판 페이지에서 사용하는 컬럼 갯수는 11개라는것을 알아내었습니다.검색 부분에 a' union select '1','2','3','4','5','6','7','8','9','10','11' 을 입력해줍니다. 제일 아래부분이 결과창입니다. 1~11을 출력하는 select를 사용함 으로써 어느 부분에 어느 컬럼이 사용되었는지 볼 수 있습니다. 글번호엔 1번 컬럼, 글 제목엔 6번컬럼, 댓글 갯수는 10번컬럼 이런식으로요저희가 얻고싶은건 테이블명, 컬러명입니다.즉 데이터 형태가 문자형입니다.숫자형태가 들어가는 num이나 see는 안되죠 그럼 저희는 글제목인 6번에 한 번 출력해보겠습니다.db에 많.. 2017. 4. 30.
4. 게시판의 컬럼 갯수 알아내기 안녕하세요 베비온입니다. 이번엔 게시판list.php에서 사용되는 DB의 컬럼 갯수를 세보도록 하겠습니다. 이 방법은 다른 query에서도 유효합니다. 로그인페이지에서도 사용가능합니다. 해당 페이지에서 사용되는 컬럼의 갯수를 세기 위해 order by 라는 옵션을 사용합니다. ORDER BY [Column] [ASC|DESC] 지정한 column을 기준으로 오름(ASC)|내림차순(DESC)을 합니다.column명으로 지정해도되고 column의 번호를 써도 됩니다. 순서는 앞에서부터 차례로 1,2,3 ... 이됩니다.column만 지정하고 오름(내림)차순을 생략할 경우 default값인 오름차순을 합니다. list.php의 검색에 order by를 해서 오류를 검색해 냅니다. ' order by 1 -- .. 2017. 4. 27.
3.SQL Injection - 로그인 우회하기 안녕하세요 베비온입니다. 포스팅을 위해 여러번 SQL Injection을 실습 해봤는데 잘 안되서 머리가 터질거같네요 가장 먼저 login 페이지를 우회하여 들어가보도록 하겠습니다. 정상적인 로그인입니다. 정상적으로 한 로그인이 완료된 것을 볼 수 있습니다. 이번엔 root를 우회해서 들어가보겠습니다. 1.주석처리 ID 에 root' -- ' 를 적었습니다. 패스워드를 입력 안해도 제대로 작동된 모습입니다. --는 mysql에서 한줄 주석 구문입니다. 즉 --뒤에 나오는 것들은 다 주석처리되어 실질적으로 처리가 안되게 하는 공격입니다. root' -- '를 입력함으로써 로그인하는 sql 쿼리문은 $sql=select logid,email from member where logid='root' -- '' .. 2017. 4. 24.