네트워크교육 38일차 (2022.02.25)

정상훈·2022년 2월 25일
0

웹 인증

id/password 로 접근하면 접속권한이 유지된다. (Session이 유지 될때 까지)
이 말은 id/pw 를 접속하면 웹 서버에서 
각 유저를 구분하기 위한 정보가 존재한다.
- persistent cookie : disk 파일형태로 저장

- non-persistent cookie(Session cookie) : 
브라우저의 PID 에 저장( PID관련 메모리에 저장됨 )
cooxie tool bar <-- 단종
chrome 확장프로그램 중 cookie 관련 목록 사용하면 


요즘은 persistent cookie x
non-persistent cookie 사용

cookie의 유효성이 특정 IP 혹은 브라우저에서만 유효함을 체크하는 방법
- multi session check :
cookie 복사 후 ip주소가 다른 동료에게 cookie를 전달해서 cookie만을 이용해서 접속 가능한지 테스트

- 변조 가능성 check :
cookie의 변수를 분석해서 권한에 영향을 줄 수 있는 부분이 있다면,
조작하여 권한을 받는지 테스트

- cookie 만료 체크 :
마지막에 하는 체크 방법으로
원칙은 cookie Expire time이 존재한다.
(개발자가 선언)
cookie는 세션이 유지될때까지 유효하다.
결국 브라우저에서 로그아웃 버튼을 누르면 세션이 만료되고, 로그아웃 하지 않고 브라우저를 끄면, 개발자가 정의한 Expire Time에 의해 만료된다.
일부 금융사와 정부관련 Cookie는 의무적으로 5~10분 가량만 유지된다.

[체크]
- 로그아웃 버튼을 눌렀을 때 cookie 만료가 안되는 것을 보통 체크
- 로그아웃 버튼을 누르지 않고 브라우저를 닫았을 때,
개발자나 고객이 기준으로 잡고있는 Expire Time에 만료가 되는지 체크

*참고*
https://www.nirsoft.net/web_browser_tools.html

Session

서버 측에서 클라이언트 측으로 부여하는 정보 (Session cookie) 문제는 
이 방법을 사용하니 노출되었을 경우 웹 페이지의 모든 접근이 가능하지게 됨.

그래서 각 URL마다 유효한 Session + id 를 할당 하여 각 페이지에서만 유효한 방식으로 
변환 시킴 -> Session ID 라고 함
Session id는 Sidejacking 이라고 하는 공격에 의해 현재는 사용 x

Token

웹 서비스 안의 요청이 아닌 API를 통해 제공 할당 하는 정보


        

취약점 검검 실습

모든 단계는 프록시를 루프백 주소로 키고나서 진행.

1. ADMIN 계정 접속

본 사이트의 경우, php로 구성되어 있기 때문에 로그인 폼에
1. ' and 1=1-- 을 입력했을 경우
에러 발생

  1. ' and 1=1# 을 입력할 경우

2-1. 이후 로그아웃 할 경우,

admin로그인 창 노출로 인해 위험 노출 

2. ID,PW를 다르게 칠 경우

  1. ID는 맞게, PW는 틀리게 칠 경우

  2. 둘다 틀리게 칠 경우

    서로 다른 결과값으로 인해 위험 노출

3. 게시판에 xss방식 게시글 작성

  1. 게시글 내에 script 태그 작성 [결과] :script태그 안먹힘

  2. img태그 삽입[결과] :

4. WireShark로 로그인 패킷 분석

로그인 시, POST Method로 ID와 PW가 평문으로 읽어지는 부분 발견.

5. 회원가입 시, JS 파일 변경 우회

  1. 회원가입 사이트 진입 후, F12번 ->
  2. JS파일 새 창으로 띄운 후 메모장 이동 ->
    변경하고싶은 부분 변경
    3.Burp Suite 접속,
    주의 : Burp Suite에서는 Request, Response 둘다 받고 있어야 한다.

6. 읽을 수 없는 게시물 첨부파일 다운로드

  1. 읽을 수 없는 게시물 경로 복사
권한 x : http://192.168.223.129/m_view.php?ps_db=data_board&ps_boid=211&ps_page=1&ps_sele=&ps_ques=&ps_line=&ps_choi=&ps_divi=
권한 o : http://192.168.223.129/m_view.php?ps_db=data_board&ps_boid=231&ps_page=1&ps_sele=&ps_ques=&ps_line=&ps_choi=&ps_divi=
권한 o 다운로드 주소 : http://192.168.223.129/download.php?ps_db=data_board&ps_boid=231&ps_file=1
권한 x 다운로드 주소 : http://192.168.223.129/download.php?ps_db=data_board&ps_boid=211&ps_file=1

추가 자료

디렉토리 리스팅

웹 서버의 설정이 잘못되어 있을 경우 나오는 취약점
불필요한 정보를 노출 할 수 있습니다.

domain을 알고 있을 때,

intitle:"index of" site:domain

불필요한 파일 노출

ctrl + s 저장 -> .db .bak .old 이 확장자들이 개발 중 생기면
반드시 삭제하거나 Serverside script 처리 되게끔 설정해야한다.
        
        
filetype:inc mysql_connect, MSSQL = Provider=sqloledb, 
filetype:bak site:domain inurl:admin


http://coffeenix.net/data_repository/pdf/googledork.pdf
profile
"@____

0개의 댓글