Edit mode
Confidential · Security Audit

Technical Security Audit. Video Surveillance System

Dahua CCTV / NVR / XVR Deployment
PropertyThe Gallery (high-rise residential)
Network10.1.8.0/24  ·  public IP 162.255.94.170
Date23 July 2026
Prepared byAref Kashani, Elberta Labs LLC

This assessment covered a Dahua fleet of 68 IP cameras, a 64-channel NVR, and a set of DVR/XVR recorders. The recorders are exposed to the public internet through the UPnP and P2P features. The administrator password is guessable. Four end-of-life cameras carry vulnerabilities that are listed as actively exploited and cannot be patched. Most on-device hardening controls are disabled. Follow-up investigation confirmed that recorders (.31/.32/.33) have already been compromised by unauthorized parties. The NVR and one XVR (.34) run firmware recent enough to be free of known exploitable CVEs and carry none of the unauthorized administrator accounts found on the other three; for these two devices the primary risk is exposure and configuration rather than unpatched software. Finally, those four end-of-life cameras carry current known vulnerabilities, which remain a concern unless internet egress is disabled at the gateway level.

 Contents

1. Scope and methodology
2. Asset inventory
3. Findings (F1 to F10)
4. Vulnerability assessment
5. Risk assessment
6. Remediation plan
7. Evidence index
8. Citations
9. Confidence and limitations
10. Open questions and next steps

1Scope and methodology

Scope. The surveillance network 10.1.8.0/24 and the site's internet-facing IP 162.255.94.170, performed with owner authorization as a defensive security audit. Methods. ICMP host discovery; TCP port scanning (internal and external); MAC/OUI vendor identification; authenticated Dahua HTTP API queries (magicBox.cgi, configManager.cgi over HTTP Digest/Basic); authentication-realm fingerprinting to map exposed ports to internal devices; on-site console and web-UI inspection; and CVE cross-referencing against NVD, CISA KEV, and Dahua PSIRT affected-model lists.

Coverage. Firmware was read from 39 of 68 cameras plus the NVR and one XVR. At the time of the initial pass, 29 cameras and 3 exposed recorders were not readable (different per-device credentials, non-standard ports, or no HTTP) and were recorded as unassessed. Credentialed access to the three remaining exposed recorders (.31/.32/.33) was subsequently obtained and is reflected throughout this document; the 29 unread cameras remain unassessed.

Note on timeline. Safely obtaining credentials for each of the three remaining recorders, mapping external ports to internal devices, cataloguing the accounts present on each, and identifying exactly which camera channels each device could see was hands-on, on-device work spanning parts of two days (analysis on 23 July, device-by-device confirmation on 24 July), roughly ten hours in total. This was deliberate: the priority was confirming the exposure precisely and without disturbing evidence, not a quick scan.

2Asset inventory

Asset classCountNotes
IP cameras (Dahua)68Predominantly IPC-HFW5842TP-ASE-S3 (8MP WizMind); mixed older models
NVR (recorder)1N98A6N = DHI-NVR608H-64-XI, 64-ch, FW V4.000.0000000.4.R (2023-08-31)
DVR / XVR recorders4DH-XVR5216A-4KL-I3 at 10.1.8.34 (port 91) and 3× X72A3A-platform units (.31/.32/.33, ports 88/89/90). Together with the NVR above (port 93) these form the five internet-exposed recorders; the NVR is counted in the row above, not double-counted here. Three of the five, .31/.32/.33, are confirmed compromised (Finding F10)
Network / other~8TP-Link gateway (10.1.8.1), Raspberry Pi (SSH-only), Roku, Dell PC, assessment host
Total live hosts77on 10.1.8.0/24

3Findings

F1Recorders exposed to the public internet via UPnP and P2PCritical

An external scan of 162.255.94.170 found open ports 53, 80, 88, 89, 90, 91, 93, 443, 37777, 37778, 37779, 37780, 37782. Web ports 88, 89, 90, 91, and 93 are five distinct Dahua recorders (each with a unique authentication realm), mapped by realm fingerprint to internal devices:

External portInternal deviceIdentity / firmwareNotes
8810.1.8.31X72A3A, FW V4.001.0000000.15 (2021-10-13)CONFIRMED COMPROMISED
8910.1.8.32X72A3A, FW V4.001.0000000.15 (2021-10-13)CONFIRMED COMPROMISED
9010.1.8.33X72A3A, FW V4.001.0000000.15 (2021-10-13)CONFIRMED COMPROMISED
9110.1.8.34DH-XVR5216A-4KL-I3, FW V4.001.0000002.1.R (2024-08-06)Confirmed clean
93The main 64-ch NVR (N98A6N)FW V4.000.0000000.4.R (2023-08-31); same device inventoried in Section 2Confirmed clean

Root cause. The recorders enable UPnP Port Mapping (the device requests the router to forward its ports) and P2P/Easy4ip cloud (an outbound tunnel to the vendor cloud). Both were observed enabled; P2P status was Online. Deleting a router forward is therefore insufficient: UPnP recreates it, and P2P provides a separate outbound path that does not depend on inbound forwarding. Ports 37777 to 37782 expose Dahua's private SDK/DHIP protocol, which is commonly scanned on the internet and has been the vector for several Dahua CVEs.

