{"id":"CVE-2020-16253","aliases":["EUVD-2020-0642","GHSA-v6fx-752r-ccp2"],"status":"published","title":"PgHero gem allows CSRF","description":"The PgHero gem through 2.6.0 for Ruby allows CSRF.","severity":{"version":"3.1","score":8.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:H","level":"high","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-09","score":0.00465,"percentile":0.40508,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-352"],"published":"2020-08-05T13:42:19Z","modified":"2026-10-20T10:51:59Z","fixes":[{"ecosystem":"RubyGems","package":"pghero","fixed_in":["2.7.0"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"RubyGems","package":"pghero","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.7.0"}]}]},{"source":"osv","ecosystem":"RubyGems","package":"pghero","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.7.0"}]}],"versions":["0.0.1","0.0.2","0.0.3","0.1.0","0.1.1","0.1.10","0.1.2","0.1.3","0.1.4","0.1.5","0.1.6","0.1.7","0.1.8","0.1.9","1.0.0","1.0.1","1.1.0","1.1.1","1.1.2","1.1.3","1.1.4","1.2.0","1.2.1","1.2.2","1.2.3","1.2.4","1.3.0","1.3.1","1.3.2","1.4.0","1.4.1","1.4.2","1.5.0","1.5.1","1.5.2","1.5.3","1.6.0","1.6.1","1.6.2","1.6.3","1.6.4","1.6.5","1.7.0","2.0.0","2.0.1","2.0.2","2.0.3","2.0.4","2.0.5","2.0.6","2.0.7","2.0.8","2.1.0","2.1.1","2.2.0","2.2.1","2.3.0","2.4.0","2.4.1","2.4.2","2.5.0","2.5.1","2.6.0"]}],"products":[{"vendor":"pghero_project","product":"pghero"}],"references":[{"url":"https://github.com/ankane/pghero/","tags":["x_refsource_MISC","x_transferred","Third Party Advisory","advisory"]},{"url":"https://github.com/ankane/pghero/issues/330","tags":["x_refsource_MISC","x_transferred","Third Party Advisory","advisory","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2020-16253","tags":["advisory"]},{"url":"https://github.com/ankane/pghero/commit/14b67b32fed19a30aaf9826ee72f2a29cda604e9","tags":["web"]},{"url":"https://github.com/rubysec/ruby-advisory-db/blob/master/gems/pghero/CVE-2020-16253.yml","tags":["web"]},{"url":"https://github.com/advisories/GHSA-v6fx-752r-ccp2"},{"url":"https://github.com/ankane/pghero","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2020-16253","description":"The PgHero gem through 2.6.0 for Ruby allows CSRF.","status":"published","published":"2020-08-05T13:42:19Z","modified":"2024-08-04T13:37:54.191Z","updated_at":"2026-11-02T14:35:59.116379Z"}],"euvd":[{"id":"EUVD-2020-0642","description":"The PgHero gem through 2.6.0 for Ruby allows CSRF.","status":"published","published":"2020-08-05T13:42:19Z","modified":"2024-08-04T13:37:54Z","updated_at":"2026-11-03T03:07:28.673063Z"}],"ghsa":[{"id":"GHSA-v6fx-752r-ccp2","title":"PgHero gem allows CSRF","description":"The PgHero gem through 2.6.0 for Ruby allows CSRF. PgHero normally uses the `protect_from_forgery` method from Rails to prevent CSRF. However, this defaults to `:null_session`, which has no effect on non-session based authentication methods. Thus the ruby gem is vulnerable with non-session based authentication methods like basic authentication.","status":"published","published":"2020-08-05T14:53:43Z","modified":"2023-08-25T22:21:15Z","cvss":[{"version":"3.1","score":8.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:H","level":"high"}],"cwes":["CWE-352"],"updated_at":"2026-11-02T14:37:00.680009Z"}],"nvd":[{"id":"CVE-2020-16253","description":"The PgHero gem through 2.6.0 for Ruby allows CSRF.","status":"published","published":"2020-08-05T14:15:12.75Z","modified":"2026-06-17T02:57:56.78Z","cvss":[{"version":"3.1","score":8.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:H","level":"high","assessor":"primary"},{"version":"2.0","score":5.8,"vector":"AV:N/AC:M/Au:N/C:N/I:P/A:P","level":"medium","assessor":"primary"}],"cwes":["CWE-352"],"updated_at":"2026-11-02T14:06:10.994748Z"}],"osv":[{"id":"CVE-2020-16253","description":"The PgHero gem through 2.6.0 for Ruby allows CSRF.","status":"published","published":"2020-08-05T14:15:12.75Z","modified":"2026-10-20T10:51:59.935321069Z","cvss":[{"version":"3.1","score":8.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:44:14.828228Z"},{"id":"GHSA-v6fx-752r-ccp2","title":"PgHero gem allows CSRF","description":"The PgHero gem through 2.6.0 for Ruby allows CSRF. PgHero normally uses the `protect_from_forgery` method from Rails to prevent CSRF. However, this defaults to `:null_session`, which has no effect on non-session based authentication methods. Thus the ruby gem is vulnerable with non-session based authentication methods like basic authentication.","status":"published","published":"2020-08-05T14:53:43Z","modified":"2024-02-16T08:23:18.681389Z","cvss":[{"version":"3.1","score":8.1,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:H","level":"high"}],"cwes":["CWE-352"],"updated_at":"2026-11-02T15:46:56.981655Z"}]}}
