def test_extractCreditCardsFromText_should_return_a_list(self):
        invalid_types = [None, "", list(), dict()]
        for invalid_type in invalid_types:
            with self.subTest(invalid_type=invalid_type):
                cards = SpiderFootHelpers.extractCreditCardsFromText(
                    invalid_type)
                self.assertIsInstance(cards, list)

        cards = SpiderFootHelpers.extractCreditCardsFromText(
            "spiderfoot4111 1111 1111 1111spiderfoot")
        self.assertIsInstance(cards, list)
        self.assertEqual(["4111111111111111"], cards)
Ejemplo n.º 2
0
    def handleEvent(self, event):
        eventName = event.eventType
        srcModuleName = event.module
        eventData = event.data

        self.debug(f"Received event, {eventName}, from {srcModuleName}")

        creditCards = SpiderFootHelpers.extractCreditCardsFromText(eventData)

        for creditCard in set(creditCards):
            self.info(f"Found credit card number: {creditCard}")
            evt = SpiderFootEvent("CREDIT_CARD_NUMBER", creditCard,
                                  self.__name__, event)
            if event.moduleDataSource:
                evt.moduleDataSource = event.moduleDataSource
            else:
                evt.moduleDataSource = "Unknown"
            self.notifyListeners(evt)