abbot's People
Forkers
ramblingjordan sethrice steph-query elementalcollision reilnuud idunnowhat2do agunforhire achungerford erikedlund copyleftdev nicholastaylor birdaw seankilleen jpaulduncan andria-dev alicialynnlee kkysen ticet11 jacobmovingfwd span1012 dcbark01 chronohart djmulcahy hamratz zh0uenlai alexworland alexgurrola stringist zwubbena hamzsait thelandfill cuchulainx a-voleur emilygracekz santaanna2021 rootwork digital-black sesyi daliboy lotusdeath69 cclauss aetriusgx rr1630 jayscott-jpg antarjaala magicknight platform6 entropyworks clairelist ganderzz blake-ed-hughes josefmama romulus968 bigdatasciencegroup meltingscales nck-sabbot's Issues
Moving beyond this one form
With the potential of the site being rehosted/changed and other similar sites popping up, should we start focusing on ways to make this project more extensible?
Better "data" generation?
List of a few hundred actual OBGYN first names from the Texas Medical Association (alphabetical order, duplicates removed)
fns.csv
List of a few hundred actual OBGYN last names from the Texas Medical Association (alphabetical order, duplicates removed)
lns.csv
List of all non PO Box zip codes, city names, and counties in Texas
TX_Zips.csv
Python script for generating "doctor names"
with open('fns.csv') as fns:
reader2 = csv.reader(fns)
chosen_first=random.choice(list(fns))
with open('lns.csv') as lns:
reader3=csv.reader(lns)
chosen_last=random.choice(list(lns))
nameFormat = ['FL','DL','L,F','L', 'DLF']
nF = random.choice(nameFormat)
if nF == 'FL':
dr = " ".join([chosen_first,chosen_last])
elif nF == 'DL':
dr = " ".join(["Dr.",chosen_last])
elif nF == 'L,F':
dr = ", ".join([chosen_last,chosen_first])
elif nF == 'L':
dr = chosen_last
elif nf == 'DLF':
dr = " ".join(["Dr.",chosen_first,chosen_last])
Python script for picking geographic location
with open('TX_Zips.csv') as zf:
reader = csv.reader(zf)
chosen_row=random.choice(list(reader))
stateNames = ['TX','Texas','TEXAS','texas','tx','Tx']
st = random.choice(stateNames)
Not just GOP members
There were also two Democrats that voted for the bill: Ryan Guillen and Eddie Lucio Jr., so they should also be added to https://github.com/SeanDaBlack/AbBOT/blob/main/bot/data.py
Discord Server for Development
It would be nice to chat while we work on this!
Created a discord server please feel free to join.
@SeanDaBlack Please let me know when/if you join and your username and I will give you ownership.
Bypass the front-end?
Leaving for someone smarter than me, I'm not available right now.
Can't we bypass the front end and just make post calls directly to the form? Pretty sure it can be done a lot faster this way.
something like this (some quick copy/pastes):
import requests
url = 'https://prolifewhistleblower.com/wp-admin/admin-ajax.php'
myobj = {'somekey': 'somevalue'}
x = requests.post(url, data = myobj)
print(x.text)
POST / HTTPS/2.0
Host: https://prolifewhistleblower.com/wp-admin/admin-ajax.php
Content-Type: application/x-www-form-urlencoded
Content-Length: 13
Accept: */*
Accept-Encoding: gzip, deflate, br
Connection: keep-alive
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryBfSESmlOiCYwo4Oq
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.159 Safari/537.36
------WebKitFormBoundaryBfSESmlOiCYwo4Oq
Content-Disposition: form-data; name="textarea-1"
test
------WebKitFormBoundaryBfSESmlOiCYwo4Oq
Content-Disposition: form-data; name="text-1"
test
------WebKitFormBoundaryBfSESmlOiCYwo4Oq
Content-Disposition: form-data; name="text-6"
test
------WebKitFormBoundaryBfSESmlOiCYwo4Oq
Content-Disposition: form-data; name="text-2"
test
------WebKitFormBoundaryBfSESmlOiCYwo4Oq
Content-Disposition: form-data; name="text-3"
test
------WebKitFormBoundaryBfSESmlOiCYwo4Oq
Content-Disposition: form-data; name="text-4"
test
------WebKitFormBoundaryBfSESmlOiCYwo4Oq
Content-Disposition: form-data; name="text-5"
test
------WebKitFormBoundaryBfSESmlOiCYwo4Oq
Content-Disposition: form-data; name="checkbox-1[]"
no
------WebKitFormBoundaryBfSESmlOiCYwo4Oq
Content-Disposition: form-data; name="g-recaptcha-response"
03AGdBq25mBrjaNVz36yhqcO9OcG4Bz8eudySKVmEsF1kb_EEwwsL-3eYGIFTiVwOWtb5lNkeVDVh9h06amhoKfuQE_yxGlBNoyJMQ1suCroTCh9pIEDDOExyxxiv9mYst7F9wshD1LjAEfYyCFT9GtQfAbf-TVREQo7A_XsDIyAONrG73DC7ge4xS4Lz1hKeLe5oEvkdAi3f8CvH7FoQ9R7-zuxbojqbqMDUVjf2l19J6UxD-t3mgCm58VhLk7mllEC5rgvXD_R7aoHxxrMIWtZfLYfPKmvS25iFJk5ENc8ZfxP8f7sNqY4xjcOgTrSVb70Up5j6uUzlLiCB8tJ9U5SVpioUmMhdfxIV1SNKV7YYZun18GjqX0foLYPTZecIoDGo1LkIH2A2Jz6dgbVlQWGBxryRGGXia3QCXDVNt74daFayMem2X6eElYhB7k_OhcuNEdWG-s5fiNwhnTA0nCSp_E2OMde30Qg
------WebKitFormBoundaryBfSESmlOiCYwo4Oq
Content-Disposition: form-data; name="hidden-1"
~~~ip~~~
------WebKitFormBoundaryBfSESmlOiCYwo4Oq
Content-Disposition: form-data; name="referer_url"
https://prolifewhistleblower.com/anonymous-form/
------WebKitFormBoundaryBfSESmlOiCYwo4Oq
Content-Disposition: form-data; name="forminator_nonce"
9fe66bf390
------WebKitFormBoundaryBfSESmlOiCYwo4Oq
Content-Disposition: form-data; name="_wp_http_referer"
/anonymous-form/
------WebKitFormBoundaryBfSESmlOiCYwo4Oq
Content-Disposition: form-data; name="form_id"
26
------WebKitFormBoundaryBfSESmlOiCYwo4Oq
Content-Disposition: form-data; name="page_id"
27
------WebKitFormBoundaryBfSESmlOiCYwo4Oq
Content-Disposition: form-data; name="form_type"
default
------WebKitFormBoundaryBfSESmlOiCYwo4Oq
Content-Disposition: form-data; name="current_url"
https://prolifewhistleblower.com/
------WebKitFormBoundaryBfSESmlOiCYwo4Oq
Content-Disposition: form-data; name="render_id"
0
------WebKitFormBoundaryBfSESmlOiCYwo4Oq
Content-Disposition: form-data; name="action"
forminator_submit_form_custom-forms
------WebKitFormBoundaryBfSESmlOiCYwo4Oq
Content-Disposition: form-data; name="input_11"
------WebKitFormBoundaryBfSESmlOiCYwo4Oq--
Better logging
Currently, the logging I wrote is lackluster. It would be better for the users of the script if we logged specifically what was happening in human-readable terms and then if we increase the verbosity, we can log the more technical stuff. That and timestamps might be helpful.
I'm probably gonna try using the built-in logging
library to avoid adding another dependency.
Free software license
Would it be possible to add a free software license to this code, such as Expat/MIT
, Apache-2.0
, or GPL-3.0-or-later
?
(See also the GNU Project's license recs and FSFE'S REUSE guidelines.)
Also, all significant contributors (what that means will be up to your lawyer) will need to approve these changes, because copyright law.
(Obligatory "IANAL, this is not legal advice" statement here. I just think it's mildly ironic that this tool isn't free.)
Dynamic tip text
It would be nice to dynamically generate the body of the tip to make it harder to filter them out automatically. Tools like this GPT-2-based text generator could be useful. This one requires an API key (free to use but requires an account), but it does generate plausible text from a prompt, e.g.
>>> import requests
>>> r = requests.post(
... "https://api.deepai.org/api/text-generator",
... data={
... 'text': 'My neighbor got an illegal abortion.',
... },
... headers={'api-key': $MY_KEY'}
... )
>>> print(r.json())
{u'output': u'My neighbor got an illegal abortion. We think the sheriff might have given his daughter the abortion," he says. "You know, she said, \'OK, I\'ll do this for her.\' It did not work \u2014 \'cause I went to her and she went into rehab. I have a family. I\'ve been working for her all this time. But you know, I said to the sheriff when I got this, I said no. I said no I\'m not going to do an abortion. . . ." The idea of taking someone\'s life and burying those children beneath the earth with nothing to do with your choice is a common enough myth that even the most ardent opponent of abortion believes that there is actually some medical and religious reason to do so. The issue of abortion, as far as anyone is concerned, only has one major effect: It undermines an already weak federal government\'s role in regulating the practice of abortion. But what about the other, less prominent, effect of the law? The only problem in the rest of this story: It is, of course, a myth. In fact, the only legal solution is state law and order. As far as the law goes, that means the government can keep its hand off what remains of the fetus. Under the law though, women of any race can be raped and killed without any form of constitutional repercussion. As a matter of fact, a legal abortion is virtually "illegal" under Texas\' 1973 s. 3-2', u'id': u'd3d28729-1e09-40f4-adfe-d9d039a3b537'}
Python issues
I haven't set up my development environment on this Mac, so I was starting from scratch. First it has python 3 installed, so I have to use pip3. Then I don't have access to the python system library directories, so I have to specify the --user argument to pip3. Then the binary directory isn't on the PATH and the library directory isn't on the PYTHON path, so I fixed those up. But now I'm stumped with this - I'm not a python developer:
python req.py
Traceback (most recent call last):
File "req.py", line 2, in <module>
import requests
File "/Users/Nemesis/Library/Python/3.8/lib/python/site-packages/requests/__init__.py", line 48, in <module>
from charset_normalizer import __version__ as charset_normalizer_version
File "/Users/Nemesis/Library/Python/3.8/lib/python/site-packages/charset_normalizer/__init__.py", line 11
SyntaxError: Non-ASCII character '\xd1' in file /Users/Nemesis/Library/Python/3.8/lib/python/site-packages/charset_normalizer/__init__.py on line 12, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
Certificate Error
Running as Admin and connecting through http - receiving the following error after submitting Captcha. Most likely due to website switching to HTTPS?
Starting the web server at http://prolifewhistleblower.com:8000/
13:22:48 urllib3.connection - [WARNING] Certificate did not match expected hostname: prolifewhistleblower.com. Certificate: {'subject': ((('commonName', 'h4ha.org'),),), 'issuer': ((('countryName', 'US'),), (('organizationName', "Let's Encrypt"),), (('commonName', 'R3'),)), 'version': 3, 'serialNumber': '03AEEE34C7BC86C5D2C41E5DA0A682B5A4A5', 'notBefore': 'Aug 19 05:19:56 2021 GMT', 'notAfter': 'Nov 17 05:19:54 2021 GMT', 'subjectAltName': (('DNS', '321golfcarts.com'), ('DNS', 'allzeit.com'), ('DNS', 'animalzbrand.com'), ('DNS', 'asbestossymptom.com'), ('DNS', 'bettercallliana.com'), ('DNS', 'dpparfum.com'), ('DNS', 'emailspro.com'), ('DNS', 'foresttok.org'), ('DNS', 'h4ha.org'), ('DNS', 'hempmain.com'), ('DNS', 'indochinesefood.com'), ('DNS', 'lawyerbyzipcode.com'), ('DNS', 'merchinttoken.org.austincountyhomes.com'), ('DNS', 'pranamatters.com'), ('DNS', 'sounn.com'), ('DNS', 'treasontees.com'), ('DNS', 'tvetv.com'), ('DNS', 'vitajuwelbottles.com'), ('DNS', 'whyarbitrage.com')), 'OCSP': ('http://r3.o.lencr.org',), 'caIssuers': ('http://r3.i.lencr.org/',)}
Form failed to submit.
13:22:48 bot.logger - [INFO] 0 successes, 1 failure
Not just GOP members
There were also two Democrats that voted for the bill: Ryan Guillen and Eddie Lucio Jr., so they should also be added to https://github.com/SeanDaBlack/AbBOT/blob/main/bot/data.py
Feature for checking the amount of times the script has run.
Dependencies and setup
Having an issue getting this to run. Any chance you could edit the README.md with instructions and dependencies? I'm curious enough to want to play with it.
Telltale Signs of Output from GPT2 (Double Quotes in Particular)
I want to note that GPT2 output, while decent, usually has a ton of telltale signs:
- The frequent use of double quotes, as if it's quoting from an interview. Almost every paragraph uses double quotes at least once, especially at the end of the first paragraph.
- Long quotations inside a sentence. Removing these requires more advanced filtering, but something along the lines of removing any sentence with a quote and the word "said."
- The use of advertisement text. Because of how GPT-2 was trained, it sometimes has words like "Advertisement" on its own line.
- Any use of colons for things like quotations in interviews.
- Characters that are not found on a standard keyboard.
- Stuff like "All photos © Michael C. Stough" on its own line.
- While you remove the stuff that comes after the final period, you don't remove any trailing newlines afterwards.
We should try to remove as many of these signs as possible from the output of GPT2. Some of these are easier to remove than others, but the ones that are difficult for us to remove are also difficult for them to filter out. For example, they could remove most of GPT2's submissions by removing any submission with double quotes.
It might also be a good idea to leave these signs in the output every so often so that they implement filters that could remove false negatives. For example, if they implement a filter for quotation marks, they could remove some real submissions that have quotation marks.
Invalid Nonce
Hello, firstly thank you for this project. I'm getting the following error in the debug logs:
15:22:14 bot.logger - [DEBUG] Initiating GET request to /wp-admin/admin-ajax.php for the nonce.
15:22:14 urllib3.connectionpool - [DEBUG] Starting new HTTPS connection (1): prolifewhistleblower.com:443
15:22:23 urllib3.connectionpool - [DEBUG] https://prolifewhistleblower.com:443 "POST /wp-admin/admin-ajax.php HTTP/1.1" 200 None
15:22:23 bot.logger - [DEBUG] Found nonce: 4d5c0e9b08
15:22:23 bot.logger - [DEBUG] Redirecting prolifewhistleblower.com to 127.0.0.1
15:22:23 bot.logger - [DEBUG] Ending redirection of prolifewhistleblower.com
15:22:23 bot.logger - [DEBUG] Initiating POST request to /wp-admin/admin-ajax.php to submit the form data.
15:22:23 urllib3.connectionpool - [DEBUG] Resetting dropped connection: prolifewhistleblower.com
15:22:31 urllib3.connectionpool - [DEBUG] https://prolifewhistleblower.com:443 "POST /wp-admin/admin-ajax.php HTTP/1.1" 200 None
15:22:31 bot.logger - [DEBUG] RESPONSE:
15:22:31 bot.logger - [DEBUG] 200
15:22:31 bot.logger - [DEBUG] {'Server': 'nginx', 'Date': 'Sat, 04 Sep 2021 22:22:30 GMT', 'Content-Type': 'application/json; charset=UTF-8', 'Connection': 'close', 'Vary': 'Accept-Encoding', 'Access-Control-Allow-Origin': 'https://prolifewhistleblower.com', 'Access-Control-Allow-Credentials': 'true', 'X-Robots-Tag': 'noindex', 'X-Content-Type-Options': 'nosniff', 'Expires': 'Wed, 11 Jan 1984 05:00:00 GMT', 'Cache-Control': 'no-cache, must-revalidate, max-age=0', 'X-Frame-Options': 'SAMEORIGIN', 'Referrer-Policy': 'strict-origin-when-cross-origin', 'Content-Encoding': 'gzip'}
15:22:31 bot.logger - [DEBUG] {"success":false,"data":"Invalid nonce. Please refresh your browser."}
15:22:31 bot.logger - [DEBUG] Redirecting prolifewhistleblower.com to 127.0.0.1
Form failed to submit.
I have tried refreshing my browser. Any help is appreciated!
Site is likely using form-based IP logging
The website appears to be using a hidden input field that stores your IP address and sends that as part of your form data to the server (despite their claim of anonymity). If there's no other form of IP logging on the system, it would be pretty simple to either empty this out or replace it with random IP addresses.
<div class="forminator-row forminator-hidden">
<input type="hidden" id="hidden-1" name="hidden-1" value="xxx.xxx.xxx.xxx"> <!-- Redacted my IP -->
</div>
I've put the full XPath below but you could also easily identify this input as #hidden-1
since it is the only element with that ID and it uses that ID every time.
/html/body/div[1]/div/div/div/article/div/div/div/div/div/div/div[2]/div/form/div[11]/input
x86_64 Binary for Linux?
I keep getting an error:
OSError: [Errno 8] Exec format error: './chromedriver'
when I attempt to run this script. I did some searching as I also got an error when I did
./chromdriver
from my shell and got a shell equivalent error and it seems this might be caused by the binary not being for x86_64 systems, is this binary only for ARM? If so can you generate an X86_64 binary or provide the steps to do so?
Thank you for your awesome work!
ModuleNotFoundError: No module named 'requests_toolbelt'
when I run sudo python3 server.py
I get the following traceback
Traceback (most recent call last):
File "server.py", line 4, in <module>
import forms
File "/home/red/AbBOT/forms.py", line 2, in <module>
from requests_toolbelt import MultipartEncoder
ModuleNotFoundError: No module named 'requests_toolbelt'
I'm running this in a venv. on Linux Mint
i got the same error even when running it without a venv
I have done pip3 install -r requirements.txt
that outputs
Requirement already satisfied: certifi==2021.5.30 in ./my_venv/lib/python3.8/site-packages (from -r requirements.txt (line 1)) (2021.5.30)
Requirement already satisfied: charset-normalizer==2.0.4 in ./my_venv/lib/python3.8/site-packages (from -r requirements.txt (line 2)) (2.0.4)
Requirement already satisfied: dnspython==2.1.0 in ./my_venv/lib/python3.8/site-packages (from -r requirements.txt (line 3)) (2.1.0)
Requirement already satisfied: idna==3.2 in ./my_venv/lib/python3.8/site-packages (from -r requirements.txt (line 4)) (3.2)
Requirement already satisfied: requests==2.26.0 in ./my_venv/lib/python3.8/site-packages (from -r requirements.txt (line 5)) (2.26.0)
Requirement already satisfied: requests-toolbelt==0.9.1 in ./my_venv/lib/python3.8/site-packages (from -r requirements.txt (line 6)) (0.9.1)
Requirement already satisfied: urllib3==1.26.6 in ./my_venv/lib/python3.8/site-packages (from -r requirements.txt (line 7)) (1.26.6)
I tried
pip3 install requests-toolbelt
and that outputted
Requirement already satisfied: requests-toolbelt in ./my_venv/lib/python3.8/site-packages (0.9.1)
Requirement already satisfied: requests<3.0.0,>=2.0.1 in ./my_venv/lib/python3.8/site-packages (from requests-toolbelt) (2.26.0)
Requirement already satisfied: idna<4,>=2.5; python_version >= "3" in ./my_venv/lib/python3.8/site-packages (from requests<3.0.0,>=2.0.1->requests-toolbelt) (3.2)
Requirement already satisfied: urllib3<1.27,>=1.21.1 in ./my_venv/lib/python3.8/site-packages (from requests<3.0.0,>=2.0.1->requests-toolbelt) (1.26.6)
Requirement already satisfied: certifi>=2017.4.17 in ./my_venv/lib/python3.8/site-packages (from requests<3.0.0,>=2.0.1->requests-toolbelt) (2021.5.30)
Requirement already satisfied: charset-normalizer~=2.0.0; python_version >= "3" in ./my_venv/lib/python3.8/site-packages (from requests<3.0.0,>=2.0.1->requests-toolbelt) (2.0.4)
is this an issue with my system? Or somthing else?
FAQ
Working on adding a FAQ.md file that goes over technical issues and tells you what might be wrong and how to fix it.
KeyError: 'DEEP_AI_KEY'
Getting this error after submitting my captcha.
Here is my stack trace with verbose on:
AbBot git:(main) sudo python ./server.py -v
Starting the web server at http://prolifewhistleblower.com:8000/
Received POST data.
127.0.0.1 - - [03/Sep/2021 16:07:23] "POST / HTTP/1.1" 200 -
Got reCaptcha token!
----------------------------------------
Exception happened during processing of request from ('127.0.0.1', 51135)
Traceback (most recent call last):
File "/Users/mleite/opt/anaconda3/lib/python3.7/socketserver.py", line 316, in _handle_request_noblock
self.process_request(request, client_address)
File "/Users/mleite/opt/anaconda3/lib/python3.7/socketserver.py", line 347, in process_request
self.finish_request(request, client_address)
File "/Users/mleite/opt/anaconda3/lib/python3.7/socketserver.py", line 360, in finish_request
self.RequestHandlerClass(request, client_address, self)
File "/Users/mleite/opt/anaconda3/lib/python3.7/socketserver.py", line 720, in __init__
self.handle()
File "/Users/mleite/opt/anaconda3/lib/python3.7/http/server.py", line 426, in handle
self.handle_one_request()
File "/Users/mleite/opt/anaconda3/lib/python3.7/http/server.py", line 414, in handle_one_request
method()
File "./server.py", line 40, in do_POST
forms.anonymous_form(token)
File "/Users/mleite/AbBOT/forms.py", line 88, in anonymous_form
generated_data = next(anonymous_form_data)
File "/Users/mleite/AbBOT/data.py", line 222, in anonymous_form
'textarea-1': get_tip_body(),
File "/Users/mleite/AbBOT/data.py", line 242, in get_tip_body
if os.environ[TEXT_GEN_API_VAR]:
File "/Users/mleite/opt/anaconda3/lib/python3.7/os.py", line 678, in __getitem__
raise KeyError(key) from None
KeyError: 'DEEP_AI_KEY'
----------------------------------------
Serving captcha.html
127.0.0.1 - - [03/Sep/2021 16:07:24] "GET /favicon.ico HTTP/1.1" 200 -
Received POST data.
127.0.0.1 - - [03/Sep/2021 16:08:03] "POST / HTTP/1.1" 200 -
Got reCaptcha token!
----------------------------------------
Exception happened during processing of request from ('127.0.0.1', 51354)
Traceback (most recent call last):
File "/Users/mleite/opt/anaconda3/lib/python3.7/socketserver.py", line 316, in _handle_request_noblock
self.process_request(request, client_address)
File "/Users/mleite/opt/anaconda3/lib/python3.7/socketserver.py", line 347, in process_request
self.finish_request(request, client_address)
File "/Users/mleite/opt/anaconda3/lib/python3.7/socketserver.py", line 360, in finish_request
self.RequestHandlerClass(request, client_address, self)
File "/Users/mleite/opt/anaconda3/lib/python3.7/socketserver.py", line 720, in __init__
self.handle()
File "/Users/mleite/opt/anaconda3/lib/python3.7/http/server.py", line 426, in handle
self.handle_one_request()
File "/Users/mleite/opt/anaconda3/lib/python3.7/http/server.py", line 414, in handle_one_request
method()
File "./server.py", line 40, in do_POST
forms.anonymous_form(token)
File "/Users/mleite/AbBOT/forms.py", line 88, in anonymous_form
generated_data = next(anonymous_form_data)
StopIteration
----------------------------------------
Serving captcha.html
127.0.0.1 - - [03/Sep/2021 16:08:03] "GET /favicon.ico HTTP/1.1" 200 -
Dynamic Fake Names
Check out Faker in python: https://github.com/joke2k/faker
or JS: https://github.com/Marak/faker.js
to dynamically generate names
GoDaddy/Sucuri appears to be blocking the submission form for (some?) IP addresses
Edit: This isn't just about the script. https://prolifewhistleblower.com/anonymous-form is blocked for me from a normal browser. Not sure how widespread this is, or if it's because of the website being about to be dropped from GoDaddy.
--
I first thought this was just because I was behind a VPN, but I tested both with and without the VPN, and I'm getting the same failure either way. When I have the VPN on, the response has its IP address; when I have the VPN off, the response has my actual IP address. Unless it used some other fingerprint on me when it saw my initial request was from a VPN, and identified me even from a different IP?
Anyway here is what I got after successfully completing the CAPTCHA. Happened in both Chromium and Firefox, on Linux.
17:44:17 bot.logger - [DEBUG] Did not find nonce.
17:44:17 bot.logger - [DEBUG] 403
17:44:17 bot.logger - [DEBUG] {'Server': 'Sucuri/Cloudproxy', 'Date': 'Sat, 04 Sep 2021 00:44:17 GMT', 'Content-Type': 'text/html', 'Transfer-Encoding': 'chunked', 'Connection': 'keep-alive', 'X-Sucuri-ID': '11004', 'X-XSS-Protection': '1; mode=block', 'X-Frame-Options': 'SAMEORIGIN', 'X-Content-Type-Options': 'nosniff', 'Content-Security-Policy': 'upgrade-insecure-requests;', 'X-Sucuri-Block': 'PAR010'}
And the HTML, which is easy enough to just read (IP address removed):
<!DOCTYPE html>
<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<link rel="stylesheet" href="https://cdn.sucuri.net/css/whitelabel/typography.css?611e1e2" />
<link rel="stylesheet" href="https://cdn.sucuri.net/css/whitelabel.css?611e1e2" />
<link rel="stylesheet" href="https://cdn.sucuri.net/css/whitelabel/buttons.css?611e1e2" />
<link rel="stylesheet" href="https://cdn.sucuri.net/css/whitelabel/footer.css?611e1e2" />
<link rel="stylesheet" href="https://cdn.sucuri.net/css/whitelabel/header.css?611e1e2" />
<link rel="stylesheet" href="https://cdn.sucuri.net/css/fonts.css" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>GoDaddy Security - Access Denied</title>
</head>
<body>
<header class="app-header clearfix">
<div class="wrap"><a href="https://www.godaddy.com/" class="logo"></a>
<span class="logo-neartext">Security</span>
</div>
</header>
<section class="center clearfix"></section>
<section class="app-content access-denied clearfix"><div class="box center width-max-940"><h1 class="brand-font font-size-xtra no-margin"><i class="icon-circle-red"></i>Access Denied - GoDaddy Website Firewall</h1>
<p class="medium-text code-snippet">If you are the site owner (or you manage this site), please whitelist your IP or if you think this block is an error please <a href="https://supportx.sucuri.net/" class="color-green underline">open a support ticket</a> and make sure to include the block details (displayed in the box below), so we can assist you in troubleshooting the issue. </p><h2>Block details:</h1>
<table class="property-table overflow-break-all line-height-16">
<tr>
<td>Your IP:</td>
<td><span>XXX.XXX.XXX.XXX</span></td>
</tr>
<tr><td>URL:</td>
<td><span>prolifewhistleblower.com/wp-admin/admin-ajax.php</span></td>
</tr>
<tr>
<td>Your Browser: </td>
<td><span>Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.58 Safari/537.36</span></td>
</tr>
<tr><td>Block ID:</td>
<td><span>PAR010</span></td>
</tr>
<tr>
<td>Block reason:</td>
<td><span>Your request was not allowed (site lock down mode).</span></td>
</tr>
<tr>
<td>Time:</td>
<td><span>2021-09-03 20:44:17</span></td>
</tr>
<tr>
<td>Server ID:</td>
<td><span>11004</span></td></tr>
</table>
</div>
</section>
<footer class="app-footer clearfix"><span>Copyright © 1999 – 2019 GoDaddy Operating Company, LLC. All rights reserved.</span>
<span class="padding-left-25"><a href="https://www.godaddy.com/Agreements/Privacy.aspx" class="underline" target="_blank" rel="nofollow noopener">Privacy Policy</a></span>
</footer>
</div>
</body>
</html>
Feel free to update the title of this report if what I'm assuming is inaccurate, or close it if somehow it's just me.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.