Rubin's Blagoy Georgiev had an early chance to open the scoring for the home side, but his effort in the box soared over the bar.
The Russian outfit did not look like a side that were bottom of the group as they put together some decent passing across the pitch.
Ruslan Kambolov tried to reward Rubin for their domination by leaping in the air to connect to a set piece, but his header just grazed over the crossbar.
At the other end, Edimilson Fernandes unleashed a shot from distance, but the goalkeeper was able to stop the ball from hitting the bottom left corner of the net.
The drama came 10 minutes before the half-time whistle as Birama Ndoye was sent off for a second yellow card, putting Sion at a disadvantage.
Rubin made the most of having an extra man as they came out firing at the start of the second half, with Vladimir Dyadyun having two good chances to break the deadlock, but both were stopped by the keeper.
Carlos Eduardo also had a shot blocked, but the breakthrough was eventually made when Georgiev unleashed a powerful shot from distance, which hit the back of the net after a slight nick off an opposing player.
The Russian team now move up to third in Group B, one point behind Liverpool and two adrift of Sion.