Creating an SRE Testing Interview VM
edit replace SELinux with AppArmor for Ubuntu
Here are a few suggestion that should be easy to set up in a VM (and I ran into over the years):
- set invalid POSIX permissions for content the web server should deliver.
- set invalid SELinux labels for content.
- break the connection between web server and a backend server (e.g. with IPTables or SELinux)
- as @anx suggested break DNS with
/etc/hosts
entries or invalid nameservers - create an invalid virtual host / SNI config, making the web server reply with an incorrect vhosts' content.
- create a resource exhaustion scenario invoking the OOM-Killer.
- Block inbound connections with firewalld/iptables/nftables/SELinux.
- Create a config missing content - e.g. missing user and homedirectory, missing content, misspelled ip addresses or directory names, etc.
- Block outbound connections and serve an app from the webserver that needs them.
- Stop and disable needed services - e.g. the DB server.
- Scramble the app's db user's password or introduce a typo.
- Remove grants for the app db user.
- Fill up the filesystem.
- Introduce a failure state in the application depending on text encoding and collation (e.g. jumbled up characters, missing data).