Changeset 1026
- Timestamp:
- 03/02/08 02:40:01 (9 months ago)
- Files:
-
- fwknop/trunk/ChangeLog (modified) (1 diff)
- fwknop/trunk/fwknop (modified) (5 diffs)
- fwknop/trunk/fwknopd (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
fwknop/trunk/ChangeLog
r1025 r1026 1 1 fwknop-1.9.2 (02//2008): 2 - Crypt::CBC adds the string "Salted__" to the beginning of the encrypted 3 text (at least for how fwknop interfaces with Crypt::CBC), so the fwknop 4 client was updated to delete the encoded version of this string 5 "U2FsdGVkX1" before sending a Rijndael-encrypted SPA packet on the wire. 6 The fwknopd server will add this string back in before decrypting. This 7 makes it harder to write an IDS signature that looks for fwknop traffic; 8 e.g. look for the default prefix string "U2FsdGVkX1" over UDP port 62201, 9 which would work for fwknop clients < 1.9.2 (as long as the port number 10 is not changed with --Server-port). 2 11 - (Grant Ferley) Submitted patch to handle SIGCHLD in IPTables::ChainMgr. 3 12 - (Grant Ferley) Submitted patch to handle Linux "cooked" interfaces for fwknop/trunk/fwknop
r1025 r1026 81 81 my $gpg_recipient = ''; 82 82 my $use_gpg_agent = 0; 83 my $gpg_agent_info = '';84 83 my $max_msg_len = 1500; 85 84 my $gpg_verbose = 0; 85 my $gpg_agent_info = ''; 86 my $include_salted = 0; 86 87 my $gpg_default_key = 0; 87 88 my $err_wait_timer = 30; ### seconds … … 699 700 ); 700 701 my $encoded_msg = encode_base64($cipher->encrypt($msg), ''); 702 703 ### Crypt::CBC adds the string "Salted__" to the beginning of the 704 ### encrypted text (at least for how we create the cipher object 705 ### above), so delete the encoded version of this string ("U2FsdGVkX1") 706 ### before sending on the wire. The fwknopd server will add this 707 ### string back in before decrypting. This makes it harder to write 708 ### an IDS signature that looks for fwknop traffic (e.g. look for the 709 ### string "U2FsdGVkX1" over UDP port 62201). 710 unless ($include_salted) { 711 print "[+] Stripping encoded Salted__ prefix (U2FsdGVkX1) from ", 712 "outgoing encoded SPA packet.\n" if $debug; 713 $encoded_msg =~ s/^U2FsdGVkX1//; ### encoded "Salted__" string 714 } 701 715 702 716 print "[+] Encrypted message: $encoded_msg\n" if $debug; … … 1374 1388 'get-key=s' => \$get_key_file, 1375 1389 'Home-dir=s' => \$cmdl_homedir, 1390 'Include-salted' => \$include_salted, 1376 1391 'Test-mode' => \$test_mode, 1377 1392 'debug' => \$debug, … … 1546 1561 behind a NAT device). Note that the -w 1547 1562 option should really be used instead. 1563 -F, --Forward-access <NAT> - Access an internal server (say, SSH) by 1564 instructing the remote fwknopd instance to 1565 build inbound DNAT rules. The format of the 1566 argument is <InternalIP>,<Port> where 1567 InternalIP is the internal system and Port 1568 is the port number that will be forwarded. 1548 1569 -R, --Resolve-external-IP - Resolve client IP via the 1549 1570 http://www.whatismyip.org/ website. This is … … 1561 1582 PERMIT_CLIENT_TIMEOUT in access.conf on the 1562 1583 fwknopd server side). 1584 --I, --Include-salted - Include the encoded "Salted__" prefix; this 1585 is only necessary for older versions of the 1586 fwknopd server (< 1.9.2). 1563 1587 --Save-dst - Save the command line args for this 1564 1588 invocation against the destination to the fwknop/trunk/fwknopd
r1019 r1026 1998 1998 my $gpg_sign_id = ''; 1999 1999 2000 $msg .= '==' if $msg !~ /==$/;2001 2002 2000 print STDERR localtime() . " [+] Attempting GnuPG decrypt...\n" if $debug; 2003 2001 if ($debug and $verbose) { … … 2113 2111 my $decrypt_rv = 0; 2114 2112 2113 unless ($msg =~ /^U2FsdGVkX1/) { 2114 if ($debug) { 2115 print STDERR localtime() . " [+] Adding encoded Salted__ prefix ", 2116 "(U2FsdGVkX1) to incoming encoded SPA packet.\n" 2117 } 2118 $msg = 'U2FsdGVkX1' . $msg; 2119 } 2120 2115 2121 print STDERR localtime() . " [+] Attempting Rijndael decrypt...\n" if $debug; 2116 2117 ### make sure the trailing "==" is there for the base64 decode2118 $msg .= '==' if $msg !~ /==$/;2119 2122 2120 2123 if ($debug and $verbose) {
