DEV Community

SorrelThorncroft
SorrelThorncroft

Posted on

Bar Assistant: 131 title matches and a role boundary that counts cannot show

Bar Assistant: 131 title matches and a role boundary that counts cannot show

Bar Assistant is a self-hosted cocktail recipe and bar-management application. A public instance can hold recipes, ingredients, shelf data, users, and personal API tokens. The product is small compared with a corporate portal, but the access model still matters because one instance can separate several bars and several people with different levels of authority.

ZoomEye count-only measurements on 2026-11-09 between 23:46 and 23:47 UTC found 131 assets with title="Bar Assistant", 268 with the product name in the HTTP body, and zero with app="Bar Assistant". The query used sub_type=all, page 1, and page size 1. These are matched record totals, not counts of vulnerable or misconfigured installations.

The gap between title, body, and application fingerprint is useful. A title can identify a login page or a reverse-proxied instance without proving the software version. Body text may come from documentation, a landing page, or a search result cached in a banner. The zero app count means the search index did not provide a product fingerprint for this sample. It does not mean the title matches are unrelated.

What a Bar Assistant instance holds

The official documentation describes an admin role with high authority over bar management and a moderator role for content management and basic bar settings. It also describes personal API tokens and single sign-on support. Those functions sit on top of a multi-user application. The practical asset is not the cocktail recipe. It is the combination of user accounts, bar membership, ingredient and inventory records, and tokens that can be used by other clients.

An exposed login page is therefore a starting point for a control review, not a finding that the instance is open. Check whether registration is enabled, whether administrators must use SSO, whether API tokens have narrow permissions, and whether every bar has an owner who can remove departed users. A token created for a mobile client or an AI integration should not inherit the full authority of the administrator who created it.

Measurement method

The count was taken with the ZoomEye SDK through AutoPR's isolated Python runtime. Each dork requested one record to obtain the total count. The result did not include full asset records, and no key or account data was printed. The title count is the most useful public discovery signal here because the application fingerprint returned zero. The body count is reported as a secondary signal and should be validated before an operator treats a host as a Bar Assistant deployment.

The public search can be reproduced with the query title="Bar Assistant". Review the returned hosts for redirects, reverse-proxy headers, authentication pages, and the presence of an /bar path. Then verify the actual version and configuration from an authorized management session.

A practical review sequence

Start with ownership. Which organization runs the bar, who can create a bar, and who can promote an account to admin? Review the SSO settings and the local-account fallback. If the deployment has a public registration page, determine what a new user can see before approval.

Then inspect token scope. Create a test token with the minimum permissions a real integration needs. Try reading another bar, changing a recipe, and calling an administrative endpoint. The token should fail outside its documented role. Revoke the token after the test and confirm that cached clients lose access.

Review the reverse proxy separately. A title match may be the public face of an application that is also reachable on an internal port. Restrict the internal endpoint to the proxy and management network, and make sure the application trusts only the intended forwarded headers. A login page behind a proxy is not proof that the proxy enforces authentication.

Finally, record a completion check. The owner should have a named administrator, a documented registration policy, a token inventory, and evidence that an unprivileged user cannot cross a bar or role boundary. The ZoomEye count tells you where to ask the question. It does not answer the authorization question.

What the count cannot establish

The 131 title matches do not say that 131 organizations are exposed to a vulnerability, that the instances are reachable beyond a login page, or that any instance has weak permissions. The zero application fingerprint does not prove that the product is absent from the index. The body count is not an installation count.

That limitation is normal for product-name measurements. The right response is to use the count as a discovery lead, verify a sample through a lawful and authorized review, and report the remaining uncertainty. A useful exposure article should make the next check easier, not convert a search total into an incident count.

References

Top comments (0)