본문 바로가기

Work Log/As Cybersecurity Consultant

[Lessons Learned] IP를 변경해야 할 때 고려사항


단말 IP 변경이 필요한 경우도 있다. 실제 사용하던 IP가 변경되지 않더라도 가상 네트워크 인터페이스가 추가된다던지 하면 운영체제에서 이에 대한 우선순위가 있기 때문에 IP정보를 획득하여 인증 등에 사용하는 소프트웨어가 비정상 동작 할 수 있는 것이다.


사실 IP정보를 추가적인 인증정보로 사용하는 소프트웨어의 경우에는 "단말 NIC를 조회해서 그 중 첫번째로 나타나는 인터페이스의 IP를 인증정보로 사용한다" 로 구현하는 것이 당연한데, 그냥 패킷 까서 IP 확인하면 명확한 것을 가변적인 단말 NIC 정보를 조회해서 사용하냐고 물을 수도 있겠다. 이건 잠깐만 생각해보면 답이 나오는데, 네트워크 특성상 Source IP는 변경 되기 때문이다. 흔한 예로 방화벽에서 NAT를 하고 있다고 생각하면 아하! 할 수 있지 않을까


또는 실제 패킷의 Source IP를 보고 확인하는 경우에, NAT 된 환경에서 단말의 IP 체계가 변경되는 경우에는 문제가 될 수 있는데, 이런 경우 기존에 달고 나가던 Public IP가 변경되지 않도록 방화벽에서 NAT 구성이 정상적인지 확인이 필요하겠다.


경험한 상황

- 패치관리나 백신관리 또는 DB보안 등 에이전트 기반 프로그램에서 호스트 NIC 인터페이스의 IP 대신 가상 인터페이스의 IP를 가져가서 비정상 동작

- IP 를 인증정보로 사용하는 DB보안 등의 프로그램에서 로그인이 안 되는 현상 발생

- 외부 인터넷 서비스 중에도 등록 된 IP를 확인하는 경우가 있음


문제점과 원인

- 별도의 tap driver가 추가 됨

- 트래픽의 외부망으로 나갈 때에 기존과 다른 IP NAT 되어 나갈 수 있음


차기 개선방향

- 추가 네트워크 인터페이스가 생기는 경우 호스트의 IP를 얻어서 사용하는 외부 프로그램을 고려해야 하며, 외부 인터넷 서비스 중 IP 정보를 기준으로 접속허용을 하는 경우 기존과 동일한 Public IP NAT 되도록 상단의 방화벽에서 설정 하는 등을 고려