2011-02-10 3 views
0

인터넷을 통한 클라이언트 연결을 허용하는 응용 프로그램을 개발하고 있습니다. 이 모든 클라이언트는 고정 IP 주소에 있으며 암호화되지 않은 TCP 연결을 설정합니다.원본 IP로 TCP 연결을 안전하게 인증하고 있습니까?

현재 계획은 서버가 어떤 IP가 연결되어 있는지 확인하고 알려진 IP 목록의 클라이언트 연결 만 허용합니까?

IP 스푸핑에 얼마나 안전합니까?

나의 추론은 이것이 TCP 연결이기 때문에 공격자는 보낸 사람의 IP를 쉽게 위조 할 수는 없지만 패킷이 그에게 돌아가서 해킹해야한다는 것을 추론해야합니다. 경로에있는 모든 라우터는 다소 어려워 보입니다.

SSH와 같은 암호화를 사용할 수 있다는 것을 알고 있지만 일반 TCP 연결이 얼마나 안전할까요?

답변

2

실제적으로 IP 주소로 연결을 제한하는 것은 공격 표면을 크게 줄이고 공격의 복잡성을 훨씬 높여주기 때문에 일반적으로 좋은 방법입니다. 다른 답변에서 설명한 것처럼 IP 스푸핑이나 네트워크 자체 공격 (잘못된 BGP 라우트 등)을해야합니다.

즉, IP 주소 제한은 심층 방어 접근의 한 계층으로 사용해야합니다. 너무 많은 재 작업없이 TCP 스트림을 암호화 할 수 있습니까? 어쩌면 SSL? 프로그램을 수정할 수 없다면 네트워크는 어떨까요? 거의 모든 상업용 방화벽이 IPSEC VPN 터널을 지원하기 때문에 IPSec VPN 터널은 구축하기가 어렵지 않습니다. 심지어 일부 소호 라우터도 IPSEC를 지원하도록 수정할 수 있습니다 (예 : OpenWrt plus OpenSwan 포함).

마지막으로, 클라이언트와 서버가 상호 인증을 요구할 수 있습니까?

0

우선 IP를 사용하면 클라이언트를 식별하는 것이 아니라 일부 번호 만 식별 할 수 있습니다. 심지어 IP가 맞으면 여전히 사용자의 컴퓨터 대신에 사용자의 컴퓨터에서 troyan을 사용할 수 있습니다 (사용자가 제공하는 서비스의 종류가 무엇인지 모르기 때문에 이것이 합리적이라고 생각합니다).

이제 클라이언트와 서버 사이의 패킷이 통과하는 라우터 중 하나에 액세스 할 수 있다면 클라이언트의 이름으로 패킷을 송수신하거나 수정할 수있는 거의 모든 것을 수행 할 수 있습니다. 그들 (데이터가 암호화되지 않은 상태로 간다). 게다가 공격자는 라우터의 전부 또는 하나를 해킹 할 필요가 없습니다. 라우터 자체 또는 케이블 (잘라낼 수있는 라우터)이 될 수있는 채널에 대한 액세스 (합법적 인 것 포함)가 필요합니다. 라우터를 삽입 할 수 있음).

요약하면 IP는 스푸핑을 어느 정도까지 견딜 수있는 구성 요소 중 하나로 사용할 수 있지만 보안상의 주요 수단이 될 수 없습니다.

1

안전하지 않음. BGP 게이트웨이는 공격에 면역이되지 않으며, 잘못된 경로를 광고하고 IP를 스푸핑 할 수 있습니다.

관련 문제