OPENAFS-SA-2018-003 rxgen: prevent unbounded input arrays
authorMark Vitale <mvitale@sinenomine.net>
Fri, 6 Jul 2018 07:14:19 +0000 (03:14 -0400)
committerBenjamin Kaduk <kaduk@mit.edu>
Sun, 9 Sep 2018 23:35:21 +0000 (18:35 -0500)
commit2cf5cfa8561047e855fed9ab35d1a041e309e39a
tree32caeda6763f1ca89ca164237468a899070fa8e2
parentfe41fa565be6e325da75f3e9b8fbdac2c521b027
OPENAFS-SA-2018-003 rxgen: prevent unbounded input arrays

RPCs with unbounded arrays as inputs are susceptible to remote
denial-of-service (DOS) attacks.  A malicious client may submit an RPC
request with an arbitrarily large array, forcing the server to expend
large amounts of network bandwidth, cpu cycles, and heap memory to
unmarshal the input.

Instead, issue an error message and stop rxgen when it detects an RPC
defined with an unbounded input array.  Thus we will detect the problem
at build time and prevent any future unbounded input arrays.

(cherry picked from commit a4c1d5c48deca2ebf78b1c90310b6d56b3d48af6)

Change-Id: I4c60c4776d7f02ea9790b76b49e7325d9c55f31d
src/rxgen/rpc_parse.c