First of all, what do we need to clone a GSM SIM card? We need to extract the private key, Ki, from the SIM card and then use it to fake/forge a new one with the same number and subscriber ID.
Here's why it's difficult to satisfyingly answer your question: GSM uses a cryptographic suite called COMP128. The biggest problem with COMP128 is that it's a collection of proprietary algorithms; they all are kept a secret. In other words, we cannot really know for sure if they have known vulnerabilities or not as it's difficult to study them. But here's something we know for sure: Because they're kept a secret, it's more likely for them to have vulnerabilities.
The first generation of COMP128 is called COMP128-1, and we know for a fact that it's completely broken. With the technology of 1998 COMP128-1 took little more than 8 hours. Fortunately, pretty much after 2000-2001, many GSM providers started switching from the first generation to the second generation; COMP128-2, which is far better than the old one.
Although a lot better, COMP128-2 inherits some of the old generation's problems, namely a vulnerability that significantly shrinks the key search space making it a bit easier to extract. The 3rd generation of the algorithm is called COMP128-3, which supposed to be highly secure. But, of course, we cannot know for sure how secure it is or which service providers use it.
Bottom line is: Currently, it's safe to say that all GSM providers use at least COMP128-2. There are currently no known feasible attacks to extract the COMP128-2 key and clone the SIM card.