NICMx / FORT-validator

RPKI cache validator
MIT License
49 stars 24 forks source link

Segmentation Fault when an invalid TAL file is validated #1

Closed TheRedTrainer closed 5 years ago

TheRedTrainer commented 5 years ago

When an user tries to validate a TAL file that contains an unexpected or invalid format (for example, a TAL file without the line break between the repository url and public key), the following stack trace is displayed:

[user@localhost]# rpki_validator ARIN/ arin2.tal 
rpkiManifest registered. Its nid is 1061.
signedObject registered. Its nid is 1062.
Segmentation Fault. Stack trace:
  rpki_validator(print_stack_trace+0x1a) [0x40516a]
  rpki_validator() [0x405214]
  /lib64/libpthread.so.0(+0xf5d0) [0x7f1df80b95d0]
  rpki_validator(tal_load+0x294) [0x40b3f4]
  rpki_validator(main+0xd1) [0x404a61]
  /lib64/libc.so.6(__libc_start_main+0xf5) [0x7f1df7cff3d5]
  rpki_validator() [0x404add]
(Stack size was 7.)

TAL file "arin2.tal" content:

sync://rpki.arin.net/repository/arin-rpki-ta.cer
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA3lZPjbHvMRV5sDDqfLc/685th5FnreHMJjg8pEZUbG8Y8TQxSBsDebbsDpl3Ov3Cj1WtdrJ3CIfQODCPrrJdOBSrMATeUbPC+JlNf2SRP3UB+VJFgtTj0RN8cEYIuhBW5t6AxQbHhdNQH+A1F/OJdw0q9da2U29Lx85nfFxvnC1EpK9CbLJS4m37+RlpNbT1cba+b+loXpx0Qcb1C4UpJCGDy7uNf5w6/+l7RpATAHqqsX4qCtwwDYlbHzp2xk9owF3mkCxzl0HwncO+sEHHeaL3OjtwdIGrRGeHi2Mpt+mvWHhtQqVG+51MHTyg+nIjWFKKGx1Q9+KDx4wJStwveQIDAQAB

This issue also happens when the TAL file is empty.