lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20031110173726.GC15853@c9x.org>
From: j at pureftpd.org (Jedi/Sector One)
Subject: DoS in PureFTPd

On Mon, Nov 10, 2003 at 04:35:06PM +0100, Adam Zabrocki wrote:

          sizeof_resolved_path = MAXPATHLEN + 1U;
          if ((resolved_path = malloc(sizeof_resolved_path)) == NULL) { ... }
	  resolved_path[sizeof_resolved_path - 1U] = 0;
>         if (realpath(name, resolved_path) == NULL) { ... }
>         if (resolved_path[sizeof_resolved_path - 1U] != 0) {
>             for (;;) {
>                 *resolved_path++ = 0;
>             }
>         }

  realpath() is supposed to return a result that fits in MAXPATHLEN
(including the zero) or ENAMETOOLONG.

  The code you are pointing out is supposed to never be executed. It it ever
was, it would kill the user's own session, not DoS anyone else.

> Function realpath() is write by autor PureFTP.

  No, it is from OpenBSD, credits are at the right place.
  
/*
 * Copyright (c) 1994
 *      The Regents of the University of California.  All rights reserved.
 *
 * This code is derived from software contributed to Berkeley by
 * Jan-Simon Pendry.
 *
 ...
      
-- 
 __  /*-      Frank DENIS (Jedi/Sector One) <j@...Networks.Com>     -*\  __
 \ '/    <a href="http://www.PureFTPd.Org/"> Secure FTP Server </a>    \' /
  \/  <a href="http://www.Jedi.Claranet.Fr/"> Misc. free software </a>  \/


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