Prac0311
70
2021-01-14 00:31:05
1
109

스프링 취약 환경 구성


보안 진단 테스트용으로 스프링 웹 개발중입니다.

마이바티스 + 오라클 사용중이고요.

jsp 개발 경험도 없이 스프링을 바로 해야하는 상황이라

아래 사이트보고 급하게 그대로 개발했는데요. 

https://melonpeach.tistory.com/category/%EC%9B%B9%EA%B0%9C%EB%B0%9C/%EC%8A%A4%ED%94%84%EB%A7%81%20%EA%B2%8C%EC%8B%9C%ED%8C%90%20%EB%A7%8C%EB%93%A4%EA%B8%B0?page=4

데이터 전달될 때 controller -> service impl -> dao impl -> mapper -> view (jstl) 

대충 이런 흐름으로 가는거같은데..

중요한건 [최대한] 취약하게 구성해야합니다. xss,sqlinjection, 세션검증미흡, 타사용자댓글수정 등등.. 왠만한것 모두 될 수 있게!  

그럼 저 환경에서 jstl로 된 문법 ${data.data} 혹은 #{data.data} 등을

모두 스크립틀릿  <%= data.data %> ) 이런식으로 바꿔야 취약해지는건가요?

어떻게 해야 일부로 취약하게 구성하는 건지 그리고 그와 관련한 예제가 있는지 궁금합니다.






0
  • 답변 1

  • howoni123
    592
    2021-01-14 14:40:17

    mybatis 경우 ${data} 형태로 넣는게 취약합니다.

    xss 는 꼭 spring 문제라고 하기에 제한되므로 직접 구현하시면 됩니다.

    이외 자바 역직렬화 문제, 구 버전에 대한 Exploit 등등에 대해서 반영하시면 좋으실거 같고...

    템플릿엔진을 쓰는 경우에도 SSTI 취약요소에 대해서 찾을수 있고요


    공부목적으로 만드시는거라면 침투 시나리오를 구축해서 시나리오에 맞는 Attack Vector를 확정하신뒤에

    한번에 몰아서 모든 취약점을 만들기보단 부분부분 나눠서 만드시고 합치는게 나을거 같습니다.

  • 로그인을 하시면 답변 을 등록할 수 있습니다.