dhcp server does not support HMAC-SHA256
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
isc-dhcp (Ubuntu) |
Confirmed
|
Wishlist
|
Unassigned |
Bug Description
It seems the isc-dhcp server either does not support HMAC-SHA256 or it is broken.
Steps to reproduce
Setup a ddns using isc-dhcp and bind9. Use a HMAC-MD5 key between dhcp and bind
Confirm that the setup is working. Then repeat these steps:
mpower@
Kdhcp.+163+35012
mpower@
dhcp. IN KEY 512 3 163 N1fUVe1skmNjDOh
Private-key-format: v1.3
Algorithm: 163 (HMAC_SHA256)
Key: N1fUVe1skmNjDOh
Bits: AAA=
Created: 20110614185327
Publish: 20110614185327
Activate: 20110614185327
mpower@
mpower@
...
#key dhcp {
# algorithm HMAC-MD5;
# secret "######
#};
key dhcp {
algorithm HMAC-SHA256;
secret "N1fUVe1skmNjDO
};
...
mpower@
mpower@
...
#key dhcp {
# algorithm HMAC-MD5;
# secret "######
#};
key dhcp {
algorithm HMAC-SHA256;
secret "N1fUVe1skmNjDO
};
...
mpower@
* Stopping domain name service... bind9 [ OK ]
* Starting domain name service... bind9 [ OK ]
mpower@
* Stopping ISC DHCP server dhcpd [ OK ]
* Starting ISC DHCP server dhcpd [ OK ]
tail -f /var/log/syslog
...
Jun 14 11:58:51 dodtsair dhcpd: if ubuntu1104.
Jun 14 11:58:51 dodtsair dhcpd: DHCPREQUEST for 192.168.122.2 from 52:54:00:0e:b5:00 via virbr0
Jun 14 11:58:51 dodtsair dhcpd: DHCPACK on 192.168.122.2 to 52:54:00:0e:b5:00 (ubuntu1104) via virbr0
...
HMAC-MD5 works HMAC-SHA256 does not. MD5 is fairly broken, SHA1 is on the way out. SHA256 is next my list of secure hashes to use.
Note also dhcp servers cryptic error message "bad DNS key". DHCP should verify it supports the key algorithm on start up not on first use. It should also state something more like "bad DNS key algorithm: HMAC-SHA256, not supported by dhcpd"
ProblemType: Bug
DistroRelease: Ubuntu 11.04
Package: isc-dhcp-server 4.1.1-P1-15ubuntu9
ProcVersionSign
Uname: Linux 2.6.38-8-generic x86_64
Architecture: amd64
Date: Tue Jun 14 12:00:03 2011
ProcEnviron:
LANGUAGE=en_US:en
PATH=(custom, user)
LANG=en_US.UTF-8
SHELL=/bin/bash
SourcePackage: isc-dhcp
UpgradeStatus: Upgraded to natty on 2011-05-17 (28 days ago)
security vulnerability: | yes → no |
visibility: | private → public |
Ubuntu is certainly not going to do any implementation work on this, though 4.2 will soon land in 12.10 and it'll be interesting to know whether hmac-sha256 is included in that release.
Quickly scanning through the code I couldn't easily find which algorithms are supported, though there clearly isn't any reference to sha256 in there.
I'd strongly recommend sending an e-mail to upstream (isc) about that feature request as they're the most likely to implement it.