---
id: MAL-2026-17897
title: Malicious code in fromthehotel-poems (PyPI)
summary: Malicious code in fromthehotel-poems (PyPI)
severity: critical
exploited: true
vendor: fromthehotel-poems
product: fromthehotel-poems
ecosystem: pip
affected:
  - fromthehotel-poems
published: '2026-10-16'
updated: '2026-10-29'
sourceUpdated: '2026-10-29T13:48:11.140381109Z'
source: OSV
sourceUrl: 'https://osv.dev/vulnerability/MAL-2026-17897'
references:
  - url: 'https://bad-packages.kam193.eu/pypi/package/fromthehotel-poems'
  - url: 'https://pypi.org/project/fromthehotel-poems/0.1.0/'
tags:
  - osv
  - pip
  - malware
ingestedAt: '2026-10-16T11:48:15.758Z'
---

## Overview


---
_-= Per source details. Do not edit below this line.=-_

## Source: amazon-inspector (475b2190d4001e511377932ffc1a8ce15c6003305c057837911b9ebae0699e48)
The package's documented public API `getdaily()` performs an HTTPS fetch to https://login.fromthehotel.com/api/poems/code, passes the response body to compile() and exec() in the caller's process, and then invokes `get_daily_poem` from the resulting namespace. The README presents getdaily() as a poem-fetching helper, so callers invoking the advertised API unknowingly execute Python source served by that endpoint. The fetched code is unpinned and there is no hash or signature verification, so whoever controls login.fromthehotel.com — or anyone able to tamper with the response — controls arbitrary code execution on every host that calls getdaily(). The exec runs with the caller's full process privileges and has unrestricted access to environment variables, filesystem, and network.

## Source: kam193 (bf72dad3e2f32ee2e66a3a5ee5642b4a20a9fb9458fcd677f6250b1e4b805906)
One of the provided functions hides executing remote code from a newly created domain. During analysis, the remote code did not contain any malicious action. The description and other endpoints clearly suggest it's an attempt to exploit LLM agent like Muse. In one of the hosted instructions, the agent is instructed to download a self-hosted package depending on published code and trigger the code execution action.


---

Category: MALICIOUS - The campaign has clearly malicious intent, like infostealers.


Campaign: 2026-10-fromthehotel-poems


Reasons (based on the campaign):


 - Downloads and executes a remote malicious script.


 - llm-threat


 - action-hidden-in-lib-usage


## Affected packages

- `fromthehotel-poems`

## Remediation

Refer to the advisory for the patched release.
