--no-absolute-filenames option seems to be intended to limit extracting
contents of an archive to be strictly inside a current directory (it
guards against both absolute paths and relative paths with .. in them).
However it can be bypassed with symlinks. While extracting an archive,
it will extract symlinks and then follow them if they are referenced in
further entries. This can be exploited by a rogue archive to write files
outside the current directory.
For example, let's create a sample archive:
ln -s /tmp dir
touch /tmp/file
echo 'dir
dir/file' | cpio -ov > test.cpio
rm dir /tmp/file
and then test it:
cpio --no-absolute-filenames -iv < test.cpio
This will create a symlink "dir" in the current directory and a file
"/tmp/file" by following this symlink.