CybrZone / phishkiller

The Unlicense
73 stars 36 forks source link

Changing Ip every 5s with a python lib named tornet #27

Closed PanosoikoGr closed 11 hours ago

PanosoikoGr commented 5 days ago

I am not 100% sure this code works as I cant really test it somewhere, If someone has a website I can run it and test it provide a url.

PanosoikoGr commented 5 days ago

Code tested 99% sure the ip change work, for further testing I need to setup a more complicated server to attack and see the resasult, maybe the next step will be making it so each request has it own ip so all of them look that they are comming from a different place.(The prolem is that it will limit the speed of the POST to 1HZ as from what I can see the tornet lib doesnt support faster ip change)

asheshjyotii commented 4 days ago

Code tested 99% sure the ip change work, for further testing I need to setup a more complicated server to attack and see the resasult, maybe the next step will be making it so each request has it own ip so all of them look that they are comming from a different place.(The prolem is that it will limit the speed of the POST to 1HZ as from what I can see the tornet lib doesnt support faster ip change)

@PanosoikoGr Can you write the ip changing code in a separate file and call it like a module inside the main file? I'm building a cli tool like interface on this (you can check issue #26) I'm trying to integrate it with a api from where users would be able to fetch latest links tagged as "phishing/malicious" publically! The problem is the website blocks the ip on subsequent request and might be creates a cooldown timer for that ip. If your ip toggler works, this will work flawlessly!

B1GBOOM420 commented 4 days ago

I really like this idea - unfortunately, i got off work late AF tonight and wont have time to test it - but hopefully tomorrow I can try it out - If anyone gets a chance to test is please let me know :)

great idea @PanosoikoGr

PanosoikoGr commented 4 days ago

@asheshjyotii I made a separate python script that handles the proxy code I don't know if it's necessary to do it this way but ok! And @B1GBOOM420 I will try to test it again myself, but when I setup an http server and I try to run the script I get 2000 lines of errors. (I have added a 1 second delay to the POST and made the tornet change ip every one sec)

PanosoikoGr commented 4 days ago

@B1GBOOM420 With the new script you can import it to your code and just use the session created for the POST

PanosoikoGr commented 4 days ago

The next step will be to add another mode that will send POST requests in a more "normal" manner, with credentials, albeit at a slower rate and with zero defenses against detection. The current mode sends one POST per IP, allowing the phishing website to filter them since they arrive approximately every second. This filtering allows the attacker to estimate which POST requests come from real users.

Therefore, the new mode will introduce a more realistic posting pattern. Each POST request will occur at random intervals, mimicking human behavior more closely. These intervals will vary between 1 second and 2 minutes, and each request will appear to come from a different IP address. This approach allows the script to operate continuously, potentially overwhelming the phishing website's ability to distinguish legitimate users from automated scripts. By doing so, all POST requests will appear to originate from genuine users rather than automated processes, thereby disrupting the phishing website's operations effectively.

asheshjyotii commented 4 days ago

Nice @PanosoikoGr I will try this!

PanosoikoGr commented 4 days ago

3 Option is done, It allows you to send POST in a realistic manner that will confuse witch data is froma real person and witch is from a bot(It sends a POST with different ip every 5sec to 2m, I wanted for the IP to change only when there is a post needed to be send but its hard managing the session just before the POST needs to be send maybe I will try later to do that)

PanosoikoGr commented 4 days ago

Credis for the idea to give you proxy and tornet choise of attack from #29. Now i think it good time to run some tests and if everything works we can merge the code that @B1GBOOM420! Again I still havent found a good way to test it...

asheshjyotii commented 3 days ago

Screenshot_2024-07-05-01-06-53-001_com.replit.app.png

Please refer to #26

PanosoikoGr commented 3 days ago

@asheshjyotii when your code merge I will implement it with my code and with @B1GBOOM420 codes so I can push the proxy and tornet features! @CybrZone

PanosoikoGr commented 2 days ago

Just added the API that gets proxies that @B1GBOOM420 coded. Everything runs but I am having problems with the proxy option it doesnt run the send_posts for some reason, or the message I want to print with this infor "Email: {email}, Password: {password}, Status Code: {response.status_code}, User-Agent: {user_agent}, IP: {current_ip}" doesnt show up. If anyone can help it would be appreciated. 

PanosoikoGr commented 2 days ago

I made them work but now i get this Error sending post with proxy {'http': 'http://155.94.241.131:3128', 'https': 'http://155.94.241.131:3128'}: HTTPSConnectionPool(host='', port=): Max retries exceeded with url: (Caused by ProxyError('Cannot connect to proxy.', RemoteDisconnected('Remote end closed connection without response'))) OR this one Error sending post with proxy {'http': 'http://155.94.241.131:3128', 'https': 'http://155.94.241.131:3128'}: HTTPSConnectionPool(host='', port=): Max retries exceeded with url: (Caused by ProxyError('Cannot connect to proxy.', OSError('Tunnel connection failed: 400 Bad Request')))