)]}'
{
  "commit": "c1bc2fffcb14f580c4d365ae9660fa149ec1dba5",
  "tree": "25e2482622ab78be173f8d5e9b6ca7ef6b6281ab",
  "parents": [
    "fe6029a9018698a0533b8b978038c4654216ec90"
  ],
  "author": {
    "name": "Nicola Murino",
    "email": "nicola.murino@gmail.com",
    "time": "Sun Jul 12 13:21:49 2026"
  },
  "committer": {
    "name": "Nicola Murino",
    "email": "nicola.murino@gmail.com",
    "time": "Sun Jul 12 13:21:49 2026"
  },
  "message": "fix: bound extended-count pre-allocation in unmarshalFileStat\n\nThe SSH_FILEXFER_ATTRS decoder allocated the extended-attribute slice\ndirectly from the wire-supplied extended_count.\n\nThis is reachable server-side post-authentication via Request.Attributes()\nand the SETSTAT/FSETSTAT/OPEN paths, and client-side from a malicious\nserver via Stat/Lstat/Fstat/Open/ReadDir attribute parsing.\n\nBound the pre-allocation to the number of entries that can fit in the\nremaining bytes (each entry is two length-prefixed strings, i.e. at least\n8 bytes) and grow the slice with append.\n\nCo-authored-by: Michael Bommarito \u003cmichael.bommarito@gmail.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "b5272e66134a46c0bcebe1c010eea5f79c0d5911",
      "old_mode": 33188,
      "old_path": "packet.go",
      "new_id": "747128257db661e83a40e6c31afb2febdb222639",
      "new_mode": 33188,
      "new_path": "packet.go"
    },
    {
      "type": "modify",
      "old_id": "91c5298a05ac3a37770a9957efd261f0e8d8d83c",
      "old_mode": 33188,
      "old_path": "packet_test.go",
      "new_id": "d77b848acbfe9196185b094678b0c02977b3a6ca",
      "new_mode": 33188,
      "new_path": "packet_test.go"
    }
  ]
}
