The top-seed triumphed 6-4 6-0 against the Slovakian, who initially made the American work hard in their last-eight match in Florianopolis.
Neither player was particularly on form on serve during a tight first set, with a total of 14 break points shared between the pair.
Williams faced eight of those but managed to save six while breaking fifth seed Rybarikova three times, crucially so at 5-4, before going on to claim the opener.
The second set was a different story though as Williams found her rhythm and roared away to seal victory in an hour and 25 minutes.
The world number 20, who is playing her first tournament since the third round of January's Australian Open, now meets Olga Puchkova for a place in the final in Brazil.
Russian Puchkova downed another Slovakian Jana Cepelova 6-1 6-1 to retain her interest in the competition.
In the other half of the draw, Romania's Monica Niculescu will play seventh seed Kristina Mladenovic in the final four after respective wins over Timea Babos and Melinda Czink, both of Hungary.
In Acapulco, top seed Sara Errani had little trouble in ousting fifth seed Kiki Bertens.
The Italian, defending champion in the tournament, triumphed 6-4 6-4.
Brasil Cup results
1-Venus Williams (U.S.) beat 5-Magdalena Rybarikova (Slovakia) 6-4 6-0
Olga Puchkova (Russia) beat Jana Cepelova (Slovakia) 6-1 6-1
Monica Niculescu (Romania) beat Timea Babos (Hungary) 6-3 6-2
7-Kristina Mladenovic (France) beat Melinda Czink (Hungary) 6-4 6-3
Acapulco International results
1-Sara Errani (Italy) beat 5-Kiki Bertens (Netherlands) 6-4 6-4
Alize Cornet (France) beat 7-Lourdes Dominguez Lino (Spain) 3-6 7-6(10) 7-6(2)
Silvia Soler Espinosa (Spain) beat Karin Knapp (Italy) 6-2 6-2
2-Carla Suarez Navarro (Spain) beat 6-Francesca Schiavone (Italy) 6-7(5) 6-4 6-2
Malaysian Open results
Karolina Pliskova (Czech Republic) beat Patricia Mayr-Achleitner (Austria) 7-5 6-1
4-Ayumi Morita (Japan) beat Luksika Kumkhum (Thailand) 6-7(7) 6-4 6-1
Bethanie Mattek-Sands (U.S.) beat 2-Hsieh Su-Wei (Taiwan) 7-5 6-2
3-Anastasia Pavlyuchenkova (Russia) beat Ashleigh Barty (Australia) 6-2 6-0
2-Hsieh Su-Wei (Taiwan) beat Zhang Shuai (China) 6-2 6-2
Patricia Mayr-Achleitner (Austria) beat Wang Qiang (China) 6-3 6-2
3-Anastasia Pavlyuchenkova (Russia) beat Akgul Amanmuradova (Uzbekistan) 6-3 6-3
Ashleigh Barty (Australia) beat Zarina Diyas (Kazakhstan) 7-6(3) 6-4
Luksika Kumkhum (Thailand) beat 7-Eleni Daniilidou (Greece) 6-2 6-4
Karolina Pliskova (Czech Republic) beat 5-Misaki Doi (Japan) 6-4 7-6(7)
Bethanie Mattek-Sands (U.S.) beat Duan Yingying (China) 6-1 6-4
4-Ayumi Morita (Japan) beat Nudnida Luangnam (Thailand) 6-3 6-1
2-Hsieh Su-Wei (Taiwan) beat Kurumi Nara (Japan) 6-7(5) 6-3 6-4