1634 Commits

Author SHA1 Message Date
Michael Rash
32ae2be9cc updated RPM Release tag to 1 2014-04-28 21:17:13 -04:00
Michael Rash
bd32e40529 changes since 2.6.1 2014-04-28 21:08:49 -04:00
Michael Rash
7442002a89 [libfko] bumped version to 2.0.2 2014-04-28 21:08:27 -04:00
Michael Rash
6dca446868 changes since 2.6.1 2014-04-28 20:43:18 -04:00
Michael Rash
d996c45141 minor 2.6.2 release date change 2014-04-28 20:26:05 -04:00
Michael Rash
000e02f039 changes since 2.6.1 2014-04-26 23:46:40 -04:00
Michael Rash
30f30a91ac bumped version to 2.6.2 2014-04-26 23:43:32 -04:00
Michael Rash
0c70c7db21 ChangeLog for 2.6.2 2014-04-26 23:42:17 -04:00
Michael Rash
add2c913ab [libfko] fix double free bug in SPA parser
This commit fixes a double free condition discovered through the new
python SPA payload fuzzer.  This bug could be triggered in fwknopd with
a malicious SPA payload but only when GnuPG is used.  When Rijndael is
used for SPA packet encryption, this bug cannot be triggered due to an
length/format check towards the end of _rijndael_decrypt().  It should
be noted that only a person in possession of the correct encryption and
authentication GnuPG keys could trigger this bug.
2014-04-26 23:26:36 -04:00
Michael Rash
9901d8a76a [libfko/test suite] add the FUZZING_INTERFACES macro
Add a new fko_set_encoded_data() function gated by #define
FUZZING_INTERFACES to allow encryption and authentication to be bypassed
for fuzzing purposes (and only fuzzing purposes).  The fko-wrapper code
has been extended to process data in the
test/fko-wrapper/fuzz_spa_payloads file, which is created by the new
python fuzzer.  Typical workflow is:

$ cd test/fko-wrapper
$ ../spa_fuzzer.py > fuzz_spa_payloads
$ make fuzzing

(as root):

./test-fwknop.pl  --enable-profile-coverage --enable-fuzzing-interfaces --enable-all --include wrapper

[+] Starting the fwknop test suite...

    args: --enable-profile-coverage --enable-fuzzing-interfaces --enable-all --include wrapper

    Saved results from previous run to: output.last/

    Valgrind mode enabled, will import previous coverage from:
        output.last/valgrind-coverage/

[+] Total test buckets to execute: 2

[Rijndael] [fko-wrapper] multiple libfko calls (with valgrind)......pass (1)
[Rijndael] [fko-wrapper] multiple libfko calls......................pass (2)
[profile coverage] gcov profile coverage............................pass (3)
[valgrind output] [flagged functions] ..............................pass (4)

    Run time: 5.85 minutes

