Commit Graph

168 Commits

Author SHA1 Message Date
Michael Rash
f89af3b8c1 add libfko fko_set_username() crash ChangeLog message 2015-12-04 19:03:22 -08:00
Michael Rash
2f49be6cb0 [server] For SIGHUP processing, don't send the TCP server SIGTERM unless it is running 2015-11-01 01:58:47 -08:00
Michael Rash
d67fbde992 [server] start on command open/close cycle support (issue #117) 2015-10-13 18:00:07 -07:00
Michael Rash
71ded8caf1 ChangeLog update for 2.6.7 2015-08-24 17:23:40 -07:00
Michael Rash
d681485e29 [server] add sudo support, closes #159 2015-07-22 04:08:58 -07:00
Michael Rash
89b2e8f477 [server] interface goes down will cause fwknopd to exit
By default, fwknopd will now exit if the interface that it is
sniffing goes down (patch contributed by Github user 'sgh7'). If this
happens, it is expected that the native process monitoring feature in
things like systemd or upstart will restart fwknopd. However, if fwknopd
is not being monitored by systemd, upstart, or anything else, this
behavior can be disabled with the EXIT_AT_INTF_DOWN variable in the
fwknopd.conf file. If disabled, fwknopd will try to recover when a
downed interface comes back up.
2015-07-18 13:11:25 -07:00
Michael Rash
042bf2d438 bump version to 2.6.7 (getting close to 2.6.7-pre1) 2015-07-16 11:59:34 -07:00
Michael Rash
ca2a73e333 add --with-firewalld autoconf argument as a synonym for --with-firewall-cmd 2015-06-30 12:59:04 -07:00
Michael Rash
29defca4d5 (Jonathan Bennett) added console-qr.sh script to create QR codes from fwknopd access.conf keys 2015-05-20 18:52:30 -07:00
Michael Rash
ceb1713976 add --key-gen option to fwknopd (suggested by Jonathan Bennett) 2015-05-20 08:55:17 -07:00
Michael Rash
e209acc196 minor ChangeLog update 2015-04-22 01:10:00 -07:00
Michael Rash
3512f7f417 doc updates 2015-04-20 21:34:12 -04:00
Michael Rash
bdc3751a84 bump version to 2.6.6 2015-04-20 08:47:51 -07:00
Michael Rash
0ecc2d2333 minor docs update 2015-04-19 07:10:26 -07:00
Michael Rash
55cbebe7bb ChangeLog and doc updates 2015-04-18 05:30:39 -07:00
Michael Rash
7a21494f39 added --enable-asan-support for Google's Address Sanitizer compiler flags 2015-04-07 16:32:44 -07:00
Michael Rash
d058493d3b [test suite] handle versions of lcov that don't have the --rc option 2015-03-22 17:41:26 -07:00
Michael Rash
95ae8dd1fe minor ChangeLog update 2015-03-19 22:20:26 -04:00
Michael Rash
1ce800446d [server] Bug fix to not include pcap.h in --enable-udp-server mode 2015-02-17 23:21:05 -08:00
Michael Rash
27af305cf7 minor date change for 2.6.5 release 2014-12-16 21:31:36 -05:00
Michael Rash
7f1da8e625 bumped version to 2.6.5 2014-12-15 22:34:22 -05:00
Michael Rash
122ecf10d7 minor ChangeLog update 2014-12-07 17:00:10 -05:00
Michael Rash
d6dee352af minor update to get DESTINATION filtering tests passing 2014-12-03 20:57:06 -05:00
Michael Rash
e1694c732c update ChangeLog to include Grant's patch 2014-11-30 21:36:46 -05:00
Michael Rash
82cf8b1c9c [server] Enforce proper bounds checking on digest cache file import
Bug fix to ensure that proper bounds are enforced when importing digest
cache files from previous fwknopd executions. This bug
was discovered through fuzzing with American Fuzzy Lop (AFL) as driven
by the test/afl/fuzzing-wrappers/server-digest-cache.sh wrapper.
Previous to this fix, fwknopd could be made to crash through a malicious
digest cache file (normally in /var/run/fwknop/digest.cache) upon
initial import.
2014-11-25 22:05:15 -05:00
Michael Rash
9860aebfab minor date update for the 2.6.4 release 2014-11-16 16:31:40 -05:00
Michael Rash
85f559a9fd 2.6.4 release date 2014-11-15 10:27:19 -05:00
Michael Rash
665b65ef3e doc updates to include material about AFL support 2014-11-15 00:15:55 -05:00
Michael Rash
fe288120b3 minor ChangeLog wording update 2014-11-09 21:41:10 -05:00
Michael Rash
3826bb5631 ChangeLog updates, bump version to 2.6.4 2014-11-01 12:04:11 -04:00
Michael Rash
a2ce50e9e5 [python module] default to HMAC SHA256 when an HMAC key is used but no HMAC mode was specified 2014-10-23 08:45:21 -04:00
Michael Rash
50434c5c4c Use the fwknop User-Agent for wget SSL external IP resolutions
Bug fix to ensure that a User-Agent string can be specified when the
fwknop client uses wget via SSL to resolve the external IP address. This
closes issue #134 on github reported by Barry Allard. The fwknop now
uses the wget '-U' option to specify the User-Agent string with a
default of "Fwknop/<version>". In addition, a new command line argument
"--use-wget-user-agent" to allow the default wget User-Agent string to
apply instead.
2014-09-27 23:23:12 -04:00
Michael Rash
aae72a9470 firewalld support from Gerry Reno 2014-09-03 23:28:51 -04:00
Michael Rash
00a057a09d ChangeLog update for FCS bug fix 2014-08-21 21:15:09 -04:00
Michael Rash
03000dde5d bumped version to 2.6.3 in preparation for release 2014-07-28 15:55:38 -04:00
Michael Rash
59718f1a36 [client] Updated IP resolution mode -R to use SSL
External IP resolution via '-R' (or '--resolve-ip-http') is now done via SSL by
default. The IP resolution URL is now 'https://www.cipherdyne.org/cgi-gin/myip',
and a warning is generated in '-R' mode whenever a non-HTTPS URL is specified
(it is safer just to use the default). The fwknop client leverages 'wget' for
this operation since that is cleaner than having fwknop link against an SSL
library.
2014-07-25 17:42:06 -04:00
Michael Rash
7d5b75886c added lcov coverage link 2014-07-19 17:26:15 -04:00
Michael Rash
b2117e6fe7 ChangeLog updates 2014-07-19 17:18:59 -04:00
Michael Rash
74428adae6 [server] Bug fix for PF firewalls without ALTQ support on FreeBSD.
With this commit PF rules are added correctly regardless of whether ALTQ support
is available or not. Thanks to Barry Allard for discovering and reporting this
issue. Closes issue #121 on github.
2014-07-18 20:54:11 -04:00
Michael Rash
9f2e01eb01 [server] Fix uninitialized value usage after proper SPA authentication/decryption
Bug fix discovered with the libfiu fault injection tag
"fko_get_username_init" combined with valgrind analysis. This bug
is only triggered after a valid authenticated and decrypted SPA
packet is sniffed by fwknopd:

==11181== Conditional jump or move depends on uninitialised value(s)
==11181==    at 0x113B6D: incoming_spa (incoming_spa.c:707)
==11181==    by 0x11559F: process_packet (process_packet.c:211)
==11181==    by 0x5270857: ??? (in /usr/lib/x86_64-linux-gnu/libpcap.so.1.4.0)
==11181==    by 0x114BCC: pcap_capture (pcap_capture.c:270)
==11181==    by 0x10F32C: main (fwknopd.c:195)
==11181==  Uninitialised value was created by a stack allocation
==11181==    at 0x113476: incoming_spa (incoming_spa.c:294)
2014-07-07 21:27:53 -05:00
Michael Rash
43b770320a [server] Require sig ID's or fingerprints when sigs are validated
When validating access.conf stanzas make sure that one of
GPG_REMOTE_ID or GPG_FINGERPRINT_ID is specified whenever GnuPG
signatures are to be verified for incoming SPA packets. Signature
verification is the default, and can only be disabled with
GPG_DISABLE_SIG but this is NOT recommended.
2014-06-30 11:52:42 -04:00
Michael Rash
77384a904e [server] add access.conf variable GPG_FINGERPRINT_ID
Add a new GPG_FINGERPRINT_ID variable to the access.conf file
so that full GnuPG fingerprints can be required for incoming SPA packets
in addition to the appreviated GnuPG signatures listed in GPG_REMOTE_ID.
From the test suite, an example fingerprint is

GPG_FINGERPRINT_ID            00CC95F05BC146B6AC4038C9E36F443C6A3FAD56
2014-06-30 11:11:09 -04:00
Michael Rash
0c544f2690 [server] add --test mode to enable broader fuzzing coverage 2014-05-08 07:35:42 -04:00
Michael Rash
fb21e3a575 [server] bug fix to handle SPA packets via http 2014-04-29 23:25:31 -04:00
Michael Rash
d996c45141 minor 2.6.2 release date change 2014-04-28 20:26:05 -04:00
Michael Rash
0c70c7db21 ChangeLog for 2.6.2 2014-04-26 23:42:17 -04:00
Michael Rash
55965dd1a4 minor typo fix 2014-04-12 15:20:31 -04:00
Michael Rash
2cafdad968 bump version to 2.6.1 2014-04-11 22:41:00 -04:00
Michael Rash
ac6ffe2ec7 [server] Validate GPG sigs with libfko fko_gpg_signature_id_match() function 2014-04-09 23:56:03 -04:00
Michael Rash
41f12eba81 [libfko] Memory leak bug fix in GnuPG handling
Bug fix to correct a memory leak in GnuPG SPA packet handling within
the gpg_decrypt() function.  Here is the specific valgrind leak record
that enabled the bug to be found (note that the new valgrind
suppressions usage was critical for finding this bug among all other
libgpgme memory leaks):

==23983== 1,044 bytes in 1 blocks are definitely lost in loss record 7 of 8
==23983==    at 0x4C2C494: calloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==23983==    by 0x4E41D3A: gpg_decrypt (fko_encryption.c:422)
==23983==    by 0x4E42520: fko_decrypt_spa_data (fko_encryption.c:626)
==23983==    by 0x1155B0: incoming_spa (incoming_spa.c:519)
==23983==    by 0x1180A7: process_packet (process_packet.c:211)
==23983==    by 0x506D857: ??? (in /usr/lib/x86_64-linux-gnu/libpcap.so.1.4.0)
==23983==    by 0x117865: pcap_capture (pcap_capture.c:270)
==23983==    by 0x10F937: main (fwknopd.c:353)
2014-03-27 16:52:13 -04:00