{"schemaVersion":3,"id":"CVE-2022-4034","aliases":[],"status":"published","duplicateOf":null,"title":null,"description":"The Appointment Hour Booking Plugin for WordPress is vulnerable to CSV Injection in versions up to, and including, 1.3.72. This makes it possible for unauthenticated attackers to embed untrusted input into content during booking creation that may be exported as a CSV file when a site's administrator exports booking details. This can result in code execution when these files are downloaded and opened on a local system with a vulnerable configuration.","dates":{"published":"2022-11-29T20:30:15.537Z","modified":"2026-04-08T17:16:42.410Z","reserved":null,"kevAdded":[],"kevDue":[]},"cvss":{"headline":{"score":7.8,"severity":"high","version":"3.1","versionLabel":"v3.1","source":"NVD","vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","computed":false,"selection":"backend-summary"},"metrics":[{"version":"3.1","versionLabel":"v3.1","source":"CVE.org","score":5.8,"severity":"medium","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:L/I:L/A:L","exploitability":null,"impact":null,"computed":false},{"version":"3.1","versionLabel":"v3.1","source":"NVD","score":7.8,"severity":"high","vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","exploitability":null,"impact":null,"computed":false},{"version":"3.1","versionLabel":"v3.1","source":"wordfence","score":5.8,"severity":"medium","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:L/I:L/A:L","exploitability":null,"impact":null,"computed":false}]},"epss":{"probability":0.00678,"percentile":0.51692,"severity":"low","asOf":"2026-10-21T00:00:00.000Z","change":{"pp":0.03899999999999997,"baselineDate":"2026-09-21T00:00:00.000Z","baselineScore":0.00639},"history":[{"date":"2026-09-14T00:00:00.000Z","score":0.00639,"percentile":null},{"date":"2026-09-15T00:00:00.000Z","score":0.00639,"percentile":null},{"date":"2026-09-16T00:00:00.000Z","score":0.00639,"percentile":null},{"date":"2026-09-17T00:00:00.000Z","score":0.00639,"percentile":null},{"date":"2026-09-18T00:00:00.000Z","score":0.00639,"percentile":null},{"date":"2026-09-19T00:00:00.000Z","score":0.00639,"percentile":null},{"date":"2026-09-20T00:00:00.000Z","score":0.00639,"percentile":null},{"date":"2026-09-21T00:00:00.000Z","score":0.00639,"percentile":null},{"date":"2026-09-22T00:00:00.000Z","score":0.00639,"percentile":null},{"date":"2026-09-23T00:00:00.000Z","score":0.00639,"percentile":null},{"date":"2026-09-24T00:00:00.000Z","score":0.00639,"percentile":null},{"date":"2026-09-25T00:00:00.000Z","score":0.00639,"percentile":null},{"date":"2026-09-26T00:00:00.000Z","score":0.00639,"percentile":null},{"date":"2026-09-27T00:00:00.000Z","score":0.00639,"percentile":null},{"date":"2026-09-28T00:00:00.000Z","score":0.00639,"percentile":null},{"date":"2026-09-29T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-09-30T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-01T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-02T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-03T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-04T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-05T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-06T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-07T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-08T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-20T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-21T00:00:00.000Z","score":0.00678,"percentile":0.51692}],"last30":[{"date":"2026-09-21T00:00:00.000Z","score":0.00639,"percentile":null},{"date":"2026-09-22T00:00:00.000Z","score":0.00639,"percentile":null},{"date":"2026-09-23T00:00:00.000Z","score":0.00639,"percentile":null},{"date":"2026-09-24T00:00:00.000Z","score":0.00639,"percentile":null},{"date":"2026-09-25T00:00:00.000Z","score":0.00639,"percentile":null},{"date":"2026-09-26T00:00:00.000Z","score":0.00639,"percentile":null},{"date":"2026-09-27T00:00:00.000Z","score":0.00639,"percentile":null},{"date":"2026-09-28T00:00:00.000Z","score":0.00639,"percentile":null},{"date":"2026-09-29T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-09-30T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-01T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-02T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-03T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-04T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-05T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-06T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-07T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-08T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-20T00:00:00.000Z","score":0.00678,"percentile":null},{"date":"2026-10-21T00:00:00.000Z","score":0.00678,"percentile":0.51692}]},"kev":{"state":"not-listed","entries":[],"listedCount":0,"totalCatalogs":3,"catalogs":[{"source":"cisa","label":"CISA","listed":false,"entry":null},{"source":"enisa","label":"ENISA","listed":false,"entry":null},{"source":"circl","label":"CIRCL","listed":false,"entry":null}]},"ransomware":{"state":"none-recorded","sources":[]},"exploits":[],"exploitCount":0,"weaknesses":[{"id":"CWE-1236","name":"Improper Neutralization of Formula Elements in a CSV File","description":"The product saves user-provided information into a Comma-Separated Value (CSV) file, but it does not neutralize or incorrectly neutralizes special elements that could be interpreted as a command when the file is opened by a spreadsheet product.","type":"weakness","status":"Incomplete","abstraction":"Base","likelihoodOfExploit":null,"url":"https://cwe.mitre.org/data/definitions/1236.html"}],"affected":[{"vendor":"codepeople","product":"appointment hour booking – booking calendar","name":"Appointment Hour Booking – Booking Calendar","label":"appointment hour booking – booking calendar","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"≤ 1.3.72","noFixRecorded":false,"fixedIn":null}],"versionsText":"≤ 1.3.72","eol":null,"hubHref":"/vendor/codepeople/appointment_hour_booking_-_booking_calendar"},{"vendor":"dwbooster","product":"appointment_hour_booking","name":"appointment hour booking","label":"appointment_hour_booking","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"≤ 1.3.72","noFixRecorded":false,"fixedIn":null}],"versionsText":"≤ 1.3.72","eol":null,"hubHref":"/vendor/dwbooster/appointment_hour_booking"},{"vendor":"wordpress","product":"appointment-hour-booking","name":"Appointment Hour Booking – Booking Calendar","label":"appointment-hour-booking","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"≤ 1.3.72 (fixed in 1.3.73)","noFixRecorded":false,"fixedIn":"1.3.73"}],"versionsText":"≤ 1.3.72 (fixed in 1.3.73)","eol":null,"hubHref":null}],"affectedCount":3,"eol":{"hasEol":false,"count":0},"references":[{"url":"https://www.wordfence.com/threat-intel/vulnerabilities/id/b3a77b7a-65ad-4334-99c9-92cc79e60bee?source=cve","label":"www.wordfence.com/threat-intel/vulnerabilities/id/b3a77b7a-65ad-4334-99c9-92cc79e60bee?source=cve","hostname":"www.wordfence.com","tags":[]},{"url":"https://plugins.trac.wordpress.org/changeset?sfp_email=&sfph_mail=&reponame=&old=2803896%40appointment-hour-booking&new=2803896%40appointment-hour-booking&sfp_email=&sfph_mail=","label":"plugins.trac.wordpress.org/changeset","hostname":"plugins.trac.wordpress.org","tags":["Patch","Third Party Advisory"]},{"url":"https://www.wordfence.com/vulnerability-advisories-continued/#CVE-2022-4034","label":"www.wordfence.com/vulnerability-advisories-continued/","hostname":"www.wordfence.com","tags":["Third Party Advisory"]},{"url":"https://www.wordfence.com/threat-intel/vulnerabilities/id/b3a77b7a-65ad-4334-99c9-92cc79e60bee","label":"www.wordfence.com/threat-intel/vulnerabilities/id/b3a77b7a-65ad-4334-99c9-92cc79e60bee","hostname":"www.wordfence.com","tags":["Vendor Advisory"]}],"lineage":{"upstream":[],"downstream":[],"duplicates":[],"related":[]},"timeline":[{"kind":"published","date":"2022-11-29T20:30:15.537Z","label":"Published","detail":"Vulnerability first disclosed.","source":null},{"kind":"modified","date":"2026-04-08T17:16:42.410Z","label":"Last modified","detail":"Vulnerability information updated.","source":null}],"risk":{"score":31,"level":"medium","profile":"Default","thresholds":{"critical":75,"high":50,"medium":25,"low":10}},"meta":{"dataAsOf":"2026-10-22T06:08:33.972Z","stale":false,"partial":false}}