[+] 0/0/0 OpenSSL tests passed/failed/executed
[+] 0/0/0 OpenSSL HMAC tests passed/failed/executed
[+] 4/0/4 test buckets passed/failed/executed
2014-04-26 23:04:44 -04:00
Michael Rash
e1dde1733a [test suite] python fuzzer - more field length variations to hit MAX_SPA_MESSAGE_SIZE 2014-04-26 23:01:47 -04:00
Michael Rash
91a60b8d91 [test suite] libfko wrapper is already called in Rijndael tests 2014-04-26 22:35:57 -04:00
Michael Rash
367424ece5 [test suite] python fuzzer - account for base64 strings that have stripped '=' chars 2014-04-26 22:03:32 -04:00
Michael Rash
e00add778e [test suite] python fuzzer - add fuzzing fields to original fields (interim commit) 2014-04-26 17:03:47 -04:00
Michael Rash
1deccfd005 [test suite] python fuzzer - break out fuzzing sections into dedicated functions 2014-04-24 22:11:04 -04:00
Michael Rash
4b11232249 [test suite] add command mode SPA payload and splicing tests to python fuzzer 2014-04-23 23:31:37 -04:00
Michael Rash
b9e2a42c5c [test suite] support multiple initial SPA payloads in the python fuzzer 2014-04-22 23:48:13 -04:00
Michael Rash
cd8a2493a7 [test suite] python fuzzer additional tests 2014-04-22 23:20:06 -04:00
Michael Rash
b28b8b5de1 [libfko] fix double free bug in SPA parser
This commit fixes a double free condition discovered through the new
python SPA payload fuzzer.  This bug could be triggered in fwknopd with
a malicious SPA payload but only when GnuPG is used.  When Rijndael is
used for SPA packet encryption, this bug cannot be triggered due to an
length/format check towards the end of _rijndael_decrypt().  It should
be noted that only a person in possession of the correct encryption and
authentication GnuPG keys could trigger this bug.
2014-04-22 21:58:09 -04:00
Michael Rash
beb8df4643 [test suite] add python SPA packet payload fuzzer 2014-04-22 21:00:16 -04:00
Michael Rash
63a59bf48b [test suite] add --enable-fuzzing-interfaces, fix profile coverage file handling 2014-04-22 20:58:03 -04:00
Michael Rash
f4a8c0fda8 [libfko] for fuzzing purposes, added fko_set_encoded_data() to bypass encryption and authentication for SPA payloads 2014-04-18 21:39:54 -04:00
Michael Rash
4d167cd7df credit Blair and Tim with MacPorts and Homebrew maintainer status 2014-04-13 21:39:50 -04:00
Michael Rash
f47ceefd1f changes since 2.6.0 2014-04-12 15:25:03 -04:00
Michael Rash
67dd1d5bdd [server] bug fix to allow IP-formatted masks for SOURCE lines in access.conf 2014-04-12 15:21:00 -04:00
Michael Rash
55965dd1a4 minor typo fix 2014-04-12 15:20:31 -04:00
Michael Rash
b243bb4bb7 [client] fix minor memory leak before exit() in parsing invalid time offsets 2014-04-11 22:45:27 -04:00
Michael Rash
2cafdad968 bump version to 2.6.1 2014-04-11 22:41:00 -04:00
Michael Rash
b97484734e [client] fix memory leak introduced in 0ff210099 2014-04-10 23:18:44 -04:00
Michael Rash
b422f1b9a7 [test suite] implement new fwknopd access/fwknopd.conf file writing feature similar to client rc file writing/testing 2014-04-10 23:10:11 -04:00
Michael Rash
c75cbdddef [test suite] add compounded tests for fko-wrapper 2014-04-10 23:08:51 -04:00
Michael Rash
fdb8c890e9 [server] make parse_access_file() exit if there is a variable formatting problem 2014-04-10 23:08:19 -04:00
Michael Rash
4b86edbbe2 [client] ensure to call fko_destroy() on the correct context if encryption mode could not be determined 2014-04-10 23:07:39 -04:00
Michael Rash
f539afc750 [client] make is_rc_param() error condition fatal 2014-04-10 20:48:05 -04:00
Michael Rash
55d1ee3fd9 [test suite] --key-* arg validation with --fd 0 2014-04-09 23:56:50 -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
0ff2100993 [test suite/client] memory leak bug fix and test coverage
This commit fixes a minor memory leak in the fwknop client before
calling exit() when an abnormally large number of command line arguments
are given.  The leak was found with valgrind together with the test
suite (specifically the 'show last args (4)' test):

==23748== 175 bytes in 50 blocks are definitely lost in loss record 1 of 1
==23748==    at 0x4C2C494: calloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
==23748==    by 0x1112F1: run_last_args (fwknop.c:991)
==23748==    by 0x110D36: prev_exec (fwknop.c:916)
==23748==    by 0x10D953: main (fwknop.c:170)

Additional test coverage was added for the client via the
basic_operations.pl tests.
2014-04-08 21:12:46 -04:00
Michael Rash
2e4eea8d49 [libfko] minor formating update for strtol_wrapper() range output messages 2014-04-08 21:08:24 -04:00
Michael Rash
5752433420 [libfko] minor comment re-wording 2014-04-08 21:06:45 -04:00
Michael Rash
d327f99efb [client] minor typo fix 2014-04-08 21:06:18 -04:00
Michael Rash
e5169d0878 [test suite] env HOME tests, -R http resolve tests 2014-04-08 11:15:53 -04:00
Michael Rash
d9c1eb8f51 [test suite] more client/config_init.c test coverage 2014-04-07 22:31:56 -04:00
Michael Rash
5da38165ef [test suite] KEY_FILE and HMAC_KEY_FILE tests 2014-04-06 22:21:14 -04:00
Michael Rash
c6cb892a05 [test suite] more client/config_init.c test coverage 2014-04-06 22:14:10 -04:00
Michael Rash
5176cd0976 [test suite] additional test coverage for client/config_init.c 2014-04-06 21:27:15 -04:00
Michael Rash
09fb2dd240 [test suite] allow tests/*.pl files to use lib_view_str variable directly 2014-04-06 21:27:07 -04:00
Michael Rash
4d63644ce7 [test suite] additional test coverage for client/config_init.c 2014-04-06 15:42:22 -04:00
Michael Rash
710720b237 [test suite] non-default stanza digest update test 2014-04-05 23:09:04 -04:00
Michael Rash
e95d601a48 [test suite] added --key-gen -K file path too long test 2014-04-05 21:51:56 -04:00
Michael Rash
48eb5fcc94 [test suite] added key file path too long tests 2014-04-05 21:29:24 -04:00