Vulnerability assessment techniques