Met Zuid-Korea –20 nam Kim in 2007 deel aan het wereldkampioenschap onder 20. Hij speelde mee in alle groepswedstrijden. Kim maakte op 30 mei 2012 zijn debuut in het Zuid-Koreaans voetbalelftal in een oefeninterland tegen toenmalig regerend wereldkampioen Spanje (4–1 verlies). Hij speelde de volledige wedstrijd. Zijn tweede interland volgde in september 2014, toen een vriendschappelijke wedstrijd met 3–1 van Venezuela gewonnen werd. Kim nam met Zuid-Korea deel aan het Aziatisch kampioenschap van 2015, waarin hij in de derde groepswedstrijd tegen Australië een aanzienlijk aandeel had in de 1–0 overwinning en bijgevolg verzekering van de eerste plaats in groep A. Zo weerhield hij de Australiër Robbie Kruse drie minuten voor tijd van scoren, terwijl die zich één op één met Kim bevond. Kim kwam eveneens uit op de WK-eindronde 2018 in Rusland, waar de selectie onder leiding van bondocach Shin Tae-yong in de groepsfase werd uitgeschakeld. De ploeg verloor van achtereenvolgens Zweden (0-1) en Mexico (1-2), maar won in het afsluitende groepsduel verrassend met 2-0 van titelverdediger Duitsland, waardoor "Die Mannschaft" eveneens de koffers kon pakken. Kim kwam niet in actie tijdens het toernooi.