VYPR
Moderate severityNVD Advisory· Published Mar 9, 2006· Updated Apr 16, 2026

CVE-2006-0743

CVE-2006-0743

Description

Format string vulnerability in LocalSyslogAppender in Apache log4net 1.2.9 might allow remote attackers to cause a denial of service (memory corruption and termination) via unknown vectors.

Affected packages

Versions sourced from the GitHub Security Advisory.

PackageAffected versionsPatched versions
log4netNuGet
< 1.2.101.2.10

Affected products

1

Patches

1
ea3faab25fe5

Fix for LOG4NET-67. CVE-2006-0743 Security vulnerability in LocalSyslogAppender

https://github.com/apache/logging-log4netNicko CadellMar 7, 2006via ghsa
1 file changed · +15 4
  • src/Appender/LocalSyslogAppender.cs+15 4 modified
    @@ -1,6 +1,6 @@
     #region Copyright & License
     /*
    - * Copyright 2004-2005 The Apache Software Foundation
    + * Copyright 2004-2006 The Apache Software Foundation
      *
      * Licensed under the Apache License, Version 2.0 (the "License");
      * you may not use this file except in compliance with the License.
    @@ -379,7 +379,9 @@ protected override void Append(LoggingEvent loggingEvent)
     			int priority = GeneratePriority(m_facility, GetSeverity(loggingEvent.Level));
     			string message = RenderLoggingEvent(loggingEvent);
     
    -			syslog(priority, message);
    +			// Call the local libc syslog method
    +			// The second argument is a printf style format string
    +			syslog(priority, "%s", message);
     		}
     
     		/// <summary>
    @@ -533,8 +535,17 @@ private static int GeneratePriority(SyslogFacility facility, SyslogSeverity seve
     		/// <summary>
     		/// Generate a log message.
     		/// </summary>
    -		[DllImport("libc")]
    -		private static extern void syslog(int priority, string message);
    +		/// <remarks>
    +		/// <para>
    +		/// The libc syslog method takes a format string and a variable argument list similar
    +		/// to the classic printf function. As this type of vararg list is not supported
    +		/// by C# we need to specify the arguments explicitly. Here we have specified the
    +		/// format string with a single message argument. The caller must set the format 
    +		/// string to <c>"%s"</c>.
    +		/// </para>
    +		/// </remarks>
    +		[DllImport("libc", CharSet=CharSet.Ansi, CallingConvention=CallingConvention.Cdecl)]
    +		private static extern void syslog(int priority, string format, string message);
     
     		/// <summary>
     		/// Close descriptor used to write to system logger.
    

Vulnerability mechanics

Generated by null/stub on May 9, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.

References

14

News mentions

0

No linked articles in our index yet.