LD_PRELOAD covers the entire kernel API, so you could do the same thing for networking and .. threads.... and memory. _that_ would be a remarkably effective chaos monkey.
note that LD_PRELOAD doesn't work for things written in Go because they have their make their own syscalls instead of going through glibc