head 1.2; access; symbols pkgsrc-2026Q1:1.2.0.20 pkgsrc-2026Q1-base:1.2 pkgsrc-2025Q4:1.2.0.18 pkgsrc-2025Q4-base:1.2 pkgsrc-2025Q3:1.2.0.16 pkgsrc-2025Q3-base:1.2 pkgsrc-2025Q2:1.2.0.14 pkgsrc-2025Q2-base:1.2 pkgsrc-2025Q1:1.2.0.12 pkgsrc-2025Q1-base:1.2 pkgsrc-2024Q4:1.2.0.10 pkgsrc-2024Q4-base:1.2 pkgsrc-2024Q3:1.2.0.8 pkgsrc-2024Q3-base:1.2 pkgsrc-2024Q2:1.2.0.6 pkgsrc-2024Q2-base:1.2 pkgsrc-2024Q1:1.2.0.4 pkgsrc-2024Q1-base:1.2 pkgsrc-2023Q4:1.2.0.2 pkgsrc-2023Q4-base:1.2 pkgsrc-2023Q3:1.1.0.54 pkgsrc-2023Q3-base:1.1 pkgsrc-2023Q2:1.1.0.52 pkgsrc-2023Q2-base:1.1 pkgsrc-2023Q1:1.1.0.50 pkgsrc-2023Q1-base:1.1 pkgsrc-2022Q4:1.1.0.48 pkgsrc-2022Q4-base:1.1 pkgsrc-2022Q3:1.1.0.46 pkgsrc-2022Q3-base:1.1 pkgsrc-2022Q2:1.1.0.44 pkgsrc-2022Q2-base:1.1 pkgsrc-2022Q1:1.1.0.42 pkgsrc-2022Q1-base:1.1 pkgsrc-2021Q4:1.1.0.40 pkgsrc-2021Q4-base:1.1 pkgsrc-2021Q3:1.1.0.38 pkgsrc-2021Q3-base:1.1 pkgsrc-2021Q2:1.1.0.36 pkgsrc-2021Q2-base:1.1 pkgsrc-2021Q1:1.1.0.34 pkgsrc-2021Q1-base:1.1 pkgsrc-2020Q4:1.1.0.32 pkgsrc-2020Q4-base:1.1 pkgsrc-2020Q3:1.1.0.30 pkgsrc-2020Q3-base:1.1 pkgsrc-2020Q2:1.1.0.26 pkgsrc-2020Q2-base:1.1 pkgsrc-2020Q1:1.1.0.6 pkgsrc-2020Q1-base:1.1 pkgsrc-2019Q4:1.1.0.28 pkgsrc-2019Q4-base:1.1 pkgsrc-2019Q3:1.1.0.24 pkgsrc-2019Q3-base:1.1 pkgsrc-2019Q2:1.1.0.22 pkgsrc-2019Q2-base:1.1 pkgsrc-2019Q1:1.1.0.20 pkgsrc-2019Q1-base:1.1 pkgsrc-2018Q4:1.1.0.18 pkgsrc-2018Q4-base:1.1 pkgsrc-2018Q3:1.1.0.16 pkgsrc-2018Q3-base:1.1 pkgsrc-2018Q2:1.1.0.14 pkgsrc-2018Q2-base:1.1 pkgsrc-2018Q1:1.1.0.12 pkgsrc-2018Q1-base:1.1 pkgsrc-2017Q4:1.1.0.10 pkgsrc-2017Q4-base:1.1 pkgsrc-2017Q3:1.1.0.8 pkgsrc-2017Q3-base:1.1 pkgsrc-2017Q2:1.1.0.4 pkgsrc-2017Q2-base:1.1 pkgsrc-2017Q1:1.1.0.2; locks; strict; comment @# @; 1.2 date 2023.12.20.17.09.36; author wiz; state Exp; branches; next 1.1; commitid ZdcEsDSwlO817eRE; 1.1 date 2017.05.16.21.54.21; author snj; state Exp; branches 1.1.2.1; next ; commitid lZPazwhkZpVV6FRz; 1.1.2.1 date 2017.05.16.21.54.21; author bsiegert; state dead; branches; next 1.1.2.2; commitid f8DQajWwxOHMwjTz; 1.1.2.2 date 2017.05.29.18.21.24; author bsiegert; state Exp; branches; next ; commitid f8DQajWwxOHMwjTz; desc @@ 1.2 log @dropbear: update to 2022.83nb1. Include terrapin fix and bump PKGREVISION to make clear this is not 2022.83. 2022.83 - 14 November 2022 Features and Changes: Note >> for compatibility/configuration changes - >> Disable DROPBEAR_DSS by default It is only 1024 bit and uses sha1, most distros disable it by default already. - Added DROPBEAR_RSA_SHA1 option to allow disabling sha1 rsa signatures. >> RSA with sha1 will be disabled in a future release (rsa keys will continue to work OK, with sha256 signatures used instead). - Add option for requiring both password and pubkey (-t) Patch from Jackkal - Add 'no-touch-required' and 'verify-required' options for sk keys Patch from Egor Duda - >> DROPBEAR_SK_KEYS config option now replaces separate DROPBEAR_SK_ECDSA and DROPBEAR_SK_ED25519 options. - Add 'permitopen' option for authorized_keys to restrict forwarded ports Patch from Tuomas Haikarainen - >> Added LTM_CFLAGS configure argument to set flags for building bundled libtommath. This also restores the previous arguments used in 2020.81 (-O3 -funroll-loops). That gives a big speedup for RSA key generation, which regressed in 2022.82. There is a tradeoff with code size, so -Os can be used if required. https://github.com/mkj/dropbear/issues/174 Reported by David Bernard - Add '-z' flag to disable setting QoS traffic class. This may be necessary to work with broken networks or network drivers, exposed after changes to use AF21 in 2022.82 https://github.com/mkj/dropbear/issues/193 Reported by yuhongwei380, patch from Petr Å tetiar - Allow overriding user shells with COMPAT_USER_SHELLS Based on a patch from Matt Robinson - Improve permission error message Patch from k-kurematsu - >> Remove HMAC_MD5 entirely Regression fixes from 2022.82: - Fix X11 build - Fix build warning - Fix compilation when disabling pubkey authentication Patch from MaxMougg - Fix MAX_UNAUTH_CLIENTS regression Reported by ptpt52 - Avoid using slower prime testing in bundled libtomcrypt when DSS is disabled https://github.com/mkj/dropbear/issues/174 Suggested by Steffen Jaeckel - Fix Dropbear plugin support https://github.com/mkj/dropbear/issues/194 Reported by Struan Bartlett Other fixes: - Fix long standing incorrect compression size check. Dropbear (client or server) would erroneously exit with "bad packet, oversized decompressed" when receiving a compressed packet of exactly the maximum size. - Fix missing setsid() removed in 2020.79 https://github.com/mkj/dropbear/issues/180 Reported and debugged by m5jt and David Bernard - Try keyboard-interactive auth before password, in dbclient. This was unintentionally changed back in 2013 https://github.com/mkj/dropbear/pull/190 Patch from Michele Giacomoli - Drain the terminal when reading the fingerprint confirmation response https://github.com/mkj/dropbear/pull/191 Patch from Michele Giacomoli - Fix utx wtmp variable typo. This has been wrong for a long time but only recently became a problem when wtmp was detected. https://github.com/mkj/dropbear/pull/189 Patch from Michele Giacomoli - Improve configure test for hardening options. Fixes building on AIX https://github.com/mkj/dropbear/issues/158 - Fix debian/dropbear.init newline From wulei-student Infrastructure: - Test off-by-default compile options - Set -Wundef to catch typos in #if statements 2022.82 - 1 April 2022 Features and Changes: Note >> for compatibility/configuration changes - Implemented OpenSSH format private key handling for dropbearconvert. Keys can be read in OpenSSH format or the old PEM format. >> Keys are now written in OpenSSH format rather than PEM. ED25519 support is now correct. DSS keys are still PEM format. - Use SHA256 for key fingerprints - >> Reworked -v verbose printing, specifying multiple times will increase verbosity. -vvvv is equivalent to the old DEBUG_TRACE -v level, it can be configured at compile time in localoptions.h (see default_options.h) Lower -v options can be used to check connection progress or algorithm negotiation. Thanks to Hans Harder for the implementation localoptions.h DEBUG_TRACE should be set to 4 for the same result as the previous DEBUG_TRACE 1. - Added server support for U2F/FIDO keys (ecdsa-sk and ed25519-sk) in authorized_keys. no-touch-required option isn't allowed yet. Thanks to Egor Duda for the implementation - autoconf output (configure script etc) is now committed to version control. >> It isn't necessary to run "autoconf" any more on a checkout. - sha1 will be omitted from the build if KEX/signing/MAC algorithms don't require it. Instead sha256 is used for random number generation. See sysoptions.h to see which algorithms require which hashes. - Set SSH_PUBKEYINFO environment variable based on the authorized_keys entry used for auth. The first word of the comment after the key is used (must only have characters a-z A-Z 0-9 .,_-+@@) Patch from Hans Harder, modified by Matt Johnston - Let dbclient multihop mode be used with '-J'. Patch from Hans Harder - Allow home-directory relative paths ~/path for various settings and command line options. *_PRIV_FILENAME DROPBEAR_PIDFILE SFTPSERVER_PATH MOTD_FILENAME Thanks to Begley Brothers Inc >> The default DROPBEAR_DEFAULT_CLI_AUTHKEY has now changed, it now needs a tilde prefix. - LANG environment variable is carried over from the Dropbear server process From Maxim Kochetkov - Add /usr/sbin and /sbin to $PATH when logging in as root. Patch from Raphaël Hertzog https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=903403 - Added client option "-o DisableTrivialAuth". It disallows a server immediately giving successful authentication (without presenting any password/pubkey prompt). This avoids a UI confusion issue where it may appear that the user is accepting a SSH agent prompt from their local machine, but are actually accepting a prompt sent immediately by the remote server. CVE-2021-36369 though the description there is a bit confused. It only applies to Dropbear as a client. Thanks to Manfred Kaiser from Austrian MilCERT - Add -q client option to hide remote banner, from Hans Harder - Add -e option to pass all server environment variables to child processes. This should be used with caution. Patch from Roland Vollgraf (github #118) - >> Use DSCP for QoS traffic classes. Priority (tty) traffic is now set to AF21 "interactive". Previously TOS classes were used, they are not used by modern traffic classifiers. Non-tty traffic is left at default priority. - >> Disable dh-group1 key exchange by default. It has been disabled server side by default since 2018. - >> Removed Twofish cipher Fixes: - Fix flushing channel data when pty was allocated (github #85) Data wasn't completely transmitted at channel close. Reported and initial patch thanks to Yousong Zhou - Dropbear now re-executes itself rather than just forking for each connection (only on Linux). This allows ASLR to randomise address space for each connection as a security mitigation. It should not have any visible impact - if there are any performance impacts in the wild please report it. - Check authorized_keys permissions as the user, fixes NFS squash root. Patch from Chris Dragan (github #107) - A missing home directory is now non-fatal, starting in / instead - Fixed IPv6 [address]:port parsing for dbclient -b Reported by Fabio Molinari - Improve error logging so that they are logged on the server rather than being sent to the client over the connection - Max window size is increased to 10MB, more graceful fallback if it's invalid. - Fix correctness of Dropbear's handling of global requests. Patch from Dirkjan Bussink - Fix some small bugs found by fuzzers, null pointer dereference crash and leaks (post authentication) - $HOME variable is used before /etc/passwd when expanding paths such as ~/.ssh/id_dropbear (for the client). Patch from Matt Robinson - C89 build fixes from Guillaume Picquet Infrastructure: - Improvements to fuzzers. Added post-auth fuzzer, and a mutator that can handle the structure of SSH packet streams. Added cifuzz to run on commits and pull requests. Thanks to OSS-Fuzz for the tools/clusters and reward funding. - Dropbear source tarballs generated by release.sh are now reproducible from a Git or Mercurial checkout, they will be identical on any system. Tested on ubuntu and macos. - Added some integration testing using pytest. Currently this has tests for various channel handling edge cases, ASLR fork randomisation, dropbearconvert, and SSH_PUBKEYINFO - Set up github actions. This runs the pytest suite and other checks. - build matrix includes c89, dropbearmulti, bundled libtom, macos, DEBUG_TRACE - test for configure script regeneration - build a tarball for external reproducibility @ text @$NetBSD: patch-configure,v 1.1 2017/05/16 21:54:21 snj Exp $ this test for the system libtomcrypt needs -ltommath. --- configure.orig 2022-11-14 14:30:00.000000000 +0000 +++ configure @@@@ -7701,7 +7701,7 @@@@ then : printf %s "(cached) " >&6 else $as_nop ac_check_lib_save_LIBS=$LIBS -LIBS="-ltomcrypt $LIBS" +LIBS="-ltomcrypt -ltommath $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @ 1.1 log @update dropbear to 2016.74. changes: 2016.74 - 21 July 2016 - Security: Message printout was vulnerable to format string injection. If specific usernames including "%" symbols can be created on a system (validated by getpwnam()) then an attacker could run arbitrary code as root when connecting to Dropbear server. A dbclient user who can control username or host arguments could potentially run arbitrary code as the dbclient user. This could be a problem if scripts or webpages pass untrusted input to the dbclient program. CVE-2016-7406 https://secure.ucc.asn.au/hg/dropbear/rev/b66a483f3dcb - Security: dropbearconvert import of OpenSSH keys could run arbitrary code as the local dropbearconvert user when parsing malicious key files CVE-2016-7407 https://secure.ucc.asn.au/hg/dropbear/rev/34e6127ef02e - Security: dbclient could run arbitrary code as the local dbclient user if particular -m or -c arguments are provided. This could be an issue where dbclient is used in scripts. CVE-2016-7408 https://secure.ucc.asn.au/hg/dropbear/rev/eed9376a4ad6 - Security: dbclient or dropbear server could expose process memory to the running user if compiled with DEBUG_TRACE and running with -v CVE-2016-7409 https://secure.ucc.asn.au/hg/dropbear/rev/6a14b1f6dc04 The security issues were reported by an anonymous researcher working with Beyond Security's SecuriTeam Secure Disclosure www.beyondsecurity.com/ssd.html - Fix port forwarding failure when connecting to domains that have both IPv4 and IPv6 addresses. The bug was introduced in 2015.68 - Fix 100% CPU use while waiting for rekey to complete. Thanks to Zhang Hui P for the patch 2016.73 - 18 March 2016 - Support syslog in dbclient, option -o usesyslog=yes. Patch from Konstantin Tokarev - Kill a proxycommand when dbclient exits, patch from Konstantin Tokarev - Option to exit when a TCP forward fails, patch from Konstantin Tokarev - New "-o" option parsing from Konstantin Tokarev. This allows handling some extra options in the style of OpenSSH, though implementing all OpenSSH options is not planned. - Fix crash when fallback initshells() is used, reported by Michael Nowak and Mike Tzou - Allow specifying commands eg "dropbearmulti dbclient ..." instead of symlinks - Various cleanups for issues found by a lint tool, patch from Francois Perrad - Fix tab indent consistency, patch from Francois Perrad - Fix issues found by cppcheck, reported by Mike Tzou - Use system memset_s() or explicit_bzero() if available to clear memory. Also make libtomcrypt/libtommath routines use that (or Dropbear's own m_burn()). - Prevent scp failing when the local user doesn't exist. Based on patch from Michael Witten. - Improved Travis CI test running, thanks to Mike Tzou - Improve some code that was flagged by Coverity and Fortify Static Code Analyzer 2016.72 - 9 March 2016 - Validate X11 forwarding input. Could allow bypass of authorized_keys command= restrictions, found by github.com/tintinweb. Thanks for Damien Miller for a patch. CVE-2016-3116 https://secure.ucc.asn.au/hg/dropbear/rev/a3e8389e01ff 2015.71 - 3 December 2015 - Fix "bad buf_incrpos" when data is transferred, broke in 2015.69 - Fix crash on exit when -p address:port is used, broke in 2015.68, thanks to Frank Stollenwerk for reporting and investigation - Fix building with only ENABLE_CLI_REMOTETCPFWD given, patch from Konstantin Tokarev - Fix bad configure script test which didn't work with dash shell, patch from Juergen Daubert, broke in 2015.70 - Fix server race condition that could cause sessions to hang on exit, https://github.com/robotframework/SSHLibrary/issues/128 2015.70 - 26 November 2015 - Fix server password authentication on Linux, broke in 2015.69 2015.69 - 25 November 2015 - Fix crash when forwarded TCP connections fail to connect (bug introduced in 2015.68) - Avoid hang on session close when multiple sessions are started, affects Qt Creator Patch from Andrzej Szombierski - Reduce per-channel memory consumption in common case, increase default channel limit from 100 to 1000 which should improve SOCKS forwarding for modern webpages - Handle multiple command line arguments in a single flag, thanks to Guilhem Moulin - Manpage improvements from Guilhem Moulin - Build fixes for Android from Mike Frysinger - Don't display the MOTD when an explicit command is run from Guilhem Moulin - Check curve25519 shared secret isn't zero 2015.68 - Saturday 8 August 2015 - Reduce local data copying for improved efficiency. Measured 30% increase in throughput for connections to localhost - Forwarded TCP ports connect asynchronously and try all available addresses (IPv4, IPv6, round robin DNS) - Fix all compile warnings, many patches from Gaël Portay Note that configure with -Werror may not be successful on some platforms (OS X) and some configuration options may still result in unused variable warnings. - Use TCP Fast Open on Linux if available. Saves a round trip at connection to hosts that have previously been connected. Needs a recent Linux kernel and possibly "sysctl -w net.ipv4.tcp_fastopen=3" Client side is disabled by default pending further compatibility testing with networks and systems. - Increase maximum command length to 9000 bytes - Free memory before exiting, patch from Thorsten Horstmann. Useful for Dropbear ports to embedded systems and for checking memory leaks with valgrind. Only partially implemented for dbclient. This is disabled by default, enable with DROPBEAR_CLEANUP in sysoptions.h - DROPBEAR_DEFAULT_CLI_AUTHKEY setting now always prepends home directory unless there is a leading slash (~ isn't treated specially) - Fix small ECC memory leaks - Tighten validation of Diffie-Hellman parameters, from Florent Daigniere of Matta Consulting. Odds of bad values are around 2**-512 -- improbable. - Twofish-ctr cipher is supported though disabled by default - Fix pre-authentication timeout when waiting for client SSH-2.0 banner, thanks to CL Ouyang - Fix null pointer crash with restrictions in authorized_keys without a command, patch from Guilhem Moulin - Ensure authentication timeout is handled while reading the initial banner, thanks to CL Ouyang for finding it. - Fix null pointer crash when handling bad ECC keys. Found by afl-fuzz 2015.67 - Wednesday 28 January 2015 - Call fsync() after generating private keys to ensure they aren't lost if a reboot occurs. Thanks to Peter Korsgaard - Disable non-delayed zlib compression by default on the server. Can be enabled if required for old clients with DROPBEAR_SERVER_DELAY_ZLIB - Default client key path ~/.ssh/id_dropbear - Prefer stronger algorithms by default, from Fedor Brunner. AES256 over 3DES Diffie-hellman group14 over group1 - Add option to disable CBC ciphers. - Disable twofish in default options.h - Enable sha2 HMAC algorithms by default, the code was already required for ECC key exchange. sha1 is the first preference still for performance. - Fix installing dropbear.8 in a separate build directory, from Like Ma - Allow configure to succeed if libtomcrypt/libtommath are missing, from Elan Ruusamäe - Don't crash if ssh-agent provides an unknown type of key. From Catalin Patulea - Minor bug fixes, a few issues found by Coverity scan 2014.66 - Thursday 23 October 2014 - Use the same keepalive handling behaviour as OpenSSH. This will work better with some SSH implementations that have different behaviour with unknown message types. - Don't reply with SSH_MSG_UNIMPLEMENTED when we receive a reply to our own keepalive message - Set $SSH_CLIENT to keep bash happy, patch from Ryan Cleere - Fix wtmp which broke since 2013.62, patch from Whoopie 2014.65 - Friday 8 August 2014 - Fix 2014.64 regression, server session hang on exit with scp (and probably others), thanks to NiLuJe for tracking it down - Fix 2014.64 regression, clock_gettime() error handling which broke on older Linux kernels, reported by NiLuJe - Fix 2014.64 regression, writev() could occassionally fail with EAGAIN which wasn't caught - Avoid error message when trying to set QoS on proxycommand or multihop pipes - Use /usr/bin/xauth, thanks to Mike Frysinger - Don't exit the client if the local user entry can't be found, thanks to iquaba 2014.64 - Sunday 27 July 2014 - Fix compiling with ECDSA and DSS disabled - Don't exit abruptly if too many outgoing packets are queued for writev(). Patch thanks to Ronny Meeus - The -K keepalive option now behaves more like OpenSSH's "ServerAliveInterval". If no response is received after 3 keepalives then the session is terminated. This will close connections faster than waiting for a TCP timeout. - Rework TCP priority setting. New settings are if (connecting || ptys || x11) tos = LOWDELAY else if (tcp_forwards) tos = 0 else tos = BULK Thanks to Catalin Patulea for the suggestion. - Improve handling of many concurrent new TCP forwarded connections, should now be able to handle as many as MAX_CHANNELS. Thanks to Eduardo Silva for reporting and investigating it. - Make sure that exit messages from the client are printed, regression in 2013.57 - Use monotonic clock where available, timeouts won't be affected by system time changes - Add -V for version 2014.63 - Wednesday 19 February 2014 - Fix ~. to terminate a client interactive session after waking a laptop from sleep. - Changed port separator syntax again, now using host^port. This is because IPv6 link-local addresses use %. Reported by Gui Iribarren - Avoid constantly relinking dropbearmulti target, fix "make install" for multi target, thanks to Mike Frysinger - Avoid getting stuck in a loop writing huge key files, reported by Bruno Thomsen - Don't link dropbearkey or dropbearconvert to libz or libutil, thanks to Nicolas Boos - Fix linking -lcrypt on systems without /usr/lib, thanks to Nicolas Boos - Avoid crash on exit due to cleaned up keys before last packets are sent, debugged by Ronald Wahl - Fix a race condition in rekeying where Dropbear would exit if it received a still-in-flight packet after initiating rekeying. Reported by Oliver Metz. This is a longstanding bug but is triggered more easily since 2013.57 - Fix README for ecdsa keys, from Catalin Patulea - Ensure that generated RSA keys are always exactly the length requested. Previously Dropbear always generated N+16 or N+15 bit keys. Thanks to Unit 193 - Fix DROPBEAR_CLI_IMMEDIATE_AUTH mode which saves a network round trip if the first public key succeeds. Still not enabled by default, needs more compatibility testing with other implementations. - Fix for port 0 forwarding in the client and port forwarding with Apache MINA SSHD. - Fix for bad system linux/pkt-sched.h header file with older Linux kernels, from Steve Dover - Fix signal handlers so that errno is saved, thanks to Erik Ahlén for a patch and Mark Wickham for independently spotting the same problem. @ text @d1 1 a1 1 $NetBSD$ d5 5 a9 5 --- configure.orig 2017-04-25 21:47:13.570580493 -0700 +++ configure 2017-04-25 21:47:30.336185297 -0700 @@@@ -5963,7 +5963,7 @@@@ if ${ac_cv_lib_tomcrypt_register_cipher+ $as_echo_n "(cached) " >&6 else @ 1.1.2.1 log @file patch-configure was added on branch pkgsrc-2017Q1 on 2017-05-29 18:21:24 +0000 @ text @d1 15 @ 1.1.2.2 log @Pullup ticket #5468 - requested by sevan security/dropbear: security fix Revisions pulled up: - security/dropbear/Makefile 1.32 - security/dropbear/distinfo 1.24 - security/dropbear/patches/patch-aa 1.11 - security/dropbear/patches/patch-ab 1.9 - security/dropbear/patches/patch-configure 1.1 --- Module Name: pkgsrc Committed By: snj Date: Tue May 16 21:54:21 UTC 2017 Modified Files: pkgsrc/security/dropbear: Makefile distinfo pkgsrc/security/dropbear/patches: patch-aa patch-ab Added Files: pkgsrc/security/dropbear/patches: patch-configure Log Message: update dropbear to 2016.74. changes: 2016.74 - 21 July 2016 - Security: Message printout was vulnerable to format string injection. If specific usernames including "%" symbols can be created on a system (validated by getpwnam()) then an attacker could run arbitrary code as root when connecting to Dropbear server. A dbclient user who can control username or host arguments could potentially run arbitrary code as the dbclient user. This could be a problem if scripts or webpages pass untrusted input to the dbclient program. CVE-2016-7406 https://secure.ucc.asn.au/hg/dropbear/rev/b66a483f3dcb - Security: dropbearconvert import of OpenSSH keys could run arbitrary code as the local dropbearconvert user when parsing malicious key files CVE-2016-7407 https://secure.ucc.asn.au/hg/dropbear/rev/34e6127ef02e - Security: dbclient could run arbitrary code as the local dbclient user if particular -m or -c arguments are provided. This could be an issue where dbclient is used in scripts. CVE-2016-7408 https://secure.ucc.asn.au/hg/dropbear/rev/eed9376a4ad6 - Security: dbclient or dropbear server could expose process memory to the running user if compiled with DEBUG_TRACE and running with -v CVE-2016-7409 https://secure.ucc.asn.au/hg/dropbear/rev/6a14b1f6dc04 The security issues were reported by an anonymous researcher working with Beyond Security's SecuriTeam Secure Disclosure www.beyondsecurity.com/ssd.html - Fix port forwarding failure when connecting to domains that have both IPv4 and IPv6 addresses. The bug was introduced in 2015.68 - Fix 100% CPU use while waiting for rekey to complete. Thanks to Zhang Hui P for the patch 2016.73 - 18 March 2016 - Support syslog in dbclient, option -o usesyslog=yes. Patch from Konstantin Tokarev - Kill a proxycommand when dbclient exits, patch from Konstantin Tokarev - Option to exit when a TCP forward fails, patch from Konstantin Tokarev - New "-o" option parsing from Konstantin Tokarev. This allows handling some extra options in the style of OpenSSH, though implementing all OpenSSH options is not planned. - Fix crash when fallback initshells() is used, reported by Michael Nowak and Mike Tzou - Allow specifying commands eg "dropbearmulti dbclient ..." instead of symlinks - Various cleanups for issues found by a lint tool, patch from Francois Perrad - Fix tab indent consistency, patch from Francois Perrad - Fix issues found by cppcheck, reported by Mike Tzou - Use system memset_s() or explicit_bzero() if available to clear memory. Also make libtomcrypt/libtommath routines use that (or Dropbear's own m_burn()). - Prevent scp failing when the local user doesn't exist. Based on patch from Michael Witten. - Improved Travis CI test running, thanks to Mike Tzou - Improve some code that was flagged by Coverity and Fortify Static Code Analyzer 2016.72 - 9 March 2016 - Validate X11 forwarding input. Could allow bypass of authorized_keys command= restrictions, found by github.com/tintinweb. Thanks for Damien Miller for a patch. CVE-2016-3116 https://secure.ucc.asn.au/hg/dropbear/rev/a3e8389e01ff 2015.71 - 3 December 2015 - Fix "bad buf_incrpos" when data is transferred, broke in 2015.69 - Fix crash on exit when -p address:port is used, broke in 2015.68, thanks to Frank Stollenwerk for reporting and investigation - Fix building with only ENABLE_CLI_REMOTETCPFWD given, patch from Konstantin Tokarev - Fix bad configure script test which didn't work with dash shell, patch from Juergen Daubert, broke in 2015.70 - Fix server race condition that could cause sessions to hang on exit, https://github.com/robotframework/SSHLibrary/issues/128 2015.70 - 26 November 2015 - Fix server password authentication on Linux, broke in 2015.69 2015.69 - 25 November 2015 - Fix crash when forwarded TCP connections fail to connect (bug introduced in 2015.68) - Avoid hang on session close when multiple sessions are started, affects Qt Creator Patch from Andrzej Szombierski - Reduce per-channel memory consumption in common case, increase default channel limit from 100 to 1000 which should improve SOCKS forwarding for modern webpages - Handle multiple command line arguments in a single flag, thanks to Guilhem Moulin - Manpage improvements from Guilhem Moulin - Build fixes for Android from Mike Frysinger - Don't display the MOTD when an explicit command is run from Guilhem Moulin - Check curve25519 shared secret isn't zero 2015.68 - Saturday 8 August 2015 - Reduce local data copying for improved efficiency. Measured 30% increase in throughput for connections to localhost - Forwarded TCP ports connect asynchronously and try all available addresses (IPv4, IPv6, round robin DNS) - Fix all compile warnings, many patches from Gaël Portay Note that configure with -Werror may not be successful on some platforms (OS X) and some configuration options may still result in unused variable warnings. - Use TCP Fast Open on Linux if available. Saves a round trip at connection to hosts that have previously been connected. Needs a recent Linux kernel and possibly "sysctl -w net.ipv4.tcp_fastopen=3" Client side is disabled by default pending further compatibility testing with networks and systems. - Increase maximum command length to 9000 bytes - Free memory before exiting, patch from Thorsten Horstmann. Useful for Dropbear ports to embedded systems and for checking memory leaks with valgrind. Only partially implemented for dbclient. This is disabled by default, enable with DROPBEAR_CLEANUP in sysoptions.h - DROPBEAR_DEFAULT_CLI_AUTHKEY setting now always prepends home directory unless there is a leading slash (~ isn't treated specially) - Fix small ECC memory leaks - Tighten validation of Diffie-Hellman parameters, from Florent Daigniere of Matta Consulting. Odds of bad values are around 2**-512 -- improbable. - Twofish-ctr cipher is supported though disabled by default - Fix pre-authentication timeout when waiting for client SSH-2.0 banner, thanks to CL Ouyang - Fix null pointer crash with restrictions in authorized_keys without a command, patch from Guilhem Moulin - Ensure authentication timeout is handled while reading the initial banner, thanks to CL Ouyang for finding it. - Fix null pointer crash when handling bad ECC keys. Found by afl-fuzz 2015.67 - Wednesday 28 January 2015 - Call fsync() after generating private keys to ensure they aren't lost if a reboot occurs. Thanks to Peter Korsgaard - Disable non-delayed zlib compression by default on the server. Can be enabled if required for old clients with DROPBEAR_SERVER_DELAY_ZLIB - Default client key path ~/.ssh/id_dropbear - Prefer stronger algorithms by default, from Fedor Brunner. AES256 over 3DES Diffie-hellman group14 over group1 - Add option to disable CBC ciphers. - Disable twofish in default options.h - Enable sha2 HMAC algorithms by default, the code was already required for ECC key exchange. sha1 is the first preference still for performance. - Fix installing dropbear.8 in a separate build directory, from Like Ma - Allow configure to succeed if libtomcrypt/libtommath are missing, from Elan Ruusamäe - Don't crash if ssh-agent provides an unknown type of key. From Catalin Patulea - Minor bug fixes, a few issues found by Coverity scan 2014.66 - Thursday 23 October 2014 - Use the same keepalive handling behaviour as OpenSSH. This will work better with some SSH implementations that have different behaviour with unknown message types. - Don't reply with SSH_MSG_UNIMPLEMENTED when we receive a reply to our own keepalive message - Set $SSH_CLIENT to keep bash happy, patch from Ryan Cleere - Fix wtmp which broke since 2013.62, patch from Whoopie 2014.65 - Friday 8 August 2014 - Fix 2014.64 regression, server session hang on exit with scp (and probably others), thanks to NiLuJe for tracking it down - Fix 2014.64 regression, clock_gettime() error handling which broke on older Linux kernels, reported by NiLuJe - Fix 2014.64 regression, writev() could occassionally fail with EAGAIN which wasn't caught - Avoid error message when trying to set QoS on proxycommand or multihop pipes - Use /usr/bin/xauth, thanks to Mike Frysinger - Don't exit the client if the local user entry can't be found, thanks to iquaba 2014.64 - Sunday 27 July 2014 - Fix compiling with ECDSA and DSS disabled - Don't exit abruptly if too many outgoing packets are queued for writev(). Patch thanks to Ronny Meeus - The -K keepalive option now behaves more like OpenSSH's "ServerAliveInterval". If no response is received after 3 keepalives then the session is terminated. This will close connections faster than waiting for a TCP timeout. - Rework TCP priority setting. New settings are if (connecting || ptys || x11) tos = LOWDELAY else if (tcp_forwards) tos = 0 else tos = BULK Thanks to Catalin Patulea for the suggestion. - Improve handling of many concurrent new TCP forwarded connections, should now be able to handle as many as MAX_CHANNELS. Thanks to Eduardo Silva for reporting and investigating it. - Make sure that exit messages from the client are printed, regression in 2013.57 - Use monotonic clock where available, timeouts won't be affected by system time changes - Add -V for version 2014.63 - Wednesday 19 February 2014 - Fix ~. to terminate a client interactive session after waking a laptop from sleep. - Changed port separator syntax again, now using host^port. This is because IPv6 link-local addresses use %. Reported by Gui Iribarren - Avoid constantly relinking dropbearmulti target, fix "make install" for multi target, thanks to Mike Frysinger - Avoid getting stuck in a loop writing huge key files, reported by Bruno Thomsen - Don't link dropbearkey or dropbearconvert to libz or libutil, thanks to Nicolas Boos - Fix linking -lcrypt on systems without /usr/lib, thanks to Nicolas Boos - Avoid crash on exit due to cleaned up keys before last packets are sent, debugged by Ronald Wahl - Fix a race condition in rekeying where Dropbear would exit if it received a still-in-flight packet after initiating rekeying. Reported by Oliver Metz. This is a longstanding bug but is triggered more easily since 2013.57 - Fix README for ecdsa keys, from Catalin Patulea - Ensure that generated RSA keys are always exactly the length requested. Previously Dropbear always generated N+16 or N+15 bit keys. Thanks to Unit 193 - Fix DROPBEAR_CLI_IMMEDIATE_AUTH mode which saves a network round trip if the first public key succeeds. Still not enabled by default, needs more compatibility testing with other implementations. - Fix for port 0 forwarding in the client and port forwarding with Apache MINA SSHD. - Fix for bad system linux/pkt-sched.h header file with older Linux kernels, from Steve Dover - Fix signal handlers so that errno is saved, thanks to Erik Ahl�n for a patch and Mark Wickham for independently spotting the same problem. @ text @a0 15 $NetBSD: patch-configure,v 1.1 2017/05/16 21:54:21 snj Exp $ this test for the system libtomcrypt needs -ltommath. --- configure.orig 2017-04-25 21:47:13.570580493 -0700 +++ configure 2017-04-25 21:47:30.336185297 -0700 @@@@ -5963,7 +5963,7 @@@@ if ${ac_cv_lib_tomcrypt_register_cipher+ $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-ltomcrypt $LIBS" +LIBS="-ltomcrypt -ltommath $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @