slide-image

 

웹 보안

[2019-1]

# 04

오늘은 웹해킹쩜케이알을 할 것이다.

일단 27번

일단 소스코드를 보자.

앞에 view-source:를 붙이면 소스코드를 볼 수 있다. 그냥 개발자 도구에서 볼 수도 있다.

음 근데 중간에 index.phps라는 주석이 있어서 그걸 보기로 했다.

일단은 id가 guest일 때의 no를 입력하는 구문이다.

$_GET[no]에 따옴표가 없는 것을 보아 no는 정수값이 들어간다는 것을 알 수 있다.

그리고 블랙리스트 시키는 소스에서 (는 있는데 )는 없으므로 )는 우회되지 않는 것을 볼 수 있다. (값에 써 줄 수 있음)

 

1을 넣어봄
2도 넣어봄

넣어본 결과, no=1일때 id는guest임을 알 수 있다. 그러고 그냥 2가 admin이겠거니 했음...(...)

 

27-1) like를 이용하는 방법

=이 우회되므로, 그 대신 like를 이용하면 되고, 우리는 id가 guest일 때가 아니라 admin일 떄를 만들고 싶은 것이므로, 앞을 틀린 구문을 만들어주고 )으로 닫은 후에 or으로 연결해서 우리가 원하는 구문을 써주고 소스에 포함된 )을 주석처리하기 위해 --을 사용할 수 있다.

 

27-2) order by 이용하기

order by로 no칼럼을 내림차순으로 정렬하면 맨 마지막 열이 처음에 오므로 그걸 선택하면 된다. 

 

그리고 21번

소스코드를 본다. id와 pw가 숨겨져 있다는 것을 알 수 있다.

그냥 3을 넣으면 자동으로 no에 들어간다. 

계속해보면, no은 2까지 있고, 1 and length(id)=5이런 식으로 True가 나올 때까지 노가다를 뛰면, 여러 정보를 얻을 수 있다. 직접하기 귀찮으니까 python의 requests 모듈을 이용한다.(URL로 직접 요청 보내줌)

python 3.7과 2.7의 문법이 달라서 자꾸 실패한다. 나중에 성공하면 캡처하겠음.

(지금은 2.7이 유니코드 때문에 IDLE이 안열림. 다시 설치 해야할 듯)

앞에서 id와 pw, no의 값들과 length를 구해보면 이렇게 된다.

 

21) and ascii(substr(id, 0, 1))=97같은 구문을 이용할 것이다.

substr은 id의 인덱스 0부터 1개의 값을 구할 수 있는 구문이다. 

파이썬을 이용해서 소스코드를 짜주고 돌려보면 답은 blindsqlinjectionkk가 나온다.

 

 

 

 

'EVI$I0N > 2019-1' 카테고리의 다른 글

[와이어샤크] #04  (0) 2019.05.20
[딥러닝] #04  (0) 2019.05.20
[디지털포렌식] #03  (0) 2019.05.13
[와이어샤크] #03  (0) 2019.05.06
[딥러닝] #03  (0) 2019.05.06