Skip to content
LunoVPN
Responsible disclosure

Break it, and we’ll pay you

Short answer

LunoVPN runs a paid bug bounty for security issues in our client applications, VPN infrastructure and backend. Rewards run from $25 for low-impact client issues to $300 for anything that decrypts traffic or de-anonymises users. Eleven reports were fixed under the programme in August 2026. No report is marked closed until the researcher who found it has been invited to retest the fix, and every closed report is published on this page 90 days later. Researchers who follow the rules here have safe harbour, can publish their own findings, and can be paid in Monero without telling us who they are.

Community impact

Eleven fewer ways to break LunoVPN

In August 2026, eleven reports were triaged, fixed and closed under this programme. Every one of them came from someone outside the company who had no obligation to tell us anything.

11Reports fixed
August 2026
2 daysMedian time to
first response
$300Maximum reward
per report
90 daysThen every report
is published here
1Retest before
anything is closed

Thank you to the people
who broke it first

We are trying to build the best and safest VPN there is — for everyone, not only for the people who already know what a DNS leak is. We cannot do that from the inside alone.

A VPN is a promise that something is safe. The only honest way to keep a promise like that is to invite people who are good at breaking things, let them try properly, and then fix what they find — quickly, and in public. Eleven researchers did exactly that last month.

None of them had to. They could have sold what they found, published it without warning, or simply moved on. Instead they wrote it up, waited for a patch, and made the product safer for people they will never meet — people who will never know their names and never thank them. Every LunoVPN user is running a better VPN because of it.

That is also why the researcher retest stage below exists, and why every closed report ends up on this page. A fix nobody checked is a hope. A problem nobody published is a problem the next provider gets to repeat.

If that is you: thank you. If it could be, the scope and the rules are below — and the safe harbour is real.

Best, not best-marketedWe would rather lose a comparison honestly than win one by leaving something out. Our own comparison page puts a competitor first.
Safe by defaultProtection that only works once you have found the right setting is not protection. Every default ships as the safest option we can make it.
For everyoneNo email address, no name, unlimited devices, and the same protection on the cheapest plan as the most expensive one.
Provable, not promisedAn independent audit, open source clients, a warrant canary — and this programme.
Rewards

What we pay

Bands rather than fixed prices, because impact varies. We would rather err upward on a report that genuinely protects users.

SeverityRewardExamples
Critical$200 – $300Remote code execution on a VPN node, key compromise, traffic decryption, or anything that de-anonymises users at scale.
High$100 – $200Authentication bypass, cross-account access, leaking one user's traffic metadata to another, kill-switch bypass.
Medium$50 – $100DNS or WebRTC leaks in a shipped client, privilege escalation on the local device, stored data that should not persist.
Low$25 – $50Client-side issues with limited impact, verbose error output, weak defaults that reduce protection.
Safe harbour.

Follow the rules below and we will not pursue legal action, will not ask you to stay silent, and will not require you to sign anything to receive a bounty. If you need that in writing before you start, email us and we will send it.

Remediation process

A patch is not a fix until someone tries to get past it

A fix can close the exact path you reported and leave a neighbouring one wide open. The proof of concept stops working, the ticket gets closed, and the underlying weakness is still there. So we added a stage: nothing is marked closed until the person who found it has had the chance to attack the fix.

ReportedTriagedRemediatedResearcher retestClosedPublished after 90 days

Reported

You email [email protected]. We acknowledge within two business days and tell you who is handling it.

Triaged

We reproduce it, assign a severity band and confirm the reward — within seven days. The band is fixed at triage, not at close, so a slow fix never costs you money.

Remediated

We build and ship the fix, then tell you what changed and where. Not “resolved” — what we actually altered, so you have something concrete to test against.

Researcher retest New

Before anything is closed, you are invited to retest. Specifically: check whether the original attack path is gone, and whether the remediation can be bypassed — alternative paths, edge cases, a variant of the same class. The same safe harbour and the same scope rules apply to the retest.

It is voluntary and there is no penalty for declining. If you are unavailable or would rather not, we route the retest to another researcher who works in that vulnerability class. If the retest turns up a bypass, that is a new report and it pays like one — at its own severity band, not as a footnote to the old one.

The retest window is 14 days from the moment we tell you the fix is live. If we hear nothing, the report moves on without it; we do not hold a fix hostage to a reply that may never come.

Closed

The retest passed, or the window elapsed. The bounty is paid at this point if it has not been already, and the 90-day publication clock starts.

Published

Ninety days after close, the report appears in the ledger below with what it was, what it affected and what we changed. You can publish your own account whenever you like, as soon as the fix ships.

This stage exists because a researcher asked for it.

