Skip to content

Commit

Permalink
Merge 1cf69c4 into 641afb3
Browse files Browse the repository at this point in the history
  • Loading branch information
bajubullet committed Oct 4, 2019
2 parents 641afb3 + 1cf69c4 commit 43727a8
Show file tree
Hide file tree
Showing 3 changed files with 39 additions and 2 deletions.
6 changes: 4 additions & 2 deletions pastepwn/analyzers/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
from .ibananalyzer import IBANAnalyzer
from .dbconnstringanalyzer import DBConnAnalyzer
from .privatekeyanalyzer import PrivateKeyAnalyzer
from .emailpasswordpairanalyzer import EmailPasswordPairAnalyzer

__all__ = (
'AlwaysTrueAnalyzer',
Expand All @@ -29,6 +30,7 @@
'URLAnalyzer',
'WordAnalyzer',
'IBANAnalyzer',
'DBConnAnalyzer'
'PrivateKeyAnalyzer'
'DBConnAnalyzer',
'PrivateKeyAnalyzer',
'EmailPasswordPairAnalyzer',
)
12 changes: 12 additions & 0 deletions pastepwn/analyzers/emailpasswordpairanalyzer.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# -*- coding: utf-8 -*-
from .regexanalyzer import RegexAnalyzer

_EMAIL_PASSWORD_REGEX = r'[\w\.\+_-]+@[\w\._-]+\.[a-zA-Z]*\:[\w\.\+\!\$\#\^&\*\(\)\{\}\[\]\_\-\@\%\=]+$'


class EmailPasswordPairAnalyzer(RegexAnalyzer):
"""Analyzer to match username:password pairs"""
name = "EmailPasswordPairAnalyzer"

def __init__(self, actions):
super().__init__(actions, _EMAIL_PASSWORD_REGEX)
23 changes: 23 additions & 0 deletions pastepwn/analyzers/tests/emailpasswordpairanalyzer_test.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# -*- coding: utf-8 -*-
import unittest
from unittest import mock

from pastepwn.analyzers.emailpasswordpairanalyzer import EmailPasswordPairAnalyzer


class TestWordAnalyzer(unittest.TestCase):
def setUp(self):
self.obj = mock.Mock()

def test_match(self):
analyzer = EmailPasswordPairAnalyzer(None)
self.obj.body = "This is a Test"
self.assertFalse(analyzer.match(self.obj))

analyzer = EmailPasswordPairAnalyzer(None)
self.obj.body = "estocanam2@gmail.com:Firebird1@"
self.assertTrue(analyzer.match(self.obj))


if __name__ == '__main__':
unittest.main()

0 comments on commit 43727a8

Please sign in to comment.