Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tracking target user IPs via jinja tag #414

Open
Script-Nomad opened this issue Nov 20, 2019 · 3 comments
Open

Tracking target user IPs via jinja tag #414

Script-Nomad opened this issue Nov 20, 2019 · 3 comments
Assignees
Labels
feature request Requests for new functionality pinned Do not mark as stale server Relating to the server component

Comments

@Script-Nomad
Copy link
Contributor

Feature Description

It would be useful to include the IP addresses of visiting users in a jinja tag so that conditionals could be made against them. Conditionals based on the first-seen IP address could ensure that a visitor's IP does not change between visits, which might indicate either a separate device or in a more unfortunate scenario, a phishing report service. I had an incident where a phish got reported by a user, which caused dozens of report service to hammer the KP server, blacklisted our domain and IP address on multiple search engines and spam report services.

Example Use Case

The following demonstrates a jinja tag in use that causes the client to be redirected to the Google search page if their most recent visit IP does not match the first IP.

{% if client.visit_ip[-1] != client.visit_ip[0] %}
{{ make_redirect_page('https://www.google.com/', title='Loading Page...') }}
{% else %}
original page content here
{% endif %}
@zeroSteiner zeroSteiner self-assigned this Nov 20, 2019
@zeroSteiner zeroSteiner added feature request Requests for new functionality server Relating to the server component labels Nov 20, 2019
@zeroSteiner
Copy link
Collaborator

I like it. I think I'll end up changing it to be client.visits where it's then an array of visit objects. That would change the first line to client.visits[-1].ip != client.visits[0].ip. While I'm at it, I'll do the same for credentials.

Same thing should probably be done for campaign.visits and campaign.credentials.

@Script-Nomad
Copy link
Contributor Author

That would be awesome. Exposing the credentials as a jinja tag would make it possible to do some other interesting phishes like "Forget your password?" pretexts and throwing an error like You already used this password. similar to password history restrictions.

Looking forward to this. 🎉

@stale
Copy link

stale bot commented Dec 12, 2019

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the stale label Dec 12, 2019
@zeroSteiner zeroSteiner added the pinned Do not mark as stale label Dec 12, 2019
@stale stale bot removed the stale label Dec 12, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature request Requests for new functionality pinned Do not mark as stale server Relating to the server component
Projects
None yet
Development

No branches or pull requests

2 participants