Skip to content

[Bug]: Security Issue: SSL/TLS certificate validation #49

Description

@pirates000333-commits

Describe the bug

GitHub Issue DescriptionTitle:

Security Issue:
SSL/TLS certificate validation is hardcoded to disabled in FTP connectionsDescription:A review of the FTP connection implementation shows that SSL/TLS certificate verification is permanently disabled. The code explicitly forces the client to ignore certificate errors, which bypasses transport security and leaves the connection vulnerable to Man-in-the-Middle (MitM) attacks.Affected Code Sections

File Path: /opt/iobroker/node_modules/iobroker.script-restore/build/main.js (around line 259)

Function:
ftpConnect(client) and the secondary client access block.javascriptawait client.access({
host: this.config.ftpHost,
port: this.config.ftpPort || 21,
user: this.config.ftpUser || "anonymous",
password: this.config.ftpPassword,
secure: this.config.ftpSecure || false,
secureOptions: { rejectUnauthorized: false } // <--- Permanently disables verification
});

Issue:
The setting secure

Options:
{ rejectUnauthorized: false } is hardcoded. Even if this.config.ftpSecure is enabled, the adapter will connect to any FTP server without validating its SSL/TLS certificate. There is currently no way for the user to enforce a secure, verified connection.

Expected Behavior:
The adapter should provide a configuration option (e.g., rejectUnauthorized or signedCertificatesOnly) in the admin UI. The rejectUnauthorized property should dynamically reflect this user setting instead of being hardcoded to false.

To Reproduce

see funktions mentioned in the description

Expected behavior

The adapter should provide a configuration option (e.g., rejectUnauthorized or signedCertificatesOnly) in the admin UI. The rejectUnauthorized property should dynamically reflect this user setting instead of being hardcoded to false.

Adapter version

0.1.13

JS-Controller version

7.2.2

Node version

v22.23.2

Operating system

Linux version 7.0.14-6-pve (build@proxmox) (gcc (Debian 14.2.0-19) 14.2.0, GNU ld (GNU Binutils for Debian) 2.44) #1 SMP PREEMPT_DYNAMIC PMX 7.0.14-6 (2026-07-20T14:45Z)

Checklist of files to include in report

  • Adapter log file (Please share the logs in debug mode if possible)
  • Screenshots (if applicable to help explain the problem)

Additional log files and screenshots

No response

Additional context

No response

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions