The Experts below are selected from a list of 105 Experts worldwide ranked by ideXlab platform
Tzicker Chiueh - One of the best experts on this subject based on the ideXlab platform.
-
automated Format String Attack prevention for win32 x86 binaries
Annual Computer Security Applications Conference, 2007Co-Authors: Tzicker ChiuehAbstract:A Format String Attack exploits the fact that variadic functions determine the exact number of input arguments based on the Format String argument, and compromises the victim application's address space by accessing data areas beyond the original input argument list the caller prepares. This paper describes the design, implementation and evaluation of a Win32 binary transFormation tool called Lisbon, which transparently inserts into Win32 binaries additional checks that protect them from Format String vulnerabilities. Lisbon casts the Format String Attack prevention problem as an input argument list bound checking problem. To reduce the run-time checking overhead, Lisbon exploits the debug register hardware, which is available in most mainstream CPUs including Intel's X86 architecture, to detect if a callee accesses data outside the input argument list. Moreover, Lisbon is able to detect Format String Attacks without interpreting their Format Strings and is thus potentially applicable to similar Attacks against other functions that access input arguments in the same way as printf (). The runtime throughput penalty of the first Lisbon prototype is under 2% for a set of test network applications that are known to be vulnerable to Format String Attacks.
-
Automated Format String Attack prevention for win32/x86 binaries
2007Co-Authors: Tzicker ChiuehAbstract:A Format String Attack exploits the fact that variadic functions determine the exact number of input arguments based on the Format String argument, and compromises the victim application’s address space by accessing data areas beyond the original input argument list the caller prepares. This paper describes the design, implementation and evaluation of a Win32 binary transFormation tool called Lisbon, which transparently inserts into Win32 binaries additional checks that protect them from Format String vulnerabilities. Lisbon casts the Format String Attack prevention problem as an input argument list bound checking problem. To reduce the run-time checking overhead, Lisbon exploits the debug register hardware, which is available in most mainstream CPUs including Intel’s X86 architecture, to detect if a callee accesses data outside the input argument list. Moreover, Lisbon is able to detect Format String Attacks without interpreting their Format Strings and is thus potentially applicable to similar Attacks against other functions that access input arguments in the same way as printf(). The runtime throughput penalty of the first Lisbon prototype is under 2 % for a set of test network applications that are known to be vulnerable to Format String Attacks. 1
-
ACSAC - Automated Format String Attack Prevention for Win32/X86 Binaries
Twenty-Third Annual Computer Security Applications Conference (ACSAC 2007), 2007Co-Authors: Tzicker ChiuehAbstract:A Format String Attack exploits the fact that variadic functions determine the exact number of input arguments based on the Format String argument, and compromises the victim application's address space by accessing data areas beyond the original input argument list the caller prepares. This paper describes the design, implementation and evaluation of a Win32 binary transFormation tool called Lisbon, which transparently inserts into Win32 binaries additional checks that protect them from Format String vulnerabilities. Lisbon casts the Format String Attack prevention problem as an input argument list bound checking problem. To reduce the run-time checking overhead, Lisbon exploits the debug register hardware, which is available in most mainstream CPUs including Intel's X86 architecture, to detect if a callee accesses data outside the input argument list. Moreover, Lisbon is able to detect Format String Attacks without interpreting their Format Strings and is thus potentially applicable to similar Attacks against other functions that access input arguments in the same way as printf (). The runtime throughput penalty of the first Lisbon prototype is under 2% for a set of test network applications that are known to be vulnerable to Format String Attacks.
Li Xie - One of the best experts on this subject based on the ideXlab platform.
-
Transparent Run-Time Prevention of Format-String Attacks Via Dynamic Taint and Flexible Validation
2008Co-Authors: Zhiqiang Lin, Nai Xia, Bing Mao, Li XieAbstract:Abstract. Format-String Attack is one of the few truly threats to software security. Many previous methods for addressing this problem rely on program source code analysis or special recompilation, and hence exhibit limitations when applied to protect the source code unavailable software. In this paper, we present a transparent run-time approach to the defense against Format-String Attacks via dynamic taint and flexible validation. By leveraging library interposition and ELF binary analysis, we taint all the untrusted user-supplied data as well as their propagations during program execution, and add a security validation layer to the printf-family functions in C Standard Library in order to enforce a flexible policy to detect the Format String Attack on the basis of whether the Format String has been tainted and contains dangerous Format specifiers. Compared with other existing methods, our approach offers several benefits. It does not require the knowledge of the application or any modification to the program source code, and can therefore also be used with legacy applications. Moreover, as shown in our experiment, it is highly effective against the most types of Format-String Attacks and incurs low performance overhead.
-
ISC - Transparent run-time prevention of Format-String Attacks via dynamic taint and flexible validation
Lecture Notes in Computer Science, 2006Co-Authors: Zhiqiang Lin, Nai Xia, Bing Mao, Li XieAbstract:Format-String Attack is one of the few truly threats to software security. Many previous methods for addressing this problem rely on program source code analysis or special recompilation, and hence exhibit limitations when applied to protect the source code unavailable software. In this paper, we present a transparent run-time approach to the defense against Format-String Attacks via dynamic taint and flexible validation. By leveraging library interposition and ELF binary analysis, we taint all the untrusted user-supplied data as well as their propagations during program execution, and add a security validation layer to the printf-family functions in C Standard Library in order to enforce a flexible policy to detect the Format String Attack on the basis of whether the Format String has been tainted and contains dangerous Format specifiers. Compared with other existing methods, our approach offers several benefits. It does not require the knowledge of the application or any modification to the program source code, and can therefore also be used with legacy applications. Moreover, as shown in our experiment, it is highly effective against the most types of Format-String Attacks and incurs low performance overhead.
Byung Ki Kim - One of the best experts on this subject based on the ideXlab platform.
-
Kimchi : A Binary Rewriting Defense Against Format String Attacks
Lecture Notes in Computer Science, 2006Co-Authors: Jin Ho You, Seong Chae Seo, Young Dae Kim, Jun Yong Choi, Sang Jun Lee, Byung Ki KimAbstract:We propose a binary rewriting system called Kimchi that modifies binary programs to protect them from Format String Attacks in runtime. Kimchi replaces the machine code calling conventional printf with code calling a safer version of printf, safe printf, that prevents its Format String from accessing arguments exceeding the stack frame of the parent function. With the proposed static analysis and binary rewriting method, it can protect binary programs even if they do not use the frame pointer register or link the printf code statically. In addition, it reduces the performance overhead of the patched program by not modifying the calls to printf with the Format String argument located in the read-only memory segment, which are not vulnerable to the Format. String Attack.
-
WISA - Kimchi: a binary rewriting defense against Format String Attacks
Information Security Applications, 2006Co-Authors: Jin Ho You, Seong Chae Seo, Young Dae Kim, Jun Yong Choi, Sang Jun Lee, Byung Ki KimAbstract:We propose a binary rewriting system called Kimchi that modifies binary programs to protect them from Format String Attacks in runtime. Kimchi replaces the machine code calling conventional printf with code calling a safer version of printf, safe_printf, that prevents its Format String from accessing arguments exceeding the stack frame of the parent function. With the proposed static analysis and binary rewriting method, it can protect binary programs even if they do not use the frame pointer register or link the printf code statically. In addition, it reduces the performance overhead of the patched program by not modifying the calls to printf with the Format String argument located in the read-only memory segment, which are not vulnerable to the Format String Attack.
-
CIS (2) - Protection against Format String Attacks by binary rewriting
Computational Intelligence and Security, 2005Co-Authors: Jin Ho You, Seong Chae Seo, Young Dae Kim, Jun Yong Choi, Sang Jun Lee, Byung Ki KimAbstract:We propose a binary rewriting system called Kimchi that modifies binary programs to protect them from Format String Attacks in runtime. Kimchi replaces the machine code calling conventional printf with code calling a safer version of printf, safe_printf, that prevents its Format String from accessing arguments exceeding the stack frame of the parent function. With the proposed static analysis and binary rewriting method, it can protect binary programs even if they do not use the frame pointer register or link the printf code statically. In addition, it replaces the printf calls without extra Format arguments like printf(buffer) with the safe code printf(”%s”, buffer), which are not vulnerable, and reduces the performance overhead of the patched program by not modifying the calls to printf with the Format String argument located in the read-only memory segment, which are not vulnerable to the Format String Attack.
Zhiqiang Lin - One of the best experts on this subject based on the ideXlab platform.
-
Transparent Run-Time Prevention of Format-String Attacks Via Dynamic Taint and Flexible Validation
2008Co-Authors: Zhiqiang Lin, Nai Xia, Bing Mao, Li XieAbstract:Abstract. Format-String Attack is one of the few truly threats to software security. Many previous methods for addressing this problem rely on program source code analysis or special recompilation, and hence exhibit limitations when applied to protect the source code unavailable software. In this paper, we present a transparent run-time approach to the defense against Format-String Attacks via dynamic taint and flexible validation. By leveraging library interposition and ELF binary analysis, we taint all the untrusted user-supplied data as well as their propagations during program execution, and add a security validation layer to the printf-family functions in C Standard Library in order to enforce a flexible policy to detect the Format String Attack on the basis of whether the Format String has been tainted and contains dangerous Format specifiers. Compared with other existing methods, our approach offers several benefits. It does not require the knowledge of the application or any modification to the program source code, and can therefore also be used with legacy applications. Moreover, as shown in our experiment, it is highly effective against the most types of Format-String Attacks and incurs low performance overhead.
-
ISC - Transparent run-time prevention of Format-String Attacks via dynamic taint and flexible validation
Lecture Notes in Computer Science, 2006Co-Authors: Zhiqiang Lin, Nai Xia, Bing Mao, Li XieAbstract:Format-String Attack is one of the few truly threats to software security. Many previous methods for addressing this problem rely on program source code analysis or special recompilation, and hence exhibit limitations when applied to protect the source code unavailable software. In this paper, we present a transparent run-time approach to the defense against Format-String Attacks via dynamic taint and flexible validation. By leveraging library interposition and ELF binary analysis, we taint all the untrusted user-supplied data as well as their propagations during program execution, and add a security validation layer to the printf-family functions in C Standard Library in order to enforce a flexible policy to detect the Format String Attack on the basis of whether the Format String has been tainted and contains dangerous Format specifiers. Compared with other existing methods, our approach offers several benefits. It does not require the knowledge of the application or any modification to the program source code, and can therefore also be used with legacy applications. Moreover, as shown in our experiment, it is highly effective against the most types of Format-String Attacks and incurs low performance overhead.
Jin Ho You - One of the best experts on this subject based on the ideXlab platform.
-
Kimchi : A Binary Rewriting Defense Against Format String Attacks
Lecture Notes in Computer Science, 2006Co-Authors: Jin Ho You, Seong Chae Seo, Young Dae Kim, Jun Yong Choi, Sang Jun Lee, Byung Ki KimAbstract:We propose a binary rewriting system called Kimchi that modifies binary programs to protect them from Format String Attacks in runtime. Kimchi replaces the machine code calling conventional printf with code calling a safer version of printf, safe printf, that prevents its Format String from accessing arguments exceeding the stack frame of the parent function. With the proposed static analysis and binary rewriting method, it can protect binary programs even if they do not use the frame pointer register or link the printf code statically. In addition, it reduces the performance overhead of the patched program by not modifying the calls to printf with the Format String argument located in the read-only memory segment, which are not vulnerable to the Format. String Attack.
-
WISA - Kimchi: a binary rewriting defense against Format String Attacks
Information Security Applications, 2006Co-Authors: Jin Ho You, Seong Chae Seo, Young Dae Kim, Jun Yong Choi, Sang Jun Lee, Byung Ki KimAbstract:We propose a binary rewriting system called Kimchi that modifies binary programs to protect them from Format String Attacks in runtime. Kimchi replaces the machine code calling conventional printf with code calling a safer version of printf, safe_printf, that prevents its Format String from accessing arguments exceeding the stack frame of the parent function. With the proposed static analysis and binary rewriting method, it can protect binary programs even if they do not use the frame pointer register or link the printf code statically. In addition, it reduces the performance overhead of the patched program by not modifying the calls to printf with the Format String argument located in the read-only memory segment, which are not vulnerable to the Format String Attack.
-
CIS (2) - Protection against Format String Attacks by binary rewriting
Computational Intelligence and Security, 2005Co-Authors: Jin Ho You, Seong Chae Seo, Young Dae Kim, Jun Yong Choi, Sang Jun Lee, Byung Ki KimAbstract:We propose a binary rewriting system called Kimchi that modifies binary programs to protect them from Format String Attacks in runtime. Kimchi replaces the machine code calling conventional printf with code calling a safer version of printf, safe_printf, that prevents its Format String from accessing arguments exceeding the stack frame of the parent function. With the proposed static analysis and binary rewriting method, it can protect binary programs even if they do not use the frame pointer register or link the printf code statically. In addition, it replaces the printf calls without extra Format arguments like printf(buffer) with the safe code printf(”%s”, buffer), which are not vulnerable, and reduces the performance overhead of the patched program by not modifying the calls to printf with the Format String argument located in the read-only memory segment, which are not vulnerable to the Format String Attack.