Example #1
0
    def test_by_meta(self):
        wappalyzer = self.get_wappalyzer({}, {
            'test1': {
                "meta": {
                    "generator": "uCore PHP Framework"
                },
            },
            'test2': {
                "meta": {
                    "generator2": "0"
                },
            }
        })
        resp = self._construct_response(
            html="<html><meta name='generator'  content='uCore PHP Framework'>"
        )
        result = wappalyzer.analyze(response=resp)
        self.assertIn('test1', result)
        self.assertNotIn('test2', result)

        resp = self._construct_response(
            html=
            "<html><meta property='generator'  content='uCore PHP Framework'>")
        result = wappalyzer.analyze(response=resp)
        self.assertIn('test1', result)
        self.assertNotIn('test2', result)

        resp = self._construct_response(
            html="<html><meta content='uCore PHP Framework' name='generator'>")
        result = wappalyzer.analyze(response=resp)
        self.assertIn('test1', result)
        self.assertNotIn('test2', result)
Example #2
0
    def test_by_headers(self):
        wappalyzer = self.get_wappalyzer({},
            {
                'test1': {
                    "headers": {"Server": "debut\\/?([\\d\\.]+)?\\;version:\\1"},
                }
            })
        resp = self._construct_response(headers={"Server": 'debut'})
        result = wappalyzer.analyze(response=resp)
        self.assertIn('test1', result)

        resp = self._construct_response(headers={"Server": 'debut/12'})
        result = wappalyzer.analyze(response=resp)
        self.assertIn('test1', result)
Example #3
0
    def test_by_headers(self):
        wappalyzer = self.get_wappalyzer({}, {
            'test1': {
                "headers": {
                    "Server": "debut\\/?([\\d\\.]+)?\\;version:\\1"
                },
            }
        })
        resp = self._construct_response(headers={"Server": 'debut'})
        result = wappalyzer.analyze(response=resp)
        self.assertIn('test1', result)

        resp = self._construct_response(headers={"Server": 'debut/12'})
        result = wappalyzer.analyze(response=resp)
        self.assertIn('test1', result)
Example #4
0
    def test_by_html_with_confidence(self):
        wappalyzer = self.get_wappalyzer(
            {},
            {'test1': {'html': 'body\d\\;confidence:70'}, 'test2': {'html': 'body\w'}})
        resp = self._construct_response(html='body123')

        result = wappalyzer.analyze(response=resp)

        self.assertIn('test1', result)
        self.assertEqual(70, result['test1'].get_confidence())
Example #5
0
    def test_by_url(self):
        wappalyzer = self.get_wappalyzer(
            {},
            {'test1': {'url': 'mysite\d.com'}, 'test2': {'url': 'hissite\d.com'},
             'test3': {'url': ['my', 'his']}})
        resp = self._construct_response(url='http://mysite2.com')

        result = wappalyzer.analyze(response=resp)

        self.assertIn('test1', result)
        self.assertIn('test3', result)
Example #6
0
    def test_by_scripts(self):
        wappalyzer = self.get_wappalyzer(
            {},
            {'jquery': {
            "script": ["jquery(?:\\-|\\.)([\\d.]*\\d)[^/]*\\.js\\;version:\\1",
                       "/([\\d.]+)/jquery(\\.min)?\\.js\\;version:\\1", "jquery.*\\.js"],
            }})
        resp = self._construct_response(
            html='<html><script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>')

        result = wappalyzer.analyze(response=resp)

        self.assertIn('jquery', result)
Example #7
0
    def test_by_html_with_confidence(self):
        wappalyzer = self.get_wappalyzer({}, {
            'test1': {
                'html': 'body\d\\;confidence:70'
            },
            'test2': {
                'html': 'body\w'
            }
        })
        resp = self._construct_response(html='body123')

        result = wappalyzer.analyze(response=resp)

        self.assertIn('test1', result)
        self.assertEqual(70, result['test1'].get_confidence())
Example #8
0
    def test_by_meta(self):
        wappalyzer = self.get_wappalyzer({},
            {
                'test1': {
                    "meta": {"generator": "uCore PHP Framework"},
                },
                'test2': {
                    "meta": {"generator2": "0"},
                }
            })
        resp = self._construct_response(html="<html><meta name='generator'  content='uCore PHP Framework'>")
        result = wappalyzer.analyze(response=resp)
        self.assertIn('test1', result)
        self.assertNotIn('test2', result)

        resp = self._construct_response(html="<html><meta property='generator'  content='uCore PHP Framework'>")
        result = wappalyzer.analyze(response=resp)
        self.assertIn('test1', result)
        self.assertNotIn('test2', result)

        resp = self._construct_response(html="<html><meta content='uCore PHP Framework' name='generator'>")
        result = wappalyzer.analyze(response=resp)
        self.assertIn('test1', result)
        self.assertNotIn('test2', result)
Example #9
0
    def test_by_url(self):
        wappalyzer = self.get_wappalyzer({}, {
            'test1': {
                'url': 'mysite\d.com'
            },
            'test2': {
                'url': 'hissite\d.com'
            },
            'test3': {
                'url': ['my', 'his']
            }
        })
        resp = self._construct_response(url='http://mysite2.com')

        result = wappalyzer.analyze(response=resp)

        self.assertIn('test1', result)
        self.assertIn('test3', result)
Example #10
0
    def test_by_scripts(self):
        wappalyzer = self.get_wappalyzer({}, {
            'jquery': {
                "script": [
                    "jquery(?:\\-|\\.)([\\d.]*\\d)[^/]*\\.js\\;version:\\1",
                    "/([\\d.]+)/jquery(\\.min)?\\.js\\;version:\\1",
                    "jquery.*\\.js"
                ],
            }
        })
        resp = self._construct_response(
            html=
            '<html><script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>'
        )

        result = wappalyzer.analyze(response=resp)

        self.assertIn('jquery', result)