Evidence: E5 external scan, E6 realm mapping, E14 (confirms port 93 = the NVR), E3 XVR UPnP page (Port Mapping on), E2 XVR P2P page (enabled, Online). Validate: external TCP connect scan; each web port returns a distinct WWW-Authenticate: Digest realm="Login to …".
F2Administrator password is guessable; lockout does not mitigate itCritical

The administrator password follows a predictable pattern: the installer's company name followed by the digit 1. This is the kind of default an integrator reuses across sites. The device's own password-strength indicator rates it weak. The Account-Lockout control (five attempts, 30-minute lock; confirmed enabled) throttles large-scale blind guessing but provides little protection against a targeted guess: a person who knows the installer needs only a few attempts, not thousands. Passwords are also inconsistent across devices (at least 16 cameras and 3 exposed recorders use different credentials), which complicates rotation and incident response. The internet-facing admin interfaces use plain HTTP (a cleartext channel).

Impact: an interface that is reachable from the internet (F1) and guessable together allow external administrator access with limited effort. The literal password is held out of this document and should be rotated.
F3Four end-of-life cameras with unpatchable, actively-exploited flawsCritical

Cameras 10.1.8.113, .117, .206, .224 (IPC-HDBW5431EP-Z-S2, IPC-HDW5631C) run 2017-era firmware, discontinued with no fixed firmware available. They are vulnerable to CVE-2021-33044 and -33045 (CVSS 9.8, unauthenticated administrator takeover, on CISA's Known Exploited Vulnerabilities list), plus CVE-2021-33046 and CVE-2020-9502 (both 9.8). The remediation is replacement. A fifth camera, .115 (IPC-HDBW4231E-AS, 2018, EOL), is treated as vulnerable by extension.

Evidence: on-device build dates 2.460.x / 2.622.x (2017). Validate: NVD and CISA KEV (Section 8).
F4On-device hardening controls disabled; resident video in cleartextHigh

On the inspected recorder's Security pages, the following were disabled: Firewall (IP/MAC allowlist), Anti-DoS (SYN and ICMP flood), 802.1x, video-stream encryption (Private Protocol), and RTSP-over-TLS. Only Account Lockout was enabled. Video streams therefore traverse the network unencrypted, and a recorder can be flooded offline (loss of recording) with limited effort.

ControlStateConsequence
Firewall (IP/MAC allowlist)OffNo restriction on who can connect
Anti-DoS (SYN + ICMP flood)OffCan be flooded offline
802.1x network access controlOffAny LAN host can reach it
Stream encryption (Private Protocol)OffVideo in cleartext
RTSP over TLSOffRTSP video in cleartext
Account Lockout (5 / 30 min)OnBrute-force throttled (only active defense)
Evidence: on-device Security-page inspection of the readable XVR (10.1.8.34).
F5U.S.-restricted foreign vendor; recorder internet access confirmed, camera egress unconfirmedHigh

Dahua is barred from U.S. federal use (NDAA §889), on the FCC Covered List (new-equipment authorizations barred), and on the U.S. Commerce Entity List for Xinjiang human-rights abuses. Under China's 2017 National Intelligence Law it can be legally compelled to assist state intelligence.

Recorder (confirmed, both directions). Outbound access (egress) is confirmed by the P2P/Easy4ip cloud showing Status: Online, which is only possible if the device reached the vendor cloud over the internet. Inbound access (ingress) is confirmed by the recorder's reachability from the public internet through port-forwarding. The device's own notice states it collects “IP address, MAC address, device name, device SN and more.”

Cameras (unconfirmed). The cameras are configured with a route to the internet (gateway 10.1.8.1, external DNS 8.8.8.8). Whether they are actually permitted internet egress is not confirmed, and the available signs are not encouraging: a host on the same subnet (10.1.8.0/24) reached external hosts directly (TCP 443 and 53, ICMP), and that subnet's gateway is the primary internet path. A definitive answer requires review of the router's (TP-Link) egress rules, which needs the router credentials. Covert exfiltration is not proven; the risk is capability, legal compulsion, and track record. Denying the cameras internet egress removes the question.

Evidence: E2 P2P Online + collection notice, E4 TCP/IP config, E11 egress test. Validate: router egress/DNS logs for *.easy4ip.com, *.dahuaddns.com, *.quickddns.com; and the router ACL/port-forward configuration.
F6Firmware behind current (defense-in-depth)Medium

The NVR (V4.000.0000000.4.R, 2023-08-31) is roughly two years behind the latest line; several cameras trail current builds. No known exploitable CVE results from this at the current builds (Section 4), but currency should be maintained. The 8-series fisheyes .3/.208 should be updated (potential 2024 8-series advisory scope).

F7Incomplete camera inventory coverageMedium

29 of 68 cameras could not be read (different per-device credentials). These cannot be certified clean. The three previously-unread exposed recorders (.31/.32/.33) have since been read; see Finding F10.

F8Unidentified, remotely-accessible device on the surveillance networkHigh

A Raspberry Pi (10.1.8.196, MAC B8-27-EB-11-EE-F7) is present on the surveillance network, and no current vendor or building staff can account for it. It exposes only SSH (port 22) with password login disabled (key-only), so it is remotely administered by a third party who holds the private key; it runs a custom ~2016-era appliance image and serves nothing locally (outbound-oriented). It was not physically located after searching four networking closets and the AV room (2026-07-24). Identification research ruled out access-control hardware and narrowed it to an MSP network-monitoring sensor or an integrator remote-support / reverse-tunnel box. Risk: a third party may retain remote access to a device on the surveillance network. Notable lead: the prior integrator TeleNavigators (Dave Klepp) let its domain lapse to a foreign host, so any leftover phone-home could now reach infrastructure controlled by someone else. Action: pull the device's outbound DNS/NetFlow from the router to name the owner; locate it, then bring it under management (rotate access, document) or decommission.

Detail: full fingerprint, ranked hypotheses, router grep list, and on-device triage are in hosts/RaspberryPi-10.1.8.196.md.
F9Network segmentation weakness (consumer device on the camera switch)Medium

A consumer Roku streaming device (10.1.8.137) was found cabled into the camera switch rather than the main network, placing a non-security appliance on the same segment as the cameras and recorders. It was disconnected and relocated during the assessment. This indicates the surveillance network is not cleanly isolated: unrelated devices share the camera segment, which widens the attack surface and complicates monitoring. Action: place the cameras and recorders on a dedicated VLAN with no non-security devices and no internet egress. The site gateway (TP-Link Omada ER7206) supports VLANs and per-segment ACLs, so this is achievable on existing hardware.

F10Three of five internet-exposed recorders are already compromised by unauthorized partiesCritical

Credentialed access to the three exposed recorders that were unread at the time of the initial pass (10.1.8.31 / port 88, 10.1.8.32 / port 89, 10.1.8.33 / port 90) shows that all three already carry unauthorized administrator accounts. This is not a theoretical exposure: outside parties have already created their own admin-level accounts on these devices. All three run the same platform and firmware, X72A3A, System Version V4.001.0000000.15, build date 2021-10-13, the oldest firmware generation in the fleet.

10.1.8.31 (port 88). Nine unexplained admin-group accounts, including config, vclubsql, roman, oldworld, newworld, and four accounts with a CISA remark (security, deafult, sixshuu, wrjquby): a taunt referencing the device's CISA-KEV-listed vulnerability. Exposed camera channels: the full parking deck stack, levels P1 through P5, plus the P5 elevator-hallway landing; vehicles and license plates are potentially legible in the footage.

10.1.8.32 (port 89). Eight unexplained admin-group accounts. Two, config and oldworld, also appear on .31/.33; the rest are a distinct cluster not seen on the other two units: goguberlin, viraentertainment, AlexGogu, Lipovonche, GermanyBerlin, plus the attacker “calling-card” accounts hackedBy and CamhubfreeTG (a naming pattern associated with Telegram channels that trade footage from compromised cameras). Exposed camera channels: interior elevator-lobby hallways on P1, P2, P3, and the Main Floor, plus P5/P6 parking, and a camera view of the building's MDF room (the main network/telecom equipment closet). This is the single highest-sensitivity exposure identified in this review: it lets an outside party see the physical network infrastructure itself, a materially different and more serious exposure than hallway or parking footage.

10.1.8.33 (port 90). Eight unexplained admin-group accounts, including config, vclubsql, roman, oldworld, newworld, deafult, and two CISA-remarked accounts. Exposed camera channels: common-area and perimeter only: lobby, front desk, the gallery/event space, the gate and side entries, the Rumson-lot area, and the compactor room.

More than one party, over time, not a single break-in. The evidence points to at least two distinct hands. .31 and .33 carry a near-identical account set (config, vclubsql, roman, oldworld, newworld, deafult, and the same CISA-taunt pattern), consistent with one actor or automated toolkit that hit both units and left a foothold (config, oldworld) on .32 as well. But .32 additionally carries a separate cluster seen on neither other unit, goguberlin, viraentertainment, AlexGogu, Lipovonche, GermanyBerlin, and the hackedBy / CamhubfreeTG calling cards, indicating at least one additional party reached that recorder. The correct reading is that these internet-exposed recorders were compromised by more than one outside party over a period of time, not in one clean pass. That matters for remediation: there is no single “patient zero” to close, and no basis to assume the intruders share tooling, persistence, or intent.

The two remaining internet-exposed recorders, 10.1.8.34 (port 91) and the main 64-channel NVR itself (port 93, the device previously listed as an unlocated fifth exposure), were also checked and carry only legitimate accounts. Both remain internet-exposed the same way as the compromised units, but neither shows evidence of a completed break-in.

Evidence: E17 (.31 system info), E18 (.31 rogue accounts), E19 (.31 exposed channels); E8 (.32 system info), E9 (.32 rogue accounts), E20 (.32 exposed channels); E10 (.33 system info), E10-ACCT (.33 rogue accounts), E12 (.33 exposed channels); E13 (.34 accounts, clean); E14 (port 93 identified as the NVR), E15 (NVR accounts, clean), E16 (NVR storage). Immediate action: see Section 6, Priority 0.

4Vulnerability assessment

4.1  Cameras (representative models)

IP(s)ModelFirmware / buildVerdictAction
.113, .117, .206, .224IPC-HDBW5431EP-Z-S2 / HDW5631C2.460.x / 2.622.x (2017)Vulnerable · 9.8 · KEVReplace (EOL, no fix)
.115IPC-HDBW4231E-AS2.622.x (2018)Likely vulnerableReplace / isolate
.3, .208IPC-EBW81242P-AS-S23.000.x (2021)UpdateUpdate to 3.000.0000000.17.R.250219
32 unitsIPC-HFW5842TP-ASE-S3 and newer2023-2024 buildsPatchedFirmware hygiene

4.2  NVR. DHI-NVR608H-64-XI, V4.000.0000000.4.R (2023-08-31)

No known exploitable CVE.   Patched against the 2021 auth-bypass (post-fix platform); out of scope for the 2024 (NVR4XXX / IPC-HX8XXX) and 2026 (per Dahua Affected-Models PDF) advisories. Risk is exposure and configuration, not firmware.

4.3  XVR. DH-XVR5216A-4KL-I3, V4.001.0000002.1.R (2024-08-06)

No known exploitable CVE.   Verified by exact-model matching against Dahua PSIRT affected-model lists:

CVEWhatVerdict (basis)
CVE-2025-31700/-317012025 unauth RCENot affected (affected list is cameras only; no XVR)
CVE-2021-33044/-33045auth bypass (KEV)Patched (XVR fix ~Jul-2021; build ~3 yrs newer)
CVE-2022-30564time-tamper (lists XVR5216A)Patched (fix Nov-2022; build ~21 mo newer)
CVE-2024-39944 / -399502024 crash/RCENot affected (NVR4XXX + IPC-HX8XXX only)
CVE-2026-291162026 unauth DoSNot affected (model not in Affected_Models.pdf)

Caveat. Not affected by these CVEs is not the same as hardened. This device remains internet-exposed with Anti-DoS disabled (F1, F4).

4.4  Recorders 10.1.8.31 / .32 / .33 (X72A3A), V4.001.0000000.15 (2021-10-13)

Confirmed compromised.   All three recorders share the same platform and firmware: X72A3A, System Version V4.001.0000000.15, build 2021-10-13, the oldest firmware and lowest security-baseline generation of any recorder in the fleet (Security Baseline V2.1, versus V2.3 on the NVR and the .34 XVR). The build date sits close to Dahua's mid-2021 fix window for CVE-2021-33044/-33045, but the version string does not cleanly map to a confirmed-patched baseline the way the newer .34 XVR does. Regardless of which specific CVE was the entry vector, unauthorized administrator accounts are already present on all three devices (Finding F10), so the vulnerability question is secondary to the confirmed compromise: these units must be treated as a live incident, not a patching exercise.

5Risk assessment (high-rise residential context)

The system records residents, guests, and deliveries throughout the lobbies, elevators, corridors, amenity areas, and parking. This is no longer a hypothetical. Outside parties already hold standing administrator access to three internet-exposed recorders (Finding F10), with attacker accounts tied to the CamhubfreeTG camera-hijacking operation, so live and stored footage, and every credential stored on those devices, must be treated as already exposed. In this residential context that means real resident harm: covert surveillance of individuals' comings-and-goings and daily patterns (enabling burglary timed to an empty unit, stalking, or extortion), the ability to disable or blind cameras during a physical intrusion, and a view into the building's own network infrastructure (the .32 MDF-room camera). It exposes the board directly to privacy and fiduciary liability, and breach-notification obligations may already be in force (see Section 6).

GapLikelihoodImpactRating
G1. Internet exposure of recorders and SDK ports (F1)HighRemote access to footage; camera disabling; LAN pivotCritical
G2. Guessable admin password on exposed interface (F2)HighExternal administrator access with a few guessesCritical
G3. EOL unpatchable cameras (F3)HighUnauthenticated takeover; permanent open doorsCritical
G4. Foreign vendor and internet access (F5)MediumResident imagery reachable by foreign cloud; counter-intel; reputationalHigh
G5. On-device defenses off; cleartext video (F4)Med-HighCleartext resident video; loss of recording via floodHigh
G6. Firmware currency (F6)MediumWidens the window for the next CVEMedium
G7. Unassessed cameras (F7)n/aUnknown-state devices; 29 of 68 cameras remain unreadMedium
G8. Confirmed active compromise on three recorders (F10)ConfirmedUnauthorized parties already hold standing admin access; parking, hallway, common-area, and MDF-room footage already exposedCritical

6Remediation plan

PriorityActionDevices / detail
P0: nowContain: pull the WAN uplinkBefore anything else, physically disconnect the site's internet uplink (or physically isolate .31/.32/.33 from it). This is the single fastest containment step: it kills the inbound port-forwards and any outbound command-and-control in one move, and it does not depend on logging into any compromised device. Cameras keep recording locally while contained. Everything below follows once the bleeding is stopped.
P0Treat .31/.32/.33 as a live incident: assume OS-level persistenceThese three recorders are actively compromised (Finding F10), not merely at risk. Closing port-forwards and changing passwords does not evict an intruder who already has admin/root on the device: the visible account list cannot be trusted as the full record of what was changed (hidden accounts, cloud-relay/DDNS targets, modified firmware/config are not fully auditable). Isolate all three and preserve state as evidence (next row) before any wipe. Because all three are the oldest end-of-life generation, replacement is the recommended route rather than an in-place clean: a factory reset does not remove OS-level persistence, and there is no current patched firmware to reflash these units to. See Section 6.1 for the full method, the reset-versus-reflash distinction, the replacement rationale, and sources.
P0Preserve evidence & notifyBefore wiping devices, preserve evidence: export/photograph the rogue account lists, logs, and configs already captured (evidence log E8–E20), and image devices where practical. Notify the board and the association's cyber-insurance carrier now: breach-notification and insurer-reporting clocks may already be running, and late notice can void coverage. Because CamhubfreeTG is an organized operation, consider a report to the FBI (IC3, ic3.gov). Do not publicize specifics beyond those who need to know.
P0Rotate every credential network-wide“Change the passwords” is not sufficient. Assume every credential stored anywhere on this network is leaked and rotate all of them: all cameras and recorders, the router/gateway, the IntuVision analytics PC, and every email / DDNS / P2P / cloud (Easy4ip) account tied to the system. Replace the guessable admin password and the exposed .2 camera password with strong, unique, centrally-managed per-device credentials. A credential left un-rotated is a way back in.
P0Inspect for persistence: Pi, IntuVision PC, router, audioResolve the unidentified key-only-SSH Raspberry Pi (10.1.8.196, F8), still unlocated; until its owner and outbound destination are confirmed (hosts/RaspberryPi-10.1.8.196.md) treat it as a possible standing third-party foothold. Also inspect the IntuVision PC and the router/gateway for attacker persistence: a rooted recorder can have been used to pivot to either. Note the audio/eavesdropping exposure: several of these cameras carry microphones, so compromise means live audio capture in common areas, not just video.
P0Eliminate internet exposure (permanent fix)Once contained, close the exposure for good so it cannot recur: disable UPnP and P2P/Easy4ip on every device; remove the router port-forwards and disable UPnP on the router; deny the camera/recorder segment outbound internet; provide remote access via Tailscale/WireGuard only. Put the cameras and their recorder on their own isolated segment (Section 6.3) so a future foothold on any one device cannot reach the internet or the rest of the building network. Re-scan 162.255.94.170 to confirm every port is closed. Patching is not a substitute for getting these devices off the public internet: a fully-patched recorder reachable from the internet is still one CVE away from the next compromise, and firmware currency needs an ongoing review cycle regardless.
P1Lock down and verify the camerasRotate every camera credential (after the recorders are off the network), replace the end-of-life units, and run the per-camera confirm-access check. Full method and the confirmation procedure in Section 6.2.
P1Replace EOL cameras.113, .117, .206, .224 (and evaluate .115); prefer a non-U.S.-restricted vendor. These are replace-not-clean (Section 6.2).
P2Harden devicesEnable Firewall allowlist, Anti-DoS, stream encryption, and RTSP-over-TLS; disable the vendor cloud.
P2Update firmwareNVR to the current firmware line; fisheyes .3/.208 to the 2025 build; remaining behind-current cameras (excluding the four end-of-life units already slated for replacement under P1). Confirm target versions against the vendor's current release at time of work.
P3Complete inventory; discard or re-firmware every smart deviceInventory every device on 10.1.8.0/24 (owner, purpose, firmware, support status); read the 29 unassessed cameras; obtain the router (TP-Link) login to confirm egress policy. Governing rule for anything network-connected: bring firmware current, or take it off the network. Full device-by-device inventory and disposition in Section 6.4.
P3Plan the rebuildConsider removing the compromised recorder cluster and its cameras as one unit and rebuilding on a new isolated subnet with a currently-supported product line. Framing in Section 6.5 (a concrete phased plan and bill of materials to follow on the Board's direction).

6.1  Cleaning versus replacing a compromised recorder: method and sources

The three compromised recorders (.31/.32/.33, Finding F10) cannot be treated as trustworthy again simply because their passwords are changed or a factory reset is run. This subsection sets out what a defensible remediation actually requires, why replacement is the recommended route for these three units, and the published sources behind that conclusion. It is written so the Board and whichever equipment vendor performs the work share one reference, rather than relying on a partial verbal summary of what is needed.

A factory reset is not a firmware reflash, and neither on its own evicts an established intruder. On Dahua equipment, “restore defaults” and “firmware update” are separate operations (ref. a). A reset clears the configuration partition (settings and the visible account list) but does not rewrite the firmware or operating-system image, so anything an attacker planted below that layer, a modified firmware binary, a re-enabled telnet or debug shell, a startup hook, survives the reset untouched. Dahua's own procedure is to factory-default after flashing firmware, not instead of it. Documented real-world cases bear this out: a rogue administrator account that survived both a reset and a firmware update, cleared only by attaching a serial console, performing a low-level configuration erase, and re-imaging the full firmware over TFTP (ref. b). Backdoor analyses show the same class of operating-system-level footholds, telnet services, static root credentials, and user-database dumps, that a configuration reset cannot reach (ref. e, ref. f).

The compromise also re-installs itself while the device stays online. For the CVE-2021-33044 botnet class, which matches the mass-hijack pattern seen on these recorders, a deleted rogue account reappears within roughly 30 to 60 minutes through the vendor peer-to-peer / cloud channel (P2P / Easy4ip) unless that channel is disabled and the device is isolated from the internet (ref. c, ref. d). A defensible clean, were a unit to be kept, is therefore an ordered procedure rather than a single button: isolate the device, preserve evidence, reflash verified firmware obtained only from Dahua's own portal (ref. a), factory-default again after the flash, disable P2P / UPnP / telnet and remove all port-forwards, rotate every credential, then confirm no rogue account returns after a period of monitored uptime. Any account or setting that returns escalates straight to serial-console re-imaging or replacement.

For these three units the correct answer collapses to replacement. All three are the oldest, end-of-life generation (2021 X72A3A build). For an end-of-life device there is no current, patched official firmware to reflash to, so even a perfect clean cannot close the vulnerability that let the intruders in: standard guidance is to retire network equipment that no longer receives firmware rather than nurse it (ref. g). Layered on top, the labor to forensically clean a low-cost recorder, serial-console work that ordinary integrators do not perform, routinely exceeds the cost of replacing the unit, and a new device carries provenance the Board can trust. A final caveat reinforces the point: even a correct reflash can miss a bootloader-level implant, which cannot be ruled out without serial-console verification. The accepted standard for a fully-compromised embedded appliance is reimage-from-known-good or replace, and for these three end-of-life recorders that means replace.

Choosing replacement is also a procurement decision, not only a security one. The three recorders sit on a shared camera fleet alongside a retained main NVR (Section 2), so any replacement units, and whichever integrator installs them, must be compatible with the existing cameras and recording architecture (ONVIF support and the retained NVR's channel capacity). Selecting that equipment and a qualified integrator who can work on the current system is part of the decision the Board should plan for. I have completed the preliminary research summarized here and am glad to investigate specific replacement options and integrators further to form a concrete recommendation; detailed execution is best carried out by the equipment vendor performing the work.

Sources: remediation of compromised Dahua recorders.
  • (a) DahuaWiki, Firmware Update, confirming that firmware update and “reset to defaults” are separate operations and that a factory-default is run after a flash: dahuawiki.com/Firmware_Update. Verified firmware source: DahuaWiki Firmware Search Tool, dahuawiki.com/Firmware_Search_Tool, and the Dahua download center, dahuasecurity.com/download-center/firmware.
  • (b) IPVM, “How I Handled A Hacked Dahua NVR”, a documented case in which a rogue admin account survived firmware updates and reboots and was cleared only via serial console, low-level erase, and full TFTP reflash: ipvm.com/discussions/how-i-handled-a-hacked-dahua-nvr.
  • (c) Mass compromise of Dahua / EZ-IP cameras, documenting that the CVE-2021-33044 botnet re-installs a deleted admin account via P2P within 30–60 minutes unless P2P is disabled and the device isolated: it-master.od.ua.
  • (d) SecurityCamCenter, “How to fix Dahua hacked recorders”, practitioner procedure: disconnect, factory default, firmware update (described as essential), re-default if needed, and change all passwords: securitycamcenter.com/fix-dahua-hacked-recorders.
  • (e) Bitdefender, backdoor packed in Dahua IP cameras and DVRs, showing a remote user-database dump and administrator add/change, for which the vendor issued emergency firmware: bitdefender.com.
  • (f) ExploitDB #44002, a Dahua Gen 2/3 backdoor illustrating the legacy telnet and static-root-password class of operating-system-level foothold a configuration reset cannot reach: exploit-db.com/exploits/44002.
  • (g) Teltonika Networks, on retiring rather than continuing to run end-of-life network firmware: teltonika-networks.com. Underlying vulnerability, CVE-2021-33044 and CISA KEV listing: see Section 8.

6.2  Locking down the cameras

What is confirmed and what is not. The compromise is confirmed on the three recorders (Finding F10): rogue administrator accounts are visible on the devices themselves. The cameras are a different status: reachable and at risk, but not yet individually confirmed. That distinction should be stated plainly to the Board so no one over- or under-reacts. A camera can be examined the same way the recorders were (see the confirmation procedure below), but until each is read it should be treated as potentially accessed rather than either proven clean or proven breached.

Why the cameras are exposed even though they are not port-forwarded. A common assumption is that because the cameras are not individually published to the internet, an attacker who took over a recorder cannot reach them. That is not correct. Two facts make the cameras reachable from an owned recorder: the recorder stores the cameras' credentials (it has to, in order to pull their streams), and the recorder sits inside the same flat LAN as the cameras (10.1.8.0/24). Not being port-forwarded only blocks a stranger from reaching a camera directly from the internet; it does nothing to stop an attacker who is already standing inside the network on a device that holds the keys. From a compromised recorder the cameras are reachable over their web interface, ONVIF, the Dahua service port (37777), RTSP, and in some builds telnet.

The cameras run the same class of software as the recorders. These are not passive sensors: Dahua IP cameras run an embedded Linux operating system of the same class as the recorders, and can hold the same kind of persistent foothold. The mass-hijack botnet documented in the remediation sources targets Dahua and EZ-IP cameras directly, not only recorders (ref. c, Section 6.1). Five cameras (.113, .117, .206, .224, and .115 pending evaluation) are the end-of-life generation carrying unauthenticated critical-severity takeover vulnerabilities with no fixed firmware available; like the three recorders, these are replace, not clean.

Lock-down sequence. Once the recorders are contained (Section 6, P0) the cameras follow in order:

Confirming whether a given camera was accessed. The same evidence that established the recorder compromise applies per camera, strongest first:

The honest limit, as with the recorders: a device carrying an operating-system-level implant cannot be proven clean from its own interface. Where certainty matters, replacement is the only guarantee.

6.3  Network segmentation

What is already in place. The camera network is already separated from the building's resident wifi: it was placed on its own segment (subnet 10.1.8.0/24) several years ago, after the internet provider flagged unusually heavy traffic on the line. The gateway is a TP-Link Omada ER7206, which is VLAN-capable, so the segmentation control this needs is already within the existing equipment; whether that separation is enforced with 802.1Q VLANs or simply a separate subnet has not been confirmed and is one item to settle on obtaining the router login. Two cautions come with that history. First, separating the cameras from resident devices is not the same control as denying them internet access, and it is internet access that this incident turned on. Second, the reported “heavy traffic” is consistent with peer-to-peer or botnet activity; it cannot be confirmed without reading the gateway's configuration and logs, but if it was botnet chatter it would mean this exposure predates the current assessment by years. Confirming or ruling that out is an open item, tied to obtaining the router login (Section 6.4 and the P3 remediation row).

Where the segment is still flat, and still exposed. Within the camera network the devices remain on one flat segment, 10.1.8.0/24: the cameras, all three compromised recorders, the clean NVR and .34 XVR, the IntuVision analytics PC, and, importantly, two devices that do not belong there, the unexplained Raspberry Pi at .196 (Finding F8) and a consumer Roku cabled into the camera switch (Finding F9). So the segment is walled off from residents but is neither internet-denied nor clean. On a flat segment any device that is taken over can attempt to reach every other device on it, which is why a single compromised recorder became a whole-segment problem rather than a one-device problem.

The two controls that actually close the exposure. Deny the camera segment both inbound and outbound internet, and remove the devices that do not belong on it. Picture the segment as a locked room: the cameras and their recorder stay inside and talk to each other exactly as they do now, but the door to the internet is shut and the door to the rest of the network is shut. Remote viewing is not a hole cut in the wall (a port-forward) but a key handed to trusted staff from outside (a VPN such as Tailscale or WireGuard, which admits an authorized viewer into the room without ever exposing the cameras to the open internet). This also answers the natural question of how the cameras still reach the recorder: they stay on the same dedicated segment as before; what they lose is the route to the internet and to the rest of the building, which is the exact path the attackers used.

Going further: segment by trust level, not just cameras versus residents. Because old, compromised equipment will co-exist with clean and replacement equipment during the transition, it is worth sub-dividing the camera network by how far each device can be trusted rather than treating it as a single pool. A practical three-tier layout:

Two points make this more than cosmetic. The control that matters is deny-internet plus no routing between tiers, so a compromised old unit cannot re-infect or pivot to a clean one. And there is a real reason to keep the future non-Dahua build on its own tier beyond age: the documented Dahua backdoor class is vendor-wide (Section 6.1, ref. e and ref. f), so a Dahua-level event would reach new and old Dahua alike, and a separate non-Dahua segment contains it. One caveat so the design is not over-built: three tiers is a migration architecture. Once the old gear is decommissioned it collapses to a single clean camera segment plus the VPN.

Equipment. The ER7206 already supports the VLANs and inter-segment access rules this needs. The remaining hardware question is whether the camera switch is a managed, VLAN-capable unit; the consumer Roku found cabled into it (Finding F9) is exactly the kind of stray device the segmentation removes. Confirming the switch is managed, or replacing it with one that is, is the one item to settle before the work.

6.4  Full device inventory and smart-device triage

A recurring lesson from this assessment is that the network contains devices nobody can currently account for (the Raspberry Pi at .196, the Roku at .137). Before the rebuild, every device on 10.1.8.0/24 should be inventoried: its owner, its purpose, its firmware version, and whether that firmware is still supported. The governing rule for anything that talks to the network (any “smart” device) is simple: bring its firmware current, or take it off the network. A device that cannot be updated, or that no one can explain, is a candidate foothold and does not belong on the same wire as the cameras.

Device (class)AddressDisposition
Main NVR (64-ch, clean).93 mgmtRetain. Keep firmware current; move onto the isolated camera segment (6.3) and re-credential.
XVR (DH-XVR5216A, clean).34Retain. Re-credential; move onto the isolated segment.
Three compromised recorders (EOL).31 / .32 / .33Discard / replace (Finding F10, Section 6.1). Do not attempt to clean.
IP cameras, five end-of-life units.113 / .117 / .206 / .224 (+.115)Discard / replace (Section 6.2). No patched firmware exists.
IP cameras, remainder of the 68variousRe-credential, firmware-current, or discard. Read the 29 not yet examined (Finding F7).
Raspberry Pi (unidentified, key-only SSH).196Identify owner and purpose (Finding F8). If unowned, remove. Until explained, treat as a possible foothold.
Roku (consumer streaming device).137Remove from the camera switch (Finding F9). It has no business on the surveillance segment.
IntuVision analytics PCLANInspect for persistence and patch the OS; a rooted recorder can have pivoted to it.
Gateway (Omada ER7206).1Retain. Obtain the admin login, remove port-forwards, disable UPnP, and configure the VLANs (6.3).
Camera switch(es)LANConfirm managed / VLAN-capable; replace if not, to enable segmentation.

This inventory also settles the open question of exactly how many cameras belong to each recorder, which the “suggested resolution” below depends on.

6.5  Suggested resolution

This subsection is deliberately high-level: it frames the decision for the Board rather than specifying a full bill of materials, which follows once the inventory (6.4) is complete and the Board sets direction. It reflects the option raised in discussion, treating the compromised half of the system as one unit to be rebuilt rather than nursed.

Rip-and-replace the compromised cluster as one unit. The three compromised recorders (.31 / .32 / .33) and the cameras they record, roughly fifteen channels across the parking decks, elevator lobbies, interior hallways, the lobby and front desk, the MDF room, and the Rumson lots (exact membership to be fixed by the 6.4 inventory), are the oldest, end-of-life generation and are being replaced anyway. Rather than clean each piece in place, the cleaner path is to remove that cluster wholesale and rebuild it on a new, isolated subnet from day one: internet-denied, remote access by VPN only (6.3). Building it isolated from the start avoids ever re-creating the exposure that caused this incident.

Standardize the replacements on a currently-supported, non-restricted product line. To be precise about the reasoning, so the Board is not misled: the brand did not cause this breach. Internet exposure and weak passwords did, and the same mistakes would compromise any brand. But since these units are being replaced regardless, are end-of-life, and, as noted in Section 5 and Finding F5, carry U.S. procurement constraints (NDAA Section 889, the FCC Covered List, and Entity List restrictions), the replacement is the natural moment to move to a vendor that is both currently supported and free of those constraints. That is a reliability and procurement decision, not a claim that the old brand was the vulnerability.

What can stay. The retained main NVR and the .34 XVR tested clean and do not need replacing; they can remain in service provided they are moved onto the isolated segment and fully re-credentialed (6.4). The goal is not to discard everything, only the compromised and end-of-life equipment, and to ensure whatever remains lives behind the same isolation.

Next step. This is the preliminary shape of the recommendation. Once the Board indicates it wants to proceed, I can develop a concrete phased plan, a specific replacement product line, candidate integrators qualified to work on the current system, and a bill of materials, for the Board's review before any purchase or work is authorized.

7Evidence index

Full evidence log and screenshots: evidence/EVIDENCE-LOG.md (E1 to E20). Key items: E1 NVR System Info (photo); E2 XVR P2P Online; E3 XVR UPnP port-mapping; E4 XVR TCP/IP config; E5 external port scan; E6 realm-fingerprint mapping; E7 XVR firmware; E11 internet egress test.

E1 - NVR system info
E1: main NVR, System Info (port 93)

Recorder .31 (port 88): E17 system info/firmware; E18 rogue-account list (CONFIRMED COMPROMISE); E19 live-view exposed channels (parking deck P1–P5, elevator hallway).

E17 - .31 system info
E17: .31 system info/firmware
E18 - .31 rogue accounts
E18: .31 rogue admin accounts (CONFIRMED COMPROMISE)
E19 - .31 live channels
E19: .31 exposed channels (parking P1–P5, elevator hallway)

Recorder .32 (port 89): E8 system info/firmware; E9 rogue-account list (CONFIRMED COMPROMISE, includes hackedBy/CamhubfreeTG); E20 live-view exposed channels (MDF room, interior hallways, P5/P6 parking).

E8 - .32 system info
E8: .32 system info/firmware
E9 - .32 rogue accounts
E9: .32 rogue admin accounts (CONFIRMED COMPROMISE)
E20 - .32 live channels
E20: .32 exposed channels (MDF room, hallways, P5/P6 parking)

Recorder .33 (port 90): E10 system info/firmware; E10-ACCT rogue-account list (CONFIRMED COMPROMISE); E12 live-view exposed channels (lobby, front desk, gallery, entries, Rumson lots, compactor room).

E10 - .33 system info
E10: .33 system info/firmware
E10-ACCT - .33 rogue accounts
E10-ACCT: .33 rogue admin accounts (CONFIRMED COMPROMISE)
E12 - .33 live channels
E12: .33 exposed channels (lobby, front desk, gallery, entries, Rumson lots, compactor room)

Recorder .34 (port 91): E13 account list (clean).

E13 - .34 accounts clean
E13: .34 account list (clean)

Port 93 / main NVR: E14 system info (identifies port 93 as the NVR, resolving the earlier "unlocated fifth device"); E15 account list (clean); E16 storage/RAID configuration.

E14 - NVR port93 system info
E14: NVR system info (identifies port 93)
E15 - NVR accounts clean
E15: NVR account list (clean)
E16 - NVR RAID storage
E16: NVR storage/RAID configuration

8Citations

9Confidence and limitations

10Open questions and next steps

Two items remain unresolved. Neither changes the Priority 0 actions above; both represent additional verification and coverage that would complete the picture. (The status of the three previously-unread exposed recorders and the identity of the fifth internet-exposed device have since been resolved, see Finding F10 and Section 2.)

  1. Camera internet egress is unconfirmed. A host on the camera subnet reached the public internet directly, and that subnet's gateway is the primary internet path, so the signs suggest the cameras are not blocked. Confirming whether the router applies a per-device block requires the router (TP-Link) administrator login to review its egress/ACL and port-forwarding configuration. Recorder egress and ingress are confirmed (E2, E11).
  2. Inventory of the remaining 29 cameras is incomplete. These use different per-device credentials and were not inventoried; they remain unassessed, not clear.
  3. Unidentified Raspberry Pi (F8) not physically located. Four networking closets and the AV room were searched (2026-07-24) without finding it; owner and function remain unconfirmed pending its outbound traffic (router login) or the switch MAC-address table.

Closing these requires the router login (item 1) and continued device access (item 2). Until then, the unassessed cameras should be treated as unknown rather than clear.