Sobolev coolly directed his penalty into the left corner in the 84th minute, sending Bulgarian goalkeeper Georgi Georgiev the wrong way.
Captain Artem Dzyuba, on the brink of becoming Russia's all-time top scorer, was substituted for Sobolev in the 58th minute to generate some attacking pace.
Russia dominated possession but their tepid attack struggled to break down Bulgaria's back line. Russia missed a chance to open the scoring in the 73rd minute when defender Yuri Zhirkov's effort was tipped away by a diving Georgiev.
Russia take on Belgium, the world's top-ranked team, on home turf in St. Petersburg in their opening Euro 2020 match on June 12. They will also face Denmark and surprise qualifiers Finland in Group B.