제 질문 인 here에 이어 서버 컴퓨터에서 일종의 메시지 파싱을 구현하려고합니다.응용 프로그램 네트워크 프로토콜을 구현할 때의 보안 문제
현재 메시지는 다음과 같습니다
int _header_signature;
int _offset_a;
int _offset_b;
int _size_a;
int _size_b;
wchar_t stuff[_size_a];
wchar_t stuff2[_size_b];
int _footer_signature;
내가 헤더와 크기를 디코딩하여, 작동하는 몇 가지 코드를 얻을 수 및 I 전체 메시지를받은 이상의 출원이 있는지 알고. 그러나 악의적 인 사용자가 의도적으로이 메시지를 변경하고 내 컴퓨터를 파괴하는 것을 막을 수있는 방법은 무엇입니까? 예 : 크기 값 중 하나를 변경하거나 내 메시지보다 큰 값으로 오프셋합니다.
받은 메시지가 무엇이든 내 서버를 안전하고 견고하게 만들려면 어떻게해야합니까?
데이터가 직렬화되어 전송되지만 오프셋을 확인하려면 어떻게해야합니까? 유효하다는 것을 어떻게 알 수 있습니까? –
두 배열의 크기를 알 수 있습니다. 왜 그 값이 한계에 있는지 확인하지 마십시오 –
두 배열의 크기를 어떻게 알 수 있습니까? 이러한 값은 조작 될 수 있습니다. (나는 당신이 이상하게 여기는 경우에 downvoted 사람이 아니었다) –