Your code is far too trusting.
For example, looking at the code, it looks like if I send something that purports to be a string, but is not null terminated, you are going to simply cast and go, resulting in either a read of random garbage, or, more likely, an access violation.
Similarly, and again, just on a read through, I can cause the server to allocate large blocks of memory and then (most likely) crash by sending a malformed vector.
Yes, proper checking will be added in one of the next versions to verify packets.
Update: Hack-Safety added. Also a small code portion to try "hacking" itself is included in the benchmark sample; you are free to try it.
If you manage to get it crashing by sending a malformed packet, let me know.
// Example code to send a random packet to try "hacking" the remote
net::Message m;
net::Any a(0); a.net_push(m); // function 0
net::Any b(3); b.net_push(m); // 3 parameters
loopi(0, 100) m.push_back((t_now * 23423423 + i * 34553 + t + 423423)%40);
server.send_to(clientid, m);