GovLeaderboard

Hennepin County

Seat: Minneapolis1,284,784 people www.hennepincounty.gov @hennepin.us

B

82/100

#3 of 87 in Minnesota

Email

87/100

6 of 8 checks passed

Website

91/100

9 of 11 checks passed

Domain

55/100

2 of 5 checks passed

What to fix first

  1. +4Turn on MTA-STS in enforce mode
  2. +3Add a CAA record
  3. +3Turn on DNSSEC
  4. +3Move to a .gov domain
  5. +2Publish a security.txt file
  6. +2Add a TLS report record

Plus 1 smaller fix below.

Email87/100

Stops people from sending fake email that looks like it came from the county.

Pass Fake email gets blocked (DMARC)Fake email using the county's address gets rejected (p=reject). 20/20

Why it matters. A DMARC policy tells Gmail, Outlook and every other mail service what to do with email that claims to be from the county but isn't. With p=reject the fake mail is thrown away. With p=quarantine it goes to spam. With p=none nothing happens to it.

What we saw

_dmarc.hennepin.us: v=DMARC1;p=reject;rua=mailto:vkexjltz@ag.dmarcian.com,mailto:dmarcreports@hennepin.us;ruf=mailto:dmarcreports@hennepin.us

How this check works

Pass Made-up subdomains are covered tooMail from made-up subdomains is rejected too. 3/3

Why it matters. Scammers can send from addresses like billing.hennepin.us that the county never set up. The DMARC record decides what happens to that mail with its sp= setting.

What we saw

_dmarc.hennepin.us: v=DMARC1;p=reject;rua=mailto:vkexjltz@ag.dmarcian.com,mailto:dmarcreports@hennepin.us;ruf=mailto:dmarcreports@hennepin.us

How this check works

Pass The county gets DMARC reportsThe county collects DMARC reports. 3/3

Why it matters. Reports show every server sending mail in the county's name, real or fake. They are how the county knows it is safe to turn on blocking.

What we saw

_dmarc.hennepin.us: v=DMARC1;p=reject;rua=mailto:vkexjltz@ag.dmarcian.com,mailto:dmarcreports@hennepin.us;ruf=mailto:dmarcreports@hennepin.us

How this check works

Pass Approved mail servers are listed (SPF)SPF lists the approved servers and says every other server is fake (-all). 8/8

Why it matters. SPF lists the servers allowed to send the county's email. Ending it with -all tells receivers that every other server is fake.

What we saw

v=spf1 include:spf1.hennepin.us include:spf.protection.outlook.com include:_spf-us.echoworx.com include:_spf.qemailserver.com include:_spf.qualtrics.com include:spf.mailjet.com -all

How this check works

Pass SPF stays under the 10 lookup limitSPF needs 6 of the 10 allowed lookups. 2/2

Why it matters. Mail services stop reading an SPF record after 10 lookups. Past that, the whole record counts as broken and stops protecting anything.

What we saw

v=spf1 include:spf1.hennepin.us include:spf.protection.outlook.com include:_spf-us.echoworx.com include:_spf.qemailserver.com include:_spf.qualtrics.com include:spf.mailjet.com -all

How this check works

Pass Outgoing mail is signed (DKIM)Found DKIM signing keys (selector1, k2). 3/3

Why it matters. DKIM adds a signature to every message, so receivers can tell it really came from the county and wasn't changed on the way. Keys live under names the county picks, so this check only looks at the common ones. Not finding a key never lowers the score.

What we saw

selector1._domainkey.hennepin.us, k2._domainkey.hennepin.us

How this check works

Fail Incoming mail must be encrypted (MTA-STS)hennepin.us has no MTA-STS record, so other servers may deliver mail to it without encryption. 0/4

Why it matters. Without MTA-STS, someone in the middle of the network can quietly strip the encryption off mail sent to the county and read it. MTA-STS in enforce mode tells sending servers to refuse that.

How to fix it. Host a policy file at https://mta-sts.hennepin.us/.well-known/mta-sts.txt with mode: enforce and your MX hosts, then publish TXT _mta-sts.hennepin.us "v=STSv1; id=1". Start with mode: testing if you want to watch first.

How this check works

Fail The county hears about failed encrypted deliveryNo TLS report record, so the county never hears when secure delivery fails. 0/2

Why it matters. TLS reports tell the county when other servers could not deliver mail to it securely, which can mean a broken certificate or an attack.

How to fix it. Publish TXT _smtp._tls.hennepin.us "v=TLSRPTv1; rua=mailto:tlsrpt@hennepin.us".

How this check works

Website91/100

Keeps visits to the county website private and hard to tamper with.

Pass The website uses HTTPS with a valid certificateThe website loads over HTTPS with a trusted certificate. 10/10

Why it matters. HTTPS keeps what visitors read and type on the site private, and proves they reached the real county site. A broken or expired certificate shows people a scary warning.

What we saw

https://www.hennepincounty.gov/

How this check works

Pass http:// visitors are sent to https://http:// visitors are sent to the https:// site. 4/4

Why it matters. People still type addresses without https. If the plain version of the site loads, those visits travel unprotected.

What we saw

http://www.hennepincounty.gov/ -> https://www.hennepincounty.gov/

How this check works

Pass Browsers are told to always use HTTPS (HSTS)Browsers are told to use HTTPS only, for 365 days at a time. 5/5

