ubb / Unique Business Basic Free report

Trust

Security

To run your ERP we hold your source programs and your production data files. That is the most sensitive thing a distributor owns. This page is what we actually do about it — including the parts we have not earned yet.

Last reviewed 15 August 2026Version 1.0Report a vulnerability security@uniquebb.com

Contents
  1. 1How to read this page
  2. 2What we do not claim
  3. 3Encryption
  4. 4Tenant isolation
  5. 5Access control
  6. 6Who can see your data, and when
  7. 7Backups
  8. 8Disaster recovery
  9. 9Compatibility report uploads
  10. 10Vulnerability management
  11. 11Incident response
  12. 12Secure development
  13. 13Physical security
  14. 14People
  15. 15Reporting a vulnerability
  16. 16Security review and questionnaires

1How to read this page

You are the person who has to sign off on shipping thirty years of proprietary business logic and a live customer master to an outside company. You have read a hundred security pages that were a wall of certification logos and the word "enterprise-grade". You know those pages tell you nothing.

So this one is written differently. Every control below is stated as what we do, not what we aspire to. Where a control is weaker than you would like, it says so. Where we have no certification, we say we have no certification and describe what we do instead.

Why the honesty is the point

We are pre-GA. A pre-GA company claiming a full compliance shelf is either lying or has spent its money in the wrong place. An audit badge tells you a firm reviewed a described control set on a date in the past; it does not tell you who can read your files on a Tuesday.

Section 6 tells you who can read your files on a Tuesday. That is the section to read first if you only read one.

If something here is not enough for your risk appetite, tell us before you buy, not after. We would rather lose the deal than be the vendor you regret.

2What we do not claim

Stated up front, where a vendor normally puts its badges.

×We do not hold a SOC 2 Type I or Type II report. We have not started an audit. When we do, the report will be available under NDA and this line will change.
×We are not ISO/IEC 27001 certified.
×We are not HIPAA-eligible and we will not sign a business associate agreement. Do not put protected health information in an environment we host.
×We are not a PCI cardholder data environment. We never receive full card numbers — the payment processor does. Do not store unencrypted card numbers in files we host; if your existing system does, tell us during the audit phase and we will help you get them out.
×We are not FedRAMP authorized and we are not suitable for classified or controlled-unclassified federal workloads.
×We have not yet had a third-party penetration test. One is scheduled before general availability, and we will share the summary and the remediation status with design partners under NDA.
What we do instead: a small named team, an environment per customer, encryption everywhere, logged access, tested restores, a 72-hour notification commitment, and a willingness to answer any question in writing and be held to the answer.

If a certification is a hard purchasing requirement for you, we are not there yet, and we would rather you knew that on this page than in month four of an evaluation.

3Encryption

3.1

In transit. All connections to our websites, the account portal, the terminal session layer and the file transfer endpoints require TLS 1.2 or higher, with TLS 1.3 preferred and modern cipher suites only. Plaintext HTTP redirects to HTTPS, and HTTP Strict Transport Security is enabled.

3.2

Administrative access to hosts is over SSH with key-based authentication. Password authentication for shell access is disabled. We do not expose unencrypted terminal protocols to the internet — if your users reach the system over a terminal today, that session is tunnelled inside TLS or SSH by the time it leaves your network.

3.3

At rest. Every volume holding customer programs, data files, backups or logs is encrypted with AES-256 using our infrastructure provider's managed key service. Keys are held in the provider's key management service, rotated on the provider's schedule, and never checked into source control or stored on a workstation.

3.4

Backups are encrypted with their own keys, separate from the live volumes, and stored in a separate account boundary.

3.5

Honest limit. The Runtime must read your data files in cleartext to execute your programs against them — that is what an interpreter does. Encryption at rest protects the storage layer; it cannot protect against someone with legitimate execution access inside your environment. That is why sections 4, 5 and 6 matter more than this one. Any vendor telling you that at-rest encryption solves this problem has not thought about it.

4Tenant isolation

4.1

One environment per customer. Each customer gets their own compute instance or instances, their own storage volumes and their own network segment. We do not run multiple customers' programs inside one shared application process, and we do not put multiple customers' files on one shared filesystem.

The Service is cloud-only — every environment runs on our infrastructure, operated by us. There is no self-hosted edition, which means there is no version of this page where a control is somebody else's job. Isolation, access control, backups and recovery are ours to get right, and ours to answer for.

4.2

There is no shared database that contains more than one customer's business data. There is no multi-tenant table with a customer identifier column that a missing WHERE clause could leak across. The isolation is at the infrastructure boundary, not in application logic — which means a bug in our code cannot hand your customer master to somebody else.

4.3

Network. Environments have no route to each other. Security groups deny by default, and only the ports required for your sessions and our administrative access are open. Nothing in your environment can initiate a connection to another tenant's environment because no path exists.

4.4

Operating system. Your Runtime processes run under a dedicated, non-privileged OS account scoped to your data directories. The Runtime executes Business Basic programs; it is not a shell. Its file and process operations are confined to the paths your environment owns.

4.5

Honest note on architecture. Today each user session is a separate process, which is heavier than it needs to be but has a security property we like: sessions do not share address space. The multi-user daemon that replaces this is landing now, and it keeps per-session privilege separation. When it ships, this section will be updated to describe what actually runs, not what we planned.

4.6

Non-production environments never contain live customer data unless you explicitly ask us to mirror your production files for a parallel run — and where we do that, the mirror is provisioned inside your environment boundary, under the same isolation and the same encryption as production. It is never staged in a shared or internal workspace of ours.

5Access control

5.1

Named accounts only. Every member of our team has an individual identity. There are no shared administrative logins and no shared SSH keys. Multi-factor authentication is mandatory on every account that can reach production, on our identity provider, our source control and our cloud console.

5.2

Least privilege. Production access is granted by role, limited to the people whose job requires it, and reviewed quarterly. Engineers who do not operate the hosted service do not have production credentials. Sales and finance never do.

5.3

Path. Administrative access to customer environments goes through an authenticated bastion. Sessions are logged with the identity, the environment, the time and the commands run. Direct access from personal devices or from outside that path is not permitted.

5.4

Break-glass. There is one emergency credential per environment, held in a managed secret store, retrievable only with a second person's approval. Its use raises an alert to the whole team and requires a written explanation within 24 hours. It has never been used silently and it cannot be.

5.5

Offboarding. Access is revoked on the last working day, as a checklist item that is signed off, not as an intention. Keys and tokens that person held are rotated.

5.6

Customer-side access. You control your own users. We support individual accounts, and we will help you turn off the shared logins your current system has probably accumulated. We will not create an account in your environment for a person you have not authorized, no matter who asks or how urgent they say it is.

6Who can see your data, and when

The question every other section is really about. Here is the direct answer.

6.1

Who. A named group of engineers on the hosted-service team. It is a small group and we will tell you its size and its names under NDA if you ask during evaluation. Nobody outside it can reach a customer environment.

6.2

When. Only for one of these four reasons:

  • Provisioning and migration you asked for — moving your programs and files, running the parallel-run comparison, cutting you over.
  • A support request you opened — and only into the area of the system your request concerns.
  • An incident affecting the availability or integrity of your environment, where we have to act to keep you running.
  • Legal compulsion — a valid subpoena or court order, where we will notify you first and give you the chance to challenge it, unless we are legally prohibited from telling you.
6.3

Never for. Product development, market research, competitive analysis, model training, marketing, curiosity, or a demo. Those are contractual prohibitions in Terms section 9.3, not just policy on a page.

6.4

Logged. Every administrative session against your environment is logged with who, when, and what. We will provide you with that access log on request, for any period in the last 13 months. Most vendors will not do this. Ask us for it during your evaluation and see whether we deliver.

6.5

Where we can, we look at less. When we debug, we work from error output, program source and record structure before we look at record contents. We do not copy production data to a workstation, and we do not paste it into third-party tools.

6.6

Honest limit. An engineer with root on the host running your environment can, in principle, read anything on it. That is true of every hosting arrangement that has ever existed, including your closet. What differs is how few people that is, whether it is logged, whether they are contractually bound, and whether the vendor will tell you the truth about it. Our answers: a handful, yes, yes, and this page.

7Backups

7.1

Schedule. A full encrypted snapshot of each customer environment nightly, plus a snapshot immediately before any change we make to your environment — a Runtime upgrade, an OS patch, a migration step.

7.2

Retention. Nightly snapshots are kept for 30 days. One snapshot per week is promoted and kept for 90 days. Backups taken before a change are kept for 30 days after that change.

7.3

Separation. Backups live in a separate storage account with separate credentials and their own encryption keys, so that compromise of a production host does not by itself give an attacker the ability to destroy your history.

7.4

Restore testing. We perform a full restore of a representative environment at least quarterly and verify that the restored system starts, signs on, and reads its files. An untested backup is a rumour; we treat it as one.

7.5

Your copy. Under Terms section 16.4 you can ask for a complete copy of your programs and data files at any time, up to four times a year, at no charge, delivered within 10 business days — in their native on-disk format, never converted or re-encoded into something only we can read. Keep your own copy. We would rather you had one than trusted ours.

7.6

Deletion of customer content follows the schedule in Terms section 15: gone from live systems within 30 days of the export window closing, and aged out of backups within 90 days of that.

8Disaster recovery

8.1

Objectives. For a total loss of an environment, our current targets are a recovery point of 24 hours (the last nightly snapshot) and a recovery time of 8 hours to a working, signed-on system in another availability zone.

8.2

How. Environments are defined in infrastructure-as-code and rebuilt from that definition plus the latest snapshot. We do not rebuild from anyone's memory or from a runbook that was accurate last year.

8.3

Honest note. Those are targets we have measured in exercise, not a contractual SLA. During pre-GA we do not run hot standbys, so a zone failure means a restore, not a failover. If your business needs a tighter recovery point or a warm standby, we can build it — it is a paid option, it goes in your Order with numbers attached, and we will not pretend it is included when it is not.

8.4

Company continuity. The Runtime also runs Unique Photo's own operations. Our incentive to keep it recoverable is not contractual, it is that our warehouse stops shipping too.

8.5

If we ever wind down the Service, Terms section 16.5 commits us to 180 days' notice, continued operation through that period, and free transition assistance.

9Compatibility report uploads

9.1

The free report asks for an archive of your programs only. Do not include data files. If we find data files in an upload, we delete them and tell you.

9.2

Transport and storage. Uploaded over TLS, written straight to an encrypted object store in a dedicated bucket with no public access, keyed to your request. Never to a laptop, never to a shared drive, never to email.

9.3

Processing. The archive is parsed by an isolated worker that performs static analysis only — we do not execute your programs. The worker has no outbound network access, so your source cannot leave it, deliberately or otherwise.

9.4

Access. Limited to the engineers producing your report and answering your questions about it. Not to sales. Not to anyone else, ever.

9.5

Deletion. The archive, the extracted source and every derivative are deleted within 90 days of upload — or immediately, on request to hello@uniquebb.com, and we will confirm in writing.

9.6

What survives. Only anonymous aggregate counts of language features — how often a verb or a file type appears across all reports — with no code, no identifiers and no company name. It is how we decide what to build next.

9.7

If you would rather not upload anything until there is paper in place, say so — we will sign a mutual NDA before you send a single file, and we will delete the archive the moment the report is delivered rather than waiting out the 90 days. Ask.

10Vulnerability management

10.1

Patching cadence. Operating system and package updates are applied monthly to every host. Vulnerabilities that are rated critical, or that are known to be actively exploited, are patched within 72 hours of a fix being available — sooner if the exposure warrants it.

10.2

Dependencies. Automated dependency and container scanning runs on every build. A build with a known critical vulnerability in a runtime dependency does not ship. Base images are rebuilt at least weekly so that patched packages actually reach production.

10.3

Surface. Environments expose only the ports required to serve your sessions. Management interfaces are not internet-facing. Unused services are removed from the image rather than firewalled off.

10.4

Change windows. Patches that require a restart of your environment are scheduled with you. We do not bounce a distributor's ERP at 2pm on a Tuesday because a scanner turned amber.

10.5

Honest note. We do not currently run a paid bug bounty. We do read and act on every report sent to security@uniquebb.com — see section 15.

11Incident response

11.1

We maintain a written incident response plan with defined roles: an incident lead who runs the response, a communications owner who talks to affected customers, and a scribe who keeps the timeline. The plan is exercised, not filed.

11.2

Sequence. Detect, contain, preserve evidence, eradicate, recover, notify, review. Containment does not wait for a full diagnosis.

11.3

Notification — the commitment. If we confirm a security incident that affects your customer content or your personal data, we will notify you within 72 hours of confirming it. Not 72 hours after we finish investigating; 72 hours after we know you are affected.

11.4

That first notification will tell you what happened as far as we understand it, what data and which systems are involved, what we have done to contain it, what we are doing next, and what we recommend you do. If a detail is still unknown, we will say it is unknown rather than leave it out.

11.5

Post-incident report in writing within 10 business days of resolution: root cause, full timeline, impact, and the specific changes we are making so it does not recur. You may share it with your auditors and your insurer.

11.6

Where the law requires notification to a regulator or to individuals, we support you in meeting your obligations as controller, and we meet ours. See Privacy, section 12.

12Secure development

12.1

Review. Every change to the Runtime or the platform goes through version control and peer review. There is no direct commit to the production branch, and no editing files on a live server as a normal practice.

12.2

Environments. Development, staging and production are separate, with separate credentials. Production data is not copied into development.

12.3

Secrets. Credentials live in a managed secret store and are injected at runtime. They are not in source control, not in build logs, and not in configuration files committed to a repository. Automated secret scanning runs on every push.

12.4

Testing. The Runtime is validated against a conformance suite derived from real production programs — arithmetic to the penny, file operations byte-for-byte, terminal behavior measured against captured output rather than guessed. Regressions are caught by that suite before a release, and the suite runs on every build.

12.5

Releases are versioned, changelogged and rolled out to our own production first. We run new Runtime builds against Unique Photo's live operations before they reach a customer. If a release is going to break something, it breaks our order entry first.

12.6

Rollback. Every environment upgrade is preceded by a snapshot and can be reverted. We keep the previous Runtime build available so a rollback is a restart, not a rebuild.

13Physical security

13.1

We do not operate a datacenter. Customer environments run in the facilities of a major cloud infrastructure provider, and we inherit their physical controls: staffed perimeters, badge and biometric access, video surveillance, environmental and fire suppression systems, redundant power, and audited media destruction. Those facilities hold their own independent certifications; ours are not implied by theirs, and we do not present them as ours.

13.2

Our offices. No customer data is stored on office equipment. Company laptops have full-disk encryption, automatic screen lock and remote wipe, and are enrolled in device management.

13.3

Customer content is never written to removable media. There are no USB backups of your data files anywhere in our organization.

13.4

Printed material containing customer information is not produced. If it ever is, it is cross-cut shredded.

14People

14.1

Everyone with production access is an employee of Unique Photo, not an anonymous contractor pool, and is bound by written confidentiality obligations that survive their employment.

14.2

Background checks are performed for roles with production access, to the extent permitted by law.

14.3

Security training happens at onboarding and annually, and covers the things that actually get companies breached: phishing, credential handling, social engineering over the phone, and the pressure to skip a control because someone senior is in a hurry.

14.4

We will never ask you for your password, and we will never ask you to disable multi-factor authentication. If someone claiming to be from UBB asks either, it is not us — hang up and write to security@uniquebb.com.

15Reporting a vulnerability

15.1

Send it to security@uniquebb.com. Plain email is fine; we do not require encryption to receive a report, though we will happily move to an encrypted channel for details.

15.2

What we commit to: acknowledgement within 2 business days, an initial assessment within 5 business days, regular updates until it is closed, and credit in our release notes if you want it.

15.3

Safe harbour. If you research in good faith, stay within the scope below, do not access or modify data that is not yours, do not degrade the service for others, and give us reasonable time to fix the issue before disclosing it, we will not pursue legal action against you and we will say so in writing if you ask.

15.4

In scope: our public websites and the account portal. Out of scope: customer environments (they contain other companies' data — never test against one), denial-of-service and volumetric testing, social engineering of our staff or our customers, physical attacks, and findings that are purely the output of an automated scanner with no demonstrated impact.

15.5

Authorized testing. Any active security testing needs prior written authorisation — see the Acceptable Use Policy. Customers may test their own environment. Ask at security@uniquebb.com, tell us the window and the source addresses, and we will normally say yes within 5 business days.

16Security review and questionnaires

16.1

We complete security questionnaires. Send yours to security@uniquebb.com and we will return it, in your format, within 10 business days. Where the honest answer is "no", the answer will be "no" — you will not get a paragraph of evasion in the comments column.

16.2

We will get on a call with your IT team, your auditor or your insurer, and we will put anything we tell you in writing so you can hold us to it.

16.3

We will sign a mutual NDA before the detailed conversation, and a data processing addendum before we touch anything of yours. See Privacy, section 4.5.

16.4

This page is reviewed at least twice a year and whenever a control materially changes. The review date is at the top. If a control described here stops being true, we change the page — we do not quietly leave it up.

Vulnerability reports
security@uniquebb.com
Questionnaires, NDAs, DPAs
security@uniquebb.com
Abuse
abuse@uniquebb.com
Everything else
hello@uniquebb.com

Related documents: Terms of Service, Privacy Policy, Acceptable Use Policy.

↑ Back to top