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)
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)
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)
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())
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)
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)
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())
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)
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)
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)