View Issue Details

IDProjectCategoryView StatusLast Update
0008346Talermerchant backendpublic2024-03-07 19:47
Reportermikolai Assigned ToChristian Grothoff Resolution deadline
ImplementerReviewer 
Release signed byDeployed by 
VerifierCommunicator 
Data protection authority notification requiredNo  
CSIRT notification requiredNo  
Estimated effort (hours)Actual effort (hours)0 
Fast-trackNo
Work packagenone
PrioritynormalSeveritycrashReproducibilityalways
Status closedResolutionfixed 
Product Versiongit (master) 
Target Version0.9.4Fixed in Version0.9.4 
Summary0008346: merchant backend crash on malformed client JSON
Descriptionsend a POST request to pay for an existing and claimed order at `orders/<order_id>/pay`

whenever `coins[*]/ub_sig/cipher` from https://docs.taler.net/core/api-common.html#tsref-type-CoinEnvelope is missing or contains an invalid value (tested with "RSA1" instead of "RSA"), the merchant backend crashes with

```
Feb 07 13:05:32 1561dc32958c taler-merchant-httpd[934]: {}2024-02-07T13:05:32.176067+0000 taler-merchant-httpd-934(8F0XQV3P6JRNFAE56R5M658RGC) WARNING External protocol violation detected at json_helper.c:862.
Feb 07 13:05:32 1561dc32958c taler-merchant-httpd[934]: 2024-02-07T13:05:32.176128+0000 taler-merchant-httpd-934(8F0XQV3P6JRNFAE56R5M658RGC) WARNING External protocol violation detected at taler-merchant-httpd_post-orders-ID-pay.c:2820.
Feb 07 13:05:32 1561dc32958c taler-merchant-httpd[934]: 2024-02-07T13:05:32.176143+0000 taler-merchant-httpd-934(8F0XQV3P6JRNFAE56R5M658RGC) ERROR Assertion failed at taler-merchant-httpd_post-orders-ID-pay.c:2842. Aborting.
```

expected result: merchant backend should not crash, but return a 400 Bad Request
TagsNo tags attached.

Required notifications

Address or linkRemarkAdded byNotifiedActions

Activities

Christian Grothoff

2024-02-07 13:32

manager   ~0021195

Major fix, see: b01abb5..e1d4b43

Christian Grothoff

2024-02-07 13:32

manager   ~0021196

Oh, and thanks for reporting! :-)

Issue History

Date ModifiedUsernameFieldChange
2024-02-07 13:19mikolaiNew Issue
2024-02-07 13:19mikolaiStatusnew => assigned
2024-02-07 13:19mikolaiAssigned To => Christian Grothoff
2024-02-07 13:32Christian GrothoffStatusassigned => informing
2024-02-07 13:32Christian GrothoffResolutionopen => fixed
2024-02-07 13:32Christian GrothoffFixed in Version => 0.9.4
2024-02-07 13:32Christian GrothoffNote Added: 0021195
2024-02-07 13:32Christian GrothoffProduct Version0.9.4 => git (master)
2024-02-07 13:32Christian GrothoffTarget Version => 0.9.4
2024-02-07 13:32Christian GrothoffNote Added: 0021196
2024-03-07 19:47Christian GrothoffStatusinforming => closed
2025-03-22 13:09Christian GrothoffCategorymechant backend => merchant backend