Web Analytics/SW 보안약점 진단원
[구현보안] API 오용 01 - DNS Lookup에 의존한 보안결정
SalaYH
2019. 10. 7. 23:44
반응형
가. 원인
- 도메인 명에 의존하여 보안결정을 하는 경우
나. 영향
- DNS 스푸핑 등을 통해 DNS 캐시가 오염될 경우, 사용자와 서버 사이의 트래픽이 공격자를 경유
다. 보안대책
- 보안결정에 DNS 조회결과를 사용하지 않도록 구현
라. 안전한 코드
1. IP로 보안결정
public doGet( HttpServletRequest req, HttpServletResponse res ) { ... String ip = req.getRemoteAddr(); // DNS로 보안결정할 경우 DNS 스푸핑에 취약 // InetAddress addr = InetAddress.getByName( ip ); // if ( !addr.getCaonicalHostName().endWith( "trustsite.com" ) ){ if ( ip.equals( "127.0.0.1" ) { showAlert( "Not trust site" ); } ... }
|
마. 진단방법
<DNS Lookup 확인>
1. DNS Lookup을 하는 로직 확인
2. 보안결정을 하는 로직인지 확인
반응형