The retest step was proposed in September 2026 by someone taking part in the programme, who pointed out that we were treating “the proof of concept no longer works” as if it meant “the vulnerability is gone”. They were right, and they offered to retest their own findings for free. We would rather adopt the idea for everyone than accept the favour once. If you have a suggestion about how this programme runs, the same address works for that.

Public disclosure

Every report, published 90 days later

Ninety days after a report is closed it is published here, whether it makes us look careful or careless. No editorial discretion, no quiet exceptions for the embarrassing ones. Two tables: what is in the pipeline right now, and what has come out the other side.

In the pipeline

updated 12 September 2026

Open reports appear here as soon as they are triaged, but without technical detail — a reference, when it arrived, roughly what it touches, its severity band and the stage it has reached. That is deliberate: a live list of unpatched issues with reproduction steps would be a map for whoever reads it fastest.

RefReceivedAreaSeverityStage
Nothing open at the moment.No reports are currently awaiting triage, remediation or retest. When one arrives it will be listed here within two business days of being triaged.

Published

90 days after close

Once the clock runs out, the full entry goes up: what the issue was, which component it affected, the dates at each stage, whether a retest was carried out, and what we changed. Credit to the reporter if they want it, and nothing about them if they do not.

RefAreaSeverityReportedFixedRetestedPublished
Empty, and that is the honest state of it.Nothing has passed its 90 days yet. The eleven reports fixed in August 2026 predate both this ledger and the retest stage — they were triaged, patched and closed before either existed — so we are writing them up retrospectively, and each appears above as it reaches its own 90-day mark. The first of them is due on 30 October 2026. Reports arriving from now on go through the full pipeline, retest included; the earliest of those becomes publishable in December.

What a published entry will look like

simulation

The tables above are empty, so here is the format instead. Step through a report and watch what the public can see at each stage — and what stays back until the 90 days are up.

SimulationInvented example. LVB-2026-0000 is not a real report — the dates, the bug and the fix are all fabricated to show the format.

What the public sees

Nothing. The report is not listed anywhere yet.

A report sits unlisted until it has been triaged. We will not publish a severity band we have not verified, and a row that says “something, somewhere, unknown” helps nobody.

Held back

  • That a report exists at all
  • Component, severity, everything
day 0 of 108reported 14 Sep 2026

What the public sees

ref LVB-2026-0000 received 2026-09-14 area Android client severity High stage Triaged

The row appears within two business days of triage. “Android client” is as specific as it gets while the issue is live — enough for you to see we are working, not enough to go looking.

Held back

  • What the vulnerability actually is
  • Reproduction steps and proof of concept
  • Which code path or component
  • Who reported it
  • Reference, date, area, severity, stage
day 2 of 108triaged 16 Sep 2026

What the public sees

ref LVB-2026-0000 received 2026-09-14 area Android client severity High stage Remediated — awaiting retest

The fix is live, so the stage moves — but the detail stays back. Users on old app versions are still exposed until they update, and a description now would tell an attacker exactly who to look for.

Held back

  • What the vulnerability was
  • What the fix changed
  • Reproduction steps
  • Who reported it
  • That a fix has shipped
day 9 of 108fix shipped 23 Sep 2026

What the public sees

ref LVB-2026-0000 area Android client severity High stage Researcher retest retest_due 2026-10-09

In this simulated case the retest found a bypass: the same leak returned when the device was toggled through airplane mode. It was logged as a separate report, paid at its own band, and fixed in four days. Without this stage the original would have been closed on day 11 with the bug still reachable.

Held back

  • Technical detail, still
  • The bypass found during retest
  • That a retest is under way, and its deadline
day 11 of 108retest window opens 25 Sep 2026

What the public sees

ref LVB-2026-0000 area Android client severity High stage Closed retest Passed — 1 bypass found and fixed publishes 2026-12-31

The publication date becomes public the moment the report closes. It is a commitment with a date on it, which is the only kind that means anything.

Held back

  • Full write-up — for 90 more days
  • That it is closed, and that a retest happened
  • The exact date the full entry goes public
day 18 of 108closed 2 Oct 2026

What the public sees

ref LVB-2026-0000 area Android client — DNS handling severity High issue DNS queries left the tunnel for ~400 ms when the device switched from Wi-Fi to mobile data, because the tunnel’s DNS rules were rebuilt after the new interface came up rather than before. impact An observer on the mobile network could see which domains were requested during the handover. Traffic contents stayed encrypted. fix DNS rules are now held across an interface change instead of torn down and rebuilt. Shipped in Android 1.0.7. retest Yes — bypass found via airplane-mode toggle (LVB-2026-0000-b), fixed before close reported 2026-09-14 fixed 2026-09-23 closed 2026-10-02 credit Reporter chose to stay anonymous

This is the shape of every published entry: what it was, what it cost users, what we changed, and whether a retest caught anything the first fix missed. Including when the answer is embarrassing.

Held back

  • Everything above
  • The reporter’s identity — their choice, permanently
day 108 of 108published 31 Dec 2026
30 Oct 2026Earliest of the August 2026 batch reaches 90 days. First entries appear.
29 Nov 2026Last of the August 2026 batch published. All eleven visible above.
Dec 2026First report to go through the full pipeline, retest included, becomes publishable.
Then monthlyNew entries added as reports pass their 90 days. No batching, no delay.

Why publish at all, and why wait: a fixed vulnerability that nobody hears about teaches nobody anything, and a provider with no public list of past problems has either been extraordinarily lucky or is not telling you. Ninety days is long enough for users to update and for fleet-wide changes to land everywhere, and short enough that the disclosure still matters. If a fix cannot be deployed everywhere within 90 days we will say so here and give the new date, rather than letting the entry disappear.

Scope

What counts, and what doesn’t

In scope

Client applications on every platform, VPN node software and configuration, the account and billing backend, and the API used by the apps. Anything that could expose user traffic, identity or account access.

Out of scope

Scanner output with no demonstrated impact, missing headers on static marketing pages, denial of service, social engineering, physical attacks, and third-party services we do not operate.

Rules of engagement

  • Test against your own account only. Never access, modify or retain another user’s data.
  • Stop as soon as you have proof. Do not exfiltrate more than the minimum needed to demonstrate the issue.
  • Do not degrade the service for other people. No load testing, no automated scanning of the node fleet.
  • Give us 90 days, or until a fix ships, before publishing.
  • Report through the address below rather than social media, so we can start fixing rather than firefighting.
  • If you retest a fix, stay inside the same scope and rules. A retest is not a wider licence — it is the same engagement, aimed at the patch.
Reporting

How to send it

Where

[email protected]. Include the affected component, reproduction steps, and what an attacker gains. A short video helps more than a long document.

When you’ll hear back

Acknowledgement within two business days, initial assessment within seven. If a fix will take longer we tell you why instead of going quiet.

How you get paid

Monero if you want to stay anonymous, bank transfer if you prefer. Public credit is optional and entirely your call.

What we publish

Every closed report goes into the public ledger 90 days later — flattering or not. Open reports are listed without technical detail until the fix is out.

Before we close it

You get 14 days to attack the fix. Find a bypass and it counts as a new report at its own severity band. Details in the remediation process.

FAQ

Bug bounty questions

Is there a safe harbour for security researchers?
Yes. If you follow the rules on this page — test only your own account, avoid harming other users, do not exfiltrate data beyond what proves the issue, and give us a reasonable window before publishing — we will not pursue legal action against you, and we will say so in writing if you need it.
How quickly will I hear back?
We acknowledge reports within two business days and give an initial assessment within seven. If a fix is going to take longer than that, we will tell you why rather than going quiet.
What happens after you fix my report?
We tell you what changed and where, then invite you to retest it. The point of the retest is not to confirm your proof of concept stopped working — it is to find out whether the fix can be bypassed: an alternative path to the same place, an edge case we missed, another variant of the same class. Nothing is marked closed until that retest has happened or the 14-day window has passed.
Do I have to retest, and do I get paid for it?
No and no — it is voluntary, there is no penalty for declining, and there is no separate retest fee. If you would rather not, or we cannot reach you, we route the retest to another researcher who works in that vulnerability class. What you do get: if the retest finds a bypass, that is a new report and it is paid at its own severity band, not treated as a continuation of the old one. The same safe harbour and the same scope rules cover the retest.
Can I publish my findings?
Yes, and we encourage it once a fix has shipped. We ask for 90 days or until the patch is released, whichever comes first. We will not ask you to sign anything that stops you publishing, and we do not offer a bounty in exchange for silence. We publish too: every closed report appears in the ledger on this page 90 days after it is closed.
When will my report appear on the public list?
Ninety days after it is closed. Before that it is listed while still open, but only as a reference number, the date it arrived, the rough area it affects, its severity band and the stage it has reached — no technical detail, because a public list of unpatched issues with reproduction steps would help the wrong people first. After 90 days the full entry goes up, with credit to you if you want it and nothing about you if you do not.
What is out of scope?
Reports from automated scanners with no demonstrated impact, missing security headers on marketing pages, social engineering of our staff or users, physical attacks, denial of service, and issues in third-party services we do not control. Rate-limiting complaints on public marketing pages are also out of scope.
Do you pay for issues in the marketing site?
Rarely, and only if there is real user impact — a stored XSS on a page users log into, for example. Our marketing pages are static files with no user data on them, which limits how much damage is possible.
Can I be paid anonymously?
Yes. We can pay bounties in Monero, which means you never have to tell us who you are. If you prefer a bank transfer or want public credit instead, that is your choice.