Reporters from German broadcasters NDR and WDR found several G3 assault rifles and a P1 pistol, all engraved with the initials 'Bw' for Bundeswehr - Germany's military - in the northern Iraqi cities of Erbil and Sulaymaniyah.
The weapons apparently came from stocks, which the German government delivered to the Kurdish autonomous government in northern Iraq. The weapons were intended to be used in the fight against the "Islamic State" ("IS").
Several members of Germany's Green and Left parties have long raised concerns in parliament that arms delivered to peshmerga fighters could fall into the wrong hands.
According to investigations by NDR and WDR, peshmerga fighters sold their weapons after not being paid for several months due to Iraq's difficult economic situation.
The governor of Kirkuk province, Najmeddin Karim, confirmed the claims, telling the two German broadcasters that the Kurdish government is short of funds to regularly pay civil servants - including peshmerga fighters.
No means to track arms
According to the report on Thursday, the German Defense Ministry said the government of Iraq's Kurdistan region was responsible for the weapons, adding that they had "committed themselves to the correct verification of the delivered arms" and to using the supplies in accordance with international law.
Tracking individual weapons by German forces was neither intended nor possible.