| タイトル | Pavel OdintsovのFastNetMonにおける複数の脆弱性 |
|---|---|
| 概要 | FastNetMon Community Edition バージョン1.2.9までには、BGPのAS_PATH属性エンコーダに整数オーバーフローの脆弱性があります。src/bgp_protocol.hppのIPv4UnicastAnnounce::get_attributes()関数では、attribute_lengthを「sizeof(bgp_as_path_segment_element_t) + this-as_path_asns.size() * sizeof(uint32_t)」として計算し、それをuint8_t型のフィールドに格納しています(600〜605行目)。しかし、uint8_tは0から255までの値しか保持できないため、63以上のASNsを含むAS_PATH(2 + 64*4 = 258 255)では値が静かに切り捨てられます。切り捨てられた長さはバッファサイズの決定に使用されますが、実際に書き込まれるデータは切り捨て前の全量であり、その結果ヒープバッファオーバーフローが発生します。同様に、621行目のpath_segment_lengthフィールドもuint8_t型であるため、255を超えるASNが存在すると切り捨てが発生します。 |
| 想定される影響 | ・当該ソフトウェアが扱う全ての情報が外部に漏れる可能性があります。 ・当該ソフトウェアが扱う全ての情報が書き換えられる可能性があります。 ・当該ソフトウェアが完全に停止する可能性があります。 |
| 対策 | ベンダ情報を参照して適切な対策を実施してください。 |
| 公表日 | 2026年5月26日0:00 |
| 登録日 | 2026年5月29日11:16 |
| 最終更新日 | 2026年5月29日11:16 |
| CVSS3.0 : 緊急 | |
| スコア | 9.8 |
|---|---|
| ベクター | CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| No | 変更内容 | 変更日 |
|---|---|---|
| 1 | [2026年05月29日] 掲載 |
2026年5月29日11:16 |
| 概要 | FastNetMon Community Edition through 1.2.9 contains an integer overflow in the BGP AS_PATH attribute encoder. In src/bgp_protocol.hpp, the IPv4UnicastAnnounce::get_attributes() function computes attribute_length as 'sizeof(bgp_as_path_segment_element_t) + this->as_path_asns.size() * sizeof(uint32_t)' and stores it in a uint8_t field (line 600-605). Since uint8_t can only hold values 0-255, an AS_PATH containing more than 63 ASNs (2 + 64*4 = 258 > 255) causes silent truncation. The truncated length is used for buffer sizing, while the actual data written is the full untruncated amount, resulting in a heap buffer overflow. Similarly, the path_segment_length field at line 621 is also uint8_t, truncating with more than 255 ASNs. |
|---|---|
| 公表日 | 2026年5月27日2:16 |
| 登録日 | 2026年5月27日4:08 |
| 最終更新日 | 2026年5月28日0:29 |
| 構成1 | 以上 | 以下 | より上 | 未満 | |
| cpe:2.3:a:pavel-odintsov:fastnetmon:*:*:*:*:community:*:*:* | 1.2.9 | ||||