diff options
-rw-r--r-- | module/plugins/crypter/ShSt.py | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/module/plugins/crypter/ShSt.py b/module/plugins/crypter/ShSt.py index c50a437db..f8733ac2b 100644 --- a/module/plugins/crypter/ShSt.py +++ b/module/plugins/crypter/ShSt.py @@ -1,14 +1,15 @@ # -*- coding: utf-8 -*- -from module.plugins.internal.Crypter import Crypter +from module.plugins.internal.SimpleCrypter import SimpleCrypter +import pycurl import re -class ShSt(Crypter): +class ShSt(SimpleCrypter): __name__ = "ShSt" __type__ = "crypter" - __version__ = "0.01" + __version__ = "0.02" __pattern__ = r'http://sh\.st/\w+' @@ -21,8 +22,9 @@ class ShSt(Crypter): def decrypt(self, pyfile): - package = pyfile.package() - package_name = package.name - package_folder = package.folder - html = self.load("http://deadlockers.com/submit.php", post = { "deadlock" : self.pyfile.url }, decode = True) - self.packages.append((package_name, [html], package_folder)) + # if we use curl as a user agent, we will get a straight redirect (no waiting!) + self.req.http.c.setopt(pycurl.USERAGENT, "curl/7.42.1") + # fetch the target URL + header = self.load(self.pyfile.url, just_header = True, decode = False) + target_url = header["location"] + self.urls.append(target_url) |