Why it matters. HSTS makes browsers remember to use the secure site, so nobody on public Wi-Fi can trick them into the insecure one first.

What we saw

max-age=31536000; includeSubDomains; preload

How this check works

Pass The newest encryption (TLS 1.3) worksTLS 1.3 works. 3/3

Why it matters. TLS 1.3 is faster and drops the weak options older versions allowed.

How this check works

Pass Retired encryption (TLS 1.0 and 1.1) is turned offTLS 1.0 and 1.1 are turned off. 4/4

Why it matters. TLS 1.0 and 1.1 have known weaknesses and every major browser dropped them in 2020. Leaving them on only helps attackers.

How this check works

Pass The certificate isn't about to expireThe certificate is good for 176 more days. 2/2

Why it matters. When a certificate expires, every visitor sees a security warning and many can't reach the site at all.

What we saw

Expires 2027-04-07, issued by DigiCert Inc

How this check works

Partly Scripts are limited (Content Security Policy)The site sends a Content Security Policy, but it still lets scripts run from anywhere or inline. 1/2

Why it matters. A Content Security Policy lists where scripts on the site may come from. If an attacker slips code into a page, the browser refuses to run it.

How to fix it. Send a Content-Security-Policy header. Many CMS vendors document one that fits their platform.

What we saw

upgrade-insecure-requests

How this check works

Pass Browsers don't guess file typesBrowsers are told not to guess file types. 1/1

Why it matters. Without this header a browser may run an uploaded file as a script just because it looks like one.

What we saw

nosniff

How this check works

Pass Other sites can't frame the county siteOther sites can't load this one in a frame. 1/1

Why it matters. A fake site can load the real county site in a hidden frame and trick people into clicking buttons they can't see.

What we saw

X-Frame-Options: SAMEORIGIN

How this check works

Pass Visitors' page addresses aren't shared with other sitesFull page addresses aren't shared with other sites. 1/1

Why it matters. A referrer policy stops the full address of the page someone was on, which can include search terms or case numbers, from being sent to other sites.

What we saw

Referrer-Policy: strict-origin-when-cross-origin

How this check works

Fail Security problems can be reported (security.txt)There is no security.txt file at https://www.hennepincounty.gov/.well-known/security.txt. 0/2

Why it matters. A security.txt file tells people who find a problem with the county's systems exactly who to tell. Without it, many reports never arrive.

How to fix it. Publish https://www.hennepincounty.gov/.well-known/security.txt with a Contact: line (an email address or form) and an Expires: date.

How this check works

Domain55/100

Protects the county's internet address itself.

Partly Uses a .gov domainwww.hennepincounty.gov is on .gov, but hennepin.us isn't. 3/6

Why it matters. Only real US government bodies can get a .gov address, and it is free for them. People can trust a .gov address in a way they can't trust a .us or .com one.

How to fix it. Request a .gov domain from get.gov (run by CISA), then move the website and email to it.

What we saw

www.hennepincounty.gov, hennepin.us

How this check works

Partly DNS answers are signed (DNSSEC)hennepincounty.gov is signed, but hennepin.us isn't. 3/6

Why it matters. DNSSEC signs the county's DNS records, so nobody can send visitors or email to a fake server by forging the answers.

How to fix it. Turn on DNSSEC with your DNS host, then add the DS record it gives you at your registrar (for .gov, in the get.gov dashboard).

What we saw

hennepincounty.gov: signed
hennepin.us: unsigned

How this check works

Fail Only chosen companies can issue certificates (CAA)There is no CAA record, so any certificate company may issue certificates for the domain. 0/3

Why it matters. A CAA record lists the certificate companies the county uses. Every other company must refuse to issue a certificate for the county's domain.

How to fix it. Add a CAA record such as 0 issue "letsencrypt.org" (or your certificate provider) to the domain.

How this check works

Pass Name servers in more than one address blockThe domain has name servers in more than one address block. 2/2

Why it matters. If all of a domain's name servers sit on one network, one outage takes the website and email offline together.

What we saw

hennepincounty.gov: georgetown.co.hennepin.mn.us, jamestown.co.hennepin.mn.us
hennepin.us: georgetown.co.hennepin.mn.us, jamestown.co.hennepin.mn.us, ns2.hennepin.us, ns3.hennepin.us

How this check works

Pass The website works over IPv6The website has an IPv6 address. 3/3

Why it matters. Many phone networks and newer internet connections use IPv6. A site with an IPv6 address is reachable over them directly.

What we saw

www.hennepincounty.gov AAAA 2603:1061:14:1d1::1

How this check works

Hennepin and its neighbors

3 Hennepin B82 87 91 55
7 Anoka C76 87 83 40
7 Ramsey C76 87 74 55
9 Dakota C74 84 89 25
24 Scott D65 76 74 25
37 Wright F59 47 69 70
43 Sherburne F52 47 83 10
47 Carver F51 29 - 55

Score history

First checked on Oct 13, 2026. The history chart fills in as daily scans add up.

This score only covers settings anyone can see from the internet. It can't see passwords, backups, staff training or anything inside the county's network, so a high score doesn't mean a county is safe, and a low one doesn't mean it has been hacked.

Work for Hennepin County and something looks wrong? Email hello@govleaderboard.com and we'll recheck it. Last checked Oct 13, 2026, 3:02 PM CT.

Looking for Hennepin County offices and records? Find them on GISFinder.