Real tests. Real doors.
Every story here is true. Only the names are missing.A selection of our tests across finance, insurance, government, online retail and apps, worldwide. Here is exactly how we got in, how long it took, and what it would have meant.A selection of our tests: how we got in, how fast, and what it would have cost.
Ten minutes. Then the whole company.
One typed line in a login box became control of the server, every app on it, and the money. These are the real steps, in order.
every system the company runsTIME-LAPSE
- 01We typed one line into the staff login box. No password.
- 02The system let us straight in, as the administrator.
- 03We uploaded a file through the payment receipt form.
- 04That one file gave us control of the server.
- 05The same server ran the company’s other apps, with their database passwords on it. Every system was open.
- 06Hundreds of staff and customer names, phone numbers and bank account numbers.
- 07We could change bank details, approve withdrawals to any account (fraud of ₦400m+), take over every system and shut the business down.
Based on a real Bluesage test · client name removed
- We found a settings file left open to the public.
- It held the database password, the mail login and secret keys.
- That password opened the company’s main database server.
- The same server held the databases of the company’s other systems too: one file, every system.
- We created our own administrator account.
- A booby-trapped link could change a customer’s account details when they simply moved their mouse.
- Their login email became ours: full account takeover.
- We could send fake “urgent security alert” emails from the company’s own system.
- Customer ticket attachments could be opened by anyone.
Read the full case, step by step
- We found a settings file left open to the public.
- It held the database password, the mail login and secret keys.
- That password opened the company’s main database server.
- The same server held the databases of the company’s other systems too: one file, every system.
- We created our own administrator account.
- A booby-trapped link could change a customer’s account details when they simply moved their mouse.
- Their login email became ours: full account takeover.
- We could send fake “urgent security alert” emails from the company’s own system.
- Customer ticket attachments could be opened by anyone.
WHAT IT COULD HAVE MEANT
- Your phone breaks. You sign in to your own policy.
- The insurer checks the phone is really yours, using its unique ID (IMEI).
- An agreed repair cost is paid. Once.
- The claims system never asked anyone to sign in.
- Type in any policy number and you could claim on someone else’s phone.
- The same claim could be sent again and again, with no limit.
- There was no cap on the repair amount.
- The phone ID check ran only inside the web page, so it could simply be skipped.
- Parts of customers’ identity details could be read along the way.
- Collect real policy numbers.
- File thousands of repair claims on other people’s policies, for any amount.
- Get paid before anyone notices, because every claim looks like normal business.
- The result: the claims budget drained and customers’ data exposed, hidden inside everyday claims.
Read the full case, step by step
- Your phone breaks. You sign in to your own policy.
- The insurer checks the phone is really yours, using its unique ID (IMEI).
- An agreed repair cost is paid. Once.
- The claims system never asked anyone to sign in.
- Type in any policy number and you could claim on someone else’s phone.
- The same claim could be sent again and again, with no limit.
- There was no cap on the repair amount.
- The phone ID check ran only inside the web page, so it could simply be skipped.
- Parts of customers’ identity details could be read along the way.
- Collect real policy numbers.
- File thousands of repair claims on other people’s policies, for any amount.
- Get paid before anyone notices, because every claim looks like normal business.
- The result: the claims budget drained and customers’ data exposed, hidden inside everyday claims.
WHAT IT COULD HAVE MEANT
- Anyone could look up taxpayers’ names, tax IDs and state ID numbers without logging in.
- Nothing slowed it down, so the whole tax base could be pulled.
- Land records and tax demand notices opened with just a reference number.
- Anyone could sign up and get bulk-email access on the government’s own system.
- It accepted senior officials’ addresses as the sender.
- A flaw handed us other users’ one-time login codes: account takeover with no victim click.
- Login codes could also be guessed forever, with no lockout.
Read the full case, step by step
- Anyone could look up taxpayers’ names, tax IDs and state ID numbers without logging in.
- Nothing slowed it down, so the whole tax base could be pulled.
- Land records and tax demand notices opened with just a reference number.
- Anyone could sign up and get bulk-email access on the government’s own system.
- It accepted senior officials’ addresses as the sender.
- A flaw handed us other users’ one-time login codes: account takeover with no victim click.
- Login codes could also be guessed forever, with no lockout.
WHAT IT COULD HAVE MEANT
- The store trusted logged-in requests from any website.
- Checkout didn’t enforce its security token, so purchases could be forged from another site.
- The cart accepted unsigned tokens, so its contents could be edited.
- Gift card and coupon codes could be guessed with no limit.
- Customer usernames were listed publicly.
Read the full case, step by step
- The store trusted logged-in requests from any website.
- Checkout didn’t enforce its security token, so purchases could be forged from another site.
- The cart accepted unsigned tokens, so its contents could be edited.
- Gift card and coupon codes could be guessed with no limit.
- Customer usernames were listed publicly.
WHAT IT COULD HAVE MEANT
WHAT HELD UP
- You sign in with a one-time code sent to your own phone.
- You only ever see your own orders and payments.
- Payment receipts were numbered in a predictable way. Change a few characters of one and you saw another customer’s payment, email and account ID, plus the server’s internal address.
- Login codes could be requested for any phone number, even ones never registered.
- Codes could then be guessed with no limit.
- The app’s full source code and a push-notification key were open to anyone.
- Walk through every customer’s payment history, one receipt at a time.
- Guess their way into customer accounts.
- Use the push key to send fake alerts that look like they came from the app.
- Use the source code as a map for the next attack.
Read the full case, step by step
- You sign in with a one-time code sent to your own phone.
- You only ever see your own orders and payments.
- Payment receipts were numbered in a predictable way. Change a few characters of one and you saw another customer’s payment, email and account ID, plus the server’s internal address.
- Login codes could be requested for any phone number, even ones never registered.
- Codes could then be guessed with no limit.
- The app’s full source code and a push-notification key were open to anyone.
- Walk through every customer’s payment history, one receipt at a time.
- Guess their way into customer accounts.
- Use the push key to send fake alerts that look like they came from the app.
- Use the source code as a map for the next attack.
WHAT IT COULD HAVE MEANT
- The sign-in system accepted a built-in default one-time code.
- That meant getting into accounts without the owner’s phone.
- Change one customer number in a request, and the system handed over someone else’s data.
- That included full identity (KYC) records: ID documents and personal details.
- The same broken checks let us carry out actions on other people’s accounts.
- Some parts of the system answered with data without any sign-in at all.
- A file upload accepted dangerous files.
Read the full case, step by step
- The sign-in system accepted a built-in default one-time code.
- That meant getting into accounts without the owner’s phone.
- Change one customer number in a request, and the system handed over someone else’s data.
- That included full identity (KYC) records: ID documents and personal details.
- The same broken checks let us carry out actions on other people’s accounts.
- Some parts of the system answered with data without any sign-in at all.
- A file upload accepted dangerous files.
WHAT IT COULD HAVE MEANT
One small mistake. Then the next. Then the money.
Attackers rarely need one big hole. They chain small ones. These are chains we see again and again, step by step.
The same six doors, left open again and again.
Across finance, insurance, government and online businesses, the same mistakes keep coming back. If you recognise one, tell us.
Secrets left on public servers
Config files and code folders with database passwords and keys, readable by anyone who knows where to look.
THE FIXBlock dotfiles at the web server and keep secrets in a vault.
Login codes that never lock
One-time codes limited when they’re sent, but not when they’re checked, so they can be guessed.
THE FIXLock the account after a few wrong tries.
APIs that trust any website
Servers that let any website make logged-in requests on a customer’s behalf.
THE FIXAllow only your own websites, by name.
Test systems left online
Development and staging servers on the internet, often with real data and weaker protection.
THE FIXKeep them private and use fake data.
Admin tools with no login
Internal tools and APIs that answer anyone who asks, with no sign-in at all.
THE FIXRequire a login everywhere, by default.
One number away from someone else’s data
Change an ID or a reference number and you see another customer’s records.
THE FIXCheck who owns every record, every time.
What the report says. What it means for you.
Every finding comes in two languages: the technical one your developers need, and the plain one you need to make a decision.
Anyone could log in as the boss. No password needed.
A fake receipt handed over the entire server.
Hundreds of staff bank details, one request away.
The master keys were left on the doorstep.
Move your mouse over a link, and your account becomes theirs.
Your login code, handed to a stranger. No victim click needed.
Any website you visit could act as you on your account.
Strangers could file insurance claims on your policy.
Find out what an attacker would find. Before they do.
Tell us what you run, or what you need built. Rapid response, guaranteed.
