结构: Simple
Abstraction: Base
状态: Draft
被利用可能性: unkown
The application uses a signal handler that shares state with other signal handlers, but it does not properly mask or prevent those signal handlers from being invoked while the original signal handler is still running.
During the execution of a signal handler, it can be interrupted by another handler when a different signal is sent. If the two handlers share state - such as global variables - then an attacker can corrupt the state by sending another signal before the first handler has completed execution.
cwe_Nature: ChildOf cwe_CWE_ID: 364 cwe_View_ID: 1000 cwe_Ordinal: Primary
cwe_Nature: ChildOf cwe_CWE_ID: 364 cwe_View_ID: 699 cwe_Ordinal: Primary
Language: {'cwe_Class': 'Language-Independent', 'cwe_Prevalence': 'Undetermined'}
范围 | 影响 | 注释 |
---|---|---|
Integrity | Modify Application Data |
策略:
Turn off dangerous handlers when performing sensitive operations.
映射的分类名 | ImNode ID | Fit | Mapped Node Name |
---|---|---|---|
CERT C Secure Coding | SIG00-C | Mask signals handled by noninterruptible signal handlers | |
PLOVER | Dangerous handler not cleared/disabled during sensitive operations |