{"id":"CVE-2026-121794","kind":"vulnerability","aliases":["CVE-2026-121794"],"related":[],"title":"Travelly WooCommerce booking plugin: contributors can read payment gateway secrets","description":"The Travelly – Tour & Travel Booking Manager for WooCommerce plugin for WordPress is vulnerable to authorization bypass in all versions up to, and including, 2.3.11 This is due to the plugin not properly verifying that a user is authorized to perform an action. This makes it possible for authenticated attackers, with contributor-level access and above, to view stored WooCommerce payment gateway credentials — including PayPal API username, password, and signature, as well as Stripe test and live secret keys — injected verbatim into the HTML response of the tour edit screen. The credentials are present in the raw HTTP response regardless of the modal's CSS visibility state, making them trivially accessible by viewing page source.","summary":"The Travelly tour booking plugin for WordPress and WooCommerce exposes stored payment gateway credentials, including PayPal API credentials and Stripe secret keys, in the HTML of the tour edit screen. An authenticated contributor-level user can view these secrets by viewing the page source, even though the modal that shows them is hidden.","severity":"medium","cvss":6.5,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["package","self-hosted","travelly","woocommerce","wordpress"],"not_affected_if":["no-contributor-accounts","plugin-not-installed"],"how_to_check":"- Check whether the Travelly plugin is installed and its version is `2.3.11` or lower in the WordPress plugins screen\n- Review which WordPress accounts have contributor or higher access","fix":"- Travelly plugin: a fixed version is not stated in the sources; unknown","status":"open","published_at":"2026-11-06T09:17:00+00:00","first_seen_at":"2026-11-06T09:40:32+00:00","triaged_at":"2026-11-06T09:40:43+00:00","updated_at":"2026-11-06T09:40:43+00:00","category":"package","confidence":0.7,"triage":{"at":"2026-11-06T09:40:43Z","model":"claude-haiku-5-5","output":{"fix":"- Travelly plugin: a fixed version is not stated in the sources; unknown","reach":"internet","title":"Travelly WooCommerce booking plugin: contributors can read payment gateway secrets","impact":"high","summary":"The Travelly tour booking plugin for WordPress and WooCommerce exposes stored payment gateway credentials, including PayPal API credentials and Stripe secret keys, in the HTML of the tour edit screen. An authenticated contributor-level user can view these secrets by viewing the page source, even though the modal that shows them is hidden.","audience":"businesses","category":"package","nicknames":[],"who_cares":["wordpress","woocommerce","travelly","self-hosted"],"confidence":0.7,"fix_status":"unknown","needs_auth":"yes","worst_case":"Attacker reads stored PayPal and Stripe secret keys from edit screen","analyst_note":"Confirm the fixed plugin version from the vendor or WPScan/Wordfence entry; the sources give no fix version.","how_to_check":"- Check whether the Travelly plugin is installed and its version is `2.3.11` or lower in the WordPress plugins screen\n- Review which WordPress accounts have contributor or higher access\n- unknown","plain_action":"","needs_analyst":true,"not_affected_if":["plugin-not-installed","no-contributor-accounts"],"who_is_affected":"Sites running the Travelly plugin version 2.3.11 or earlier with WooCommerce payment gateways configured. Exposure requires an account with contributor-level access or higher, so sites with no untrusted contributor accounts face lower risk. Sites without this plugin or with no stored payment credentials can skip it.","user_interaction":"no","needs_special_setup":"yes","severity_if_unknown":"medium"},"cost_usd":0.000748,"input_tokens":4364,"output_tokens":623,"severity_before":"medium"},"analyst_status":null,"analyst_note":null,"search":"'-121794':13A,16A '-2026':12A,15A '2.3.11':101C 'access':131C,188C 'action':119C 'api':40B,143C 'attack':126C 'authent':55B,125C 'author':92C,115C 'book':3A,27B,82C 'bypass':93C 'contributor':5A,57B,129C 'contributor-level':56B,128C 'credenti':37B,41B,140C,169C 'css':182C 'cve':11A,14A 'due':104C 'edit':52B,166C 'even':69B 'expos':33B 'gateway':9A,36B,139C 'hidden':77B 'host':20B 'html':48B,161C 'http':175C 'includ':38B,100C,141C 'inject':157C 'key':45B,156C 'level':58B,130C 'live':154C 'make':121C,185C 'manag':83C 'modal':72B,180C 'packag':17B 'page':67B,191C 'password':145C 'payment':8A,35B,138C 'paypal':39B,142C 'perform':117C 'plugin':4A,28B,86C,107C 'possibl':123C 'present':171C 'proper':109C 'raw':174C 'read':7A 'regardless':177C 'respons':162C,176C 'screen':53B,167C 'secret':10A,44B,63B,155C 'self':19B 'self-host':18B 'show':74B 'signatur':147C 'sourc':68B,192C 'state':184C 'store':34B,136C 'stripe':43B,151C 'test':152C 'though':70B 'tour':26B,51B,80C,165C 'travel':81C 'travelli':1A,21B,25B,79C 'trivial':187C 'user':59B,113C 'usernam':144C 'verbatim':158C 'verifi':110C 'version':96C 'view':61B,65B,135C,190C 'visibl':183C 'vulner':90C 'well':149C 'woocommerc':2A,22B,32B,85C,137C 'wordpress':23B,30B,88C","nicknames":[],"mitigations":[],"who_affected":"Sites running the Travelly plugin version 2.3.11 or earlier with WooCommerce payment gateways configured. Exposure requires an account with contributor-level access or higher, so sites with no untrusted contributor accounts face lower risk. Sites without this plugin or with no stored payment credentials can skip it.","tier":"C","verified":{},"analyst_revisit_at":null,"fix_status":"unknown","audience":"businesses","plain_action":null,"pkeys":[],"ptokens":[],"labels":["medium","package","selfhosted","travelly","woocommerce","wordpress"],"campaign_type":null,"search_a":"'-121794':13A,16A '-2026':12A,15A 'book':3A 'contributor':5A 'cve':11A,14A 'gateway':9A 'payment':8A 'plugin':4A 'read':7A 'secret':10A 'travelli':1A 'woocommerc':2A","search_b":"'api':40B 'authent':55B 'book':27B 'contributor':57B 'contributor-level':56B 'credenti':37B,41B 'edit':52B 'even':69B 'expos':33B 'gateway':36B 'hidden':77B 'host':20B 'html':48B 'includ':38B 'key':45B 'level':58B 'modal':72B 'packag':17B 'page':67B 'payment':35B 'paypal':39B 'plugin':28B 'screen':53B 'secret':44B,63B 'self':19B 'self-host':18B 'show':74B 'sourc':68B 'store':34B 'stripe':43B 'though':70B 'tour':26B,51B 'travelli':21B,25B 'user':59B 'view':61B,65B 'woocommerc':22B,32B 'wordpress':23B,30B","search_c":"'2.3.11':101C 'access':131C,188C 'action':119C 'api':143C 'attack':126C 'authent':125C 'author':92C,115C 'book':82C 'bypass':93C 'contributor':129C 'contributor-level':128C 'credenti':140C,169C 'css':182C 'due':104C 'edit':166C 'gateway':139C 'html':161C 'http':175C 'includ':100C,141C 'inject':157C 'key':156C 'level':130C 'live':154C 'make':121C,185C 'manag':83C 'modal':180C 'page':191C 'password':145C 'payment':138C 'paypal':142C 'perform':117C 'plugin':86C,107C 'possibl':123C 'present':171C 'proper':109C 'raw':174C 'regardless':177C 'respons':162C,176C 'screen':167C 'secret':155C 'signatur':147C 'sourc':192C 'state':184C 'store':136C 'stripe':151C 'test':152C 'tour':80C,165C 'travel':81C 'travelli':79C 'trivial':187C 'user':113C 'usernam':144C 'verbatim':158C 'verifi':110C 'version':96C 'view':135C,190C 'visibl':183C 'vulner':90C 'well':149C 'woocommerc':85C,137C 'wordpress':88C","first_public_at":"2026-11-06T09:17:00+00:00","kev":null,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N","cvss_by":"security@wordfence.com","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-121794","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-121794","severity":null,"published_at":"2026-11-06T09:17:00+00:00","modified_at":"2026-11-06T09:17:00+00:00","first_seen_at":"2026-11-06T09:40:32+00:00","fetched_at":"2026-11-06T09:40:32+00:00","note":null}],"documents":[],"exploit_sources":[],"notice":"Free to read, with fair use of about 60 pages a minute. For higher limits or API access: sales@infrastack.ai"}