We present a simultaneous localization and mapping (SLAM) algorithm that is based on radio signals and the association of specular multipath components (MPCs) with geometric features. Especially in indoor scenarios, robust localization from radio signals is challenging due to diffuse multipath propagation, unknown MPC-feature association, and limited visibility of features. In our approach, specular reflections at flat surfaces are described in terms of virtual anchors (VAs) that are mirror images of the physical anchors (PAs). The positions of these VAs and possibly also of the PAs are unknown. We develop a Bayesian model of the SLAM problem including the unknown MPC-VA/PA association. We represent this model by a factor graph, which enables the use of the belief propagation (BP) scheme for efficient marginalization of the joint posterior distribution. The resulting BP-based SLAM algorithm detects the VAs associated with the PAs and estimates jointly the time-varying position of the mobile agent and the positions of the VAs and possibly also of the PAs, thereby leveraging the MPCs in the radio signal for improved accuracy and robustness of agent localization. A core aspect of the algorithm is BP-based probabilistic MPC-VA/PA association. Moreover, for improved initialization of new VA positions, the states of unobserved potential VAs are modeled as a random finite set and propagated in time by means of a "zero-measurement" probability hypothesis density filter. The proposed BP-based SLAM algorithm has a low computational complexity and scales well in all relevant system parameters. Experimental results using both synthetically generated measurements and real ultra-wideband radio signals demonstrate the excellent performance of the algorithm in challenging indoor environments.