Is there any source that states explicitly that the יִסּוּרִין, suffering, that a person goes through serves as a כַּפָּרָה, atonement?
The Ramchal discusses this in Derech Hashem, part 2, chapter 2, where he writes that suffering allows to purify a mostly righteous person and get him ready for the World to Come
God gave suffering the power to dispel the insensitivity in man, allowing him to become pure and clear, prepared for the ultimate good at its appointed time. The amount of suffering (issurim) needed to purify the individual would then depend on the amount of insensitivity that he has acquired as a result of his deeds.
(translation R Aryeh Kaplan, p. 101)
Similarly in Daat Tevunot, ch. 3, part 4 (p. 121 in the Feldheim edition)
God only wants His creations to be perfected and does not completely reject the wicked; on the contrary, He purifies them through the fire of suffering so that they will emerge cleansed of all their dross.
The Rambam as well mentions (MT Hilchot Tshuva 1:4), based on the gemara in Yoma 86a, that repentance and suffering give atonement for certain classes of sins
If a person violates [sins punishable by] karet or execution by the court and repents, Teshuvah and Yom Kippur have a tentative effect and the sufferings which come upon him complete the atonement. He will never achieve complete atonement until he endures suffering for concerning these [sins, Psalms 89:33] states: "I will punish their transgression with a rod."
וְהַיְינוּ דְּרַבִּי שִׁמְעוֹן בֶּן לָקִישׁ, דְּאָמַר רַבִּי שִׁמְעוֹן בֶּן לָקִישׁ: נֶאֱמַר ״בְּרִית״ בְּמֶלַח, וְנֶאֱמַר ״בְּרִית״ בְּיִסּוּרִין, נֶאֱמַר ״בְּרִית״ בְּמֶלַח, דִּכְתִיב: ״וְלֹא תַשְׁבִּית מֶלַח בְּרִית״ וְנֶאֱמַר ״בְּרִית״ בְּיִסּוּרִין, דִּכְתִיב: ״אֵלֶּה דִבְרֵי הַבְּרִית״, מַה ״בְּרִית״ הָאָמוּר בְּמֶלַח — מֶלַח מְמַתֶּקֶת אֶת הַבָּשָׂר, אַף ״בְּרִית״ הָאָמוּר בְּיִסּוּרִין — יִסּוּרִין מְמָרְקִין כׇּל עֲוֹנוֹתָיו שֶׁל אָדָם.
And that is the statement of Rabbi Shimon ben Lakish, as Rabbi Shimon ben Lakish said: The word covenant is used with regard to salt, and the word covenant is used with regard to afflictions. The word covenant is used with regard to salt, as it is written: “The salt of the covenant with your God should not be excluded from your meal-offering; with all your sacrifices you must offer salt” (Leviticus 2:13). And the word covenant is used with regard to afflictions, as it is written: “These are the words of the covenant” (Deuteronomy 28:69). Just as, in the covenant mentioned with regard to salt, the salt sweetens the taste of the meat and renders it edible, so too in the covenant mentioned with regard to suffering, the suffering cleanses a person’s transgressions, purifying him for a more sublime existence.
Refer to the Sifrei in Devarim 32 where it writes:
ועוד, יהא אדם שמח בייסורים יותר מן הטובה, שאלו אדם בטובה כל ימיו - אין נמחל לו עון שבידו. ובמה נמחל לו? ביסורים נמחל לו!
And, what is more, one should rejoice more in affliction than in good. For if one lived in (the midst of) good all of his life, his transgression is not forgiven (thereby). And by what is it forgiven? By affliction. (sefaria translation)
In similar vein, the Mechilta on Parshas Yisro, 10 writes:
ועוד שיהא שמח אדם ביסורין יותר מהטובה שאפילו אדם בטובה כל ימיו אינו נמחל לו העבירות שבידו ומי מוחל לו העבירות הוי אומר היסורין
And furthermore, a person should be happy with suffering more than with good, since a man who has good all his life, his sins are not forgiven. And how does his sins get forgiven? It is through the suffering.