pppoe-vlan-gpon-diagnostics is a read-only diagnostic toolkit for PPPoE / GPON fiber
troubleshooting. It sends PPPoE Discovery frames (PADI) and reads device
state over HTTP and telnet. It does not reconfigure an OLT, and it does
not attempt authentication bypass against any operator equipment.
| Version | Supported |
|---|---|
main (latest) |
✅ |
| older commits | ❌ |
Please do not open a public issue for a security problem.
- Open a private security advisory.
- Include: affected script, reproduction steps, and observed impact.
- You will get an acknowledgement within 7 days.
This toolkit touches real credentials (modem web-UI password, PPPoE username/password, ONU serial numbers, MAC addresses). The repository is built so that none of them can be committed:
| Control | Where | What it does |
|---|---|---|
| Environment-variable indirection | tools/fvconfig.ps1 |
Every sensitive value is read from FV_* environment variables. There is no hard-coded password anywhere. |
| Fail-closed password lookup | Get-FvModemPassword |
Throws instead of falling back to a default, so a missing password can never silently become a real one. |
| Commit-time leak guard | .githooks/pre-commit |
Blocks a commit containing a modem IP, an Npcap adapter GUID, a real MAC address, a literal account name, an inline PPPoE credential, or any *.env file. |
| Ignore rules | .gitignore |
*.env, New_Req.env, ssh_creds.env, pppoe_creds.env are never tracked. |
| Masking in documentation | README.md, docs/ |
Every credential, serial, MAC, public IP and hostname is replaced with <REDACTED_*>. |
git config core.hooksPath .githooksVerify it is active:
git config --get core.hooksPath # -> .githooksThe guard is deliberately fail-closed: if it matches, the commit aborts. To override it for a single, reviewed commit:
git commit --no-verifyRunning a VLAN sweep or telnet engineering CLI against equipment you do not own or administer may violate your contract or local law. Use this toolkit only on your own line, or with the written permission of the operator.