For air-gapped or frozen systems:
If a system reports v4.0.30319 without a higher patch level (e.g., .NET 4.8 also reports 4.0.30319.42000 ), it may be running an runtime. As of January 12, 2016, .NET Framework 4.0 is no longer supported by mainstream Microsoft support. Security updates ended with the shift to 4.6 and above.