The 27-year-old has been a free agent since his release by Slavia Sofia last year.
"This move has made me very happy because it's my first move to a club outside of Bulgaria and I hope with the help of the lads we can achieve great things this season," the defender told the club's official website.
"My first impressions of the club are really positive. I believe I have come to a great place to play for a very good team which over the last few years has been one of the top teams in Scotland."
Krachunov will not be able to make his debut until he receives international clearance.