Next
Previous
Contents
- The server can accept anonymous connections only. The servers does not ask a user to send his password.
- The server does not switch the user context. It does not require to run as
root. You can select any suitable account for the FTP server.
- The server does not introduce any new security mechanism. It uses the operating
system to control access to file system. We consider an introduction of a new
security mechanism as dangerous because it is not integrated into
OS. It is much more easier to pass around an add-on mechanism than to pass
around an integrated one (even unintentionally or inadvertently). This can
give more trouble than it's worth.
- The read-only mode of the server (option
-r
in command line) shouldn't be
treated as a security mechanism in any case. It is only a convenient tool to
disable all write operations in the server at once. You should not rely on it
as on security mechanism.
- Libra is the FTP server only. Its purpose is to transfer files, delete them,
create or remove directories. It cannot execute other external programs
(like WuFtpd with SITE EXEC).
- Libra implements the subset of non-standard commands found in WuFtp
daemon. The commands who can lead to security leaks or
did not have the meaning for anonymous server are not implemented.
- The server does not run any external program. It has its own implementation
of directory listing and it does not invoke
ls
for that.
- The program does not implement any server-side filtering of directory listing
(like ls foo*bar). This is abandoned because of the vulnerability
of such approach to "denial of service" attacks.
- SIZE returns the size of file for the local 8-bit bytes data transfer
type (TYPE L8) only. Trying to return the exact number of octets for ASCII data
transfer type (TYPE A) is vulnerable to "denial of service" attacks. In that
case the server should open the file and read its entire content to determine
the number of new lines in the file. On the other hand the attacker should only
receive just a few bytes of servers reply.
- The server does not support the ability to restart broken transfer (REST) in
ASCII transfer mode (TYPE A). It is done so because this ability would be
vulnerable to "denial of service" attacks. The attacker could instruct the
server to send him just a few bytes from a big file. Skipping the initial
portion of file by reading the file and doing LF -> CRLF translation could
consume a significant portion of system resources. On the other hand the
attacker should only receive just a few bytes of a file.
- If the remote party sends a bogus command the server responds only with the
statement that the command isn't recognized. This approach does not lead to
replication of bogus and potentially dangerous data.
Next
Previous
Contents