diff options
| author | Adam Soltys <[email protected]> | 2026-05-17 23:21:39 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2026-05-17 23:21:39 -0700 |
| commit | 3c4d0b6914bbc7ecf49312a264d55af3c2e2d7a6 (patch) | |
| tree | 6da1730f02c8acb919841b62cff82cfb7d8c5bea | |
| parent | 206aacd410dbafc4c7313bdd4ea234180373ddc2 (diff) | |
| download | coinos-server-3c4d0b6914bbc7ecf49312a264d55af3c2e2d7a6.tar.gz coinos-server-3c4d0b6914bbc7ecf49312a264d55af3c2e2d7a6.zip | |
remove /gateway endpoint
Unauthenticated arbitrary db.set abuse vector. Exploited to inflate user
balances and override safety controls (bitcoin:limit, limit, hardfreeze,
freeze) in real time, leading to a hot-wallet drain. Route and handler
both fully removed.
Co-Authored-By: Claude Opus 4.7 (1M context) <[email protected]>
| -rw-r--r-- | index.ts | 1 | ||||
| -rw-r--r-- | routes/payments.ts | 9 |
2 files changed, 0 insertions, 10 deletions
@@ -84,7 +84,6 @@ app.post("/take", auth, payments.take); app.post("/print", auth, payments.print); app.post("/send/:lnaddress/:amount", auth, payments.lnaddress); app.post("/send", auth, payments.internal); -app.post("/gateway", payments.gateway); app.post("/replace", auth, payments.replace); app.get("/decode/:bolt11", payments.decode); app.post("/fetchinvoice", payments.fetchinvoice); diff --git a/routes/payments.ts b/routes/payments.ts index 1845512c..43c098b6 100644 --- a/routes/payments.ts +++ b/routes/payments.ts @@ -626,15 +626,6 @@ export default { } }, - async gateway(req, res) { - const { - body: { short_channel_id, webhook }, - } = req; - - await s(short_channel_id, webhook); - res.send({ ok: true }); - }, - async replace(req, res) { const { body: { id }, |
