{"id":"CVE-2026-100355","kind":"vulnerability","aliases":["CVE-2026-100355"],"related":[],"title":"Campfire chat: link previews reach internal addresses through special-use ranges","description":"Campfire is a web-based chat application. In version 1.4.4 and earlier, when a Campfire message contains a link, the server fetches it to build an OpenGraph unfurl preview. `RestrictedHTTP::PrivateNetworkGuard` relied on Ruby's `IPAddr#private? `` IPAddr#loopback?`, and `IPAddr#link_local?` predicates plus IPv4-mapped and IPv4-compatible checks, which do not cover several special-use ranges. An authenticated user can post a link to a hostname resolving to CGNAT `100.64.0.0/10`, NAT64 `64:ff9b::/96` or `64:ff9b:1::/48`, or 6to4 `2002::/16` to bypass the guard and cause server-side requests to internal network resources. The NAT64 and 6to4 ranges can embed an internal IPv4 target. Confidentiality impact is limited to returned OpenGraph metadata, and most internal endpoints return none. There is no integrity or availability impact. An initial fix was released in version 1.4.5.","summary":"Campfire fetches links posted in chat to build preview cards, and its guard against internal addresses misses CGNAT, NAT64 and 6to4 ranges. An authenticated user can make the server request internal resources and see OpenGraph metadata returned from them.","severity":"low","cvss":3.1,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["campfire","package","ruby","self-hosted"],"not_affected_if":["auth-required","version-1.4.5-or-later"],"how_to_check":"- Check the installed Campfire version and whether it is `1.4.4` or earlier\n- Confirm whether link unfurling is enabled in your deployment (unknown from the sources)","fix":"- Campfire: move to `1.4.5` (the sources say an initial fix was released in this version; later fixes are unknown)","status":"open","published_at":"2026-10-30T14:16:35+00:00","first_seen_at":"2026-10-30T14:30:53+00:00","triaged_at":"2026-10-30T14:33:02+00:00","updated_at":"2026-10-30T14:33:02+00:00","category":"package","confidence":0.7,"triage":{"at":"2026-10-30T14:33:02Z","model":"claude-haiku-5-5","output":{"fix":"- Campfire: move to `1.4.5` (the sources say an initial fix was released in this version; later fixes are unknown)","reach":"internet","title":"Campfire chat: link previews reach internal addresses through special-use ranges","impact":"low","summary":"Campfire fetches links posted in chat to build preview cards, and its guard against internal addresses misses CGNAT, NAT64 and 6to4 ranges. An authenticated user can make the server request internal resources and see OpenGraph metadata returned from them.","audience":"businesses","category":"package","nicknames":[],"who_cares":["campfire","self-hosted","ruby"],"confidence":0.7,"fix_status":"available","needs_auth":"yes","worst_case":"Internal server requests return OpenGraph metadata to the attacker","analyst_note":"","how_to_check":"- Check the installed Campfire version and whether it is `1.4.4` or earlier\n- Confirm whether link unfurling is enabled in your deployment (unknown from the sources)","plain_action":"","needs_analyst":false,"not_affected_if":["version-1.4.5-or-later","auth-required"],"who_is_affected":"Teams that self-host Campfire version 1.4.4 or earlier and let logged-in users post links that the server unfurls. Exposure depends on the server being able to reach internal networks, and the sources say most internal endpoints return no data. Deployments on 1.4.5 or later are not affected by this report.","user_interaction":"no","needs_special_setup":"unknown","severity_if_unknown":"low"},"cost_usd":0.000704,"input_tokens":4358,"output_tokens":536,"severity_before":"low"},"analyst_status":null,"analyst_note":null,"search":"'-100355':15A,18A '-2026':14A,17A '/10':139C '/16':152C '/48':148C '/96':143C '1':147C '1.4.4':72C '1.4.5':206C '100.64.0.0':138C '2002':151C '64':141C,145C '6to4':45B,150C,170C 'address':7A,40B 'applic':69C 'authent':48B,126C 'avail':197C 'base':67C 'build':32B,87C 'bypass':154C 'campfir':1A,19B,25B,62C,77C 'card':34B 'caus':158C 'cgnat':42B,137C 'chat':2A,30B,68C 'check':115C 'compat':114C 'confidenti':178C 'contain':79C 'cover':119C 'cve':13A,16A 'earlier':74C 'emb':173C 'endpoint':189C 'fetch':26B,84C 'ff9b':142C,146C 'fix':201C 'guard':37B,156C 'host':24B 'hostnam':134C 'impact':179C,198C 'initi':200C 'integr':195C 'intern':6A,39B,55B,164C,175C,188C 'ipaddr':98C,100C,103C 'ipv4':109C,113C,176C 'ipv4-compatible':112C 'ipv4-mapped':108C 'limit':181C 'link':3A,27B,81C,104C,131C 'local':105C 'loopback':101C 'make':51B 'map':110C 'messag':78C 'metadata':60B,185C 'miss':41B 'nat64':43B,140C,168C 'network':165C 'none':191C 'opengraph':59B,89C,184C 'packag':20B 'plus':107C 'post':28B,129C 'predic':106C 'preview':4A,33B,91C 'privat':99C 'privatenetworkguard':93C 'rang':12A,46B,124C,171C 'reach':5A 'releas':203C 'reli':94C 'request':54B,162C 'resolv':135C 'resourc':56B,166C 'restrictedhttp':92C 'return':61B,183C,190C 'rubi':21B,96C 'see':58B 'self':23B 'self-host':22B 'server':53B,83C,160C 'server-sid':159C 'sever':120C 'side':161C 'special':10A,122C 'special-us':9A,121C 'target':177C 'unfurl':90C 'use':11A,123C 'user':49B,127C 'version':71C,205C 'web':66C 'web-bas':65C","nicknames":[],"mitigations":[],"who_affected":"Teams that self-host Campfire version 1.4.4 or earlier and let logged-in users post links that the server unfurls. Exposure depends on the server being able to reach internal networks, and the sources say most internal endpoints return no data. Deployments on 1.4.5 or later are not affected by this report.","tier":"C","verified":{},"analyst_revisit_at":null,"fix_status":"available","audience":"businesses","plain_action":null,"first_public_at":"2026-10-30T14:16:35+00:00","kev":null,"cvss_vector":"CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N","cvss_by":"security-advisories@github.com","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-100355","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-100355","severity":null,"published_at":"2026-10-30T14:16:35+00:00","modified_at":"2026-10-30T14:16:35+00:00","first_seen_at":"2026-10-30T14:30:53+00:00","fetched_at":"2026-10-30T14:30:53+00:00","note":null}],"documents":[],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}