What happened
Internet-exposed PraisonAI instances accepted unauthenticated GET /agents and POST /chat requests. POST /chat executed PraisonAI(agent_file='agents.yaml').run() for any caller regardless of message content. A DigitalOcean-hosted scanner confirmed the auth bypass on public instances within hours of CVE disclosure.