{
  "port": 3551,
  "protocol": "tcp",
  "service": "apcupsd NIS",
  "oneLiner": "apcupsd's Network Information Server — UPS status for apcaccess and dashboards, unauthenticated.",
  "whatItIs": "apcupsd monitors an APC UPS and shuts the machine down cleanly on a power failure; its Network Information Server listens on TCP 3551 and hands out the status block you see from apcaccess — line voltage, battery charge, time on battery, load percentage. Home servers, NAS boxes, Home Assistant installs, and monitoring agents poll it. The NIS is read-only status by design, and it has no authentication: access control is the NISIP bind address and your firewall.",
  "exposure": {
    "verdict": "never",
    "note": "Unauthenticated and cleartext, and it advertises exactly when a host is running on battery — bind NISIP to 127.0.0.1 or a LAN address and keep it off any public interface."
  },
  "checkCommand": "apcaccess status TARGET:3551",
  "links": [
    {
      "title": "apcupsd project page",
      "url": "https://sourceforge.net/projects/apcupsd/",
      "kind": "official-docs"
    },
    {
      "title": "IANA port registry — 3551 (apcupsd)",
      "url": "https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml?search=3551",
      "kind": "iana"
    }
  ]
}
