We often use the security mode to handle viruses, Trojans, and rogue software. This is because the security mode ignores the startup items. However, not all startup items are ignored, making the security mode insecure.
For example, the shell and userinit values under the Registry HKEY_LOCAL_MACHINE/software/Microsoft/Windows NT/CurrentVersion/Winlogon are also the registry keys frequently used by viruses, Trojans, and rogue software, these two keys can also be run in safe mode, but shell won't run in safe mode with command line mode.
For example:
Shellw.cycler.exe notepad.exe is separated by spaces.ProgramThe name indicates that notepad.exe can be enabled.
Userinit = D:/Windows/system32/userinit.exe,calc.exe uses a comma-separated program name to enable calc.exe
Therefore, we cannot easily think that in security mode, we can prevent Automatic startup of viruses, Trojans, and rogue software. Of course, some programs run in the form of drivers and services, which can still be run in security mode. These are defined in the Registry HKEY_LOCAL_MACHINE/system/CurrentControlSet/control/safeboot.
As for how to determine which projects are automatically run by the system, I personally recommend autoruns to identify projects that may run in the system.