| 제목 | PX4 PX4-Autopilot main and v1.15.4 Race Condition in File Access |
|---|
| 설명 | The issue stems from unsynchronized access to the _mavlink_shell pointer shared between:
MavlinkReceiver::handle_message_serial_control() — which may call get_shell() and close_shell(), and
Mavlink::task_main() — which periodically checks _mavlink_shell->available() to send serial output back via MAVLink.
When one thread deletes the _mavlink_shell instance via close_shell() (on receiving a SERIAL_CONTROL without the RESPOND flag), the other thread may still dereference the freed pointer during its polling loop.
This results in a classic use-after-free triggered under specific timing conditions. |
|---|
| 원천 | ⚠️ https://github.com/PX4/PX4-Autopilot/pull/25082 |
|---|
| 사용자 | 0x20z (UID 81279) |
|---|
| 제출 | 2025. 07. 29. AM 11:59 (1 년도 ago) |
|---|
| 모더레이션 | 2025. 08. 14. AM 08:01 (16 days later) |
|---|
| 상태 | 수락 |
|---|
| VulDB 항목 | 320081 [PX4 PX4-Autopilot 까지 1.15.4 Mavlink Shell Closing mavlink_receiver.cpp handle_message_serial_control _mavlink_shell 메모리 손상] |
|---|
| 포인트들 | 20 |
|---|