s0lst1c3 / eaphammer

Targeted evil twin attacks against WPA2-Enterprise networks. Indirect wireless pivots using hostile portal attacks.
GNU General Public License v3.0
2.17k stars 312 forks source link

Create template: cloning fails #205

Open s7x opened 1 year ago

s7x commented 1 year ago

Describe the bug

When attempting to create a template of a login page, the script always fail with the following error:

[*] Website cloaning did not work.

A traceback is present in the wskeylogger.log file mentioning an InvalidSchema :

INFO:pywebcopy.session.Session:[GET] [s://g]
ERROR:pywebcopy.schedulers.Scheduler:No connection adapters were found for 's://g'
Traceback (most recent call last):
  File "/usr/lib/python3.11/site-packages/pywebcopy/schedulers.py", line 178, in _handle_resource
    resource.get(resource.context.url)
  File "/usr/lib/python3.11/site-packages/pywebcopy/elements.py", line 306, in get
    return self.request('GET', url, **params)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/pywebcopy/elements.py", line 293, in request
    self.session.request(method, url, stream=True, **params))
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/requests/sessions.py", line 587, in request
    resp = self.send(prep, **send_kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/pywebcopy/session.py", line 210, in send
    return super(Session, self).send(request, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/requests/sessions.py", line 695, in send
    adapter = self.get_adapter(url=request.url)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/requests/sessions.py", line 792, in get_adapter
    raise InvalidSchema(f"No connection adapters were found for {url!r}")
requests.exceptions.InvalidSchema: No connection adapters were found for 's://g'

In conjunction with a lot of errors of this type:

ERROR:pywebcopy.schedulers.Scheduler:Discarding invalid resource: <AbsoluteUrlResource(url=https://support.google.com/accounts?p=signin_privatebrowsing&hl=en)>

INFO:pywebcopy.session.Session:[GET] [https://fonts.gstatic.com/s/roboto/v18/KFOmCnqEu92Fr1Mu7WxKOzY.woff2]
INFO:pywebcopy.elements.CSSResource:Resource of type [font/woff2] is not CSS.

ERROR:pywebcopy.elements.JSResource:Status Code [<404>] received from the server [https://accounts.google.com/v3/signin/%5C/%5C/fonts.gstatic.com%5C/s%5C/roboto%5C/v18%5C/KFOlCnqEu92Fr1MmEU9fCBc4EsA.woff2]
INFO:pywebcopy.session.Session:[GET] [https://accounts.google.com/v3/signin/%5C/%5C/fonts.gstatic.com%5C/s%5C/roboto%5C/v18%5C/KFOlCnqEu92Fr1MmEU9fABc4EsA.woff2]
INFO:pywebcopy.elements.JSResource:Resource of type [text/html] is not JS.

I suppose most of them can be disregarded, except for the stack trace?

The last thing to mention is, in addition to not properly create the template, the 2 last lines of the log file are these (separated with a newline for readability):

INFO:pywebcopy.elements:[File] Written the file from <https://accounts.google.com/v3/signin/identifier?continue=https%3A%2F%2Fwww.google.com%2F&[REDACTED]> to </usr/share/eaphammer/tmp/google/accounts.google.com/v3/signin/identifier_continue_https__www.google.com__[REDACTED].html>

INFO:pywebcopy.elements.WebPage:Opening default browser with file: /usr/share/eaphammer/tmp/google/accounts.google.com/v3/signin/identifier_continue_https__www.google.com__[REDACTED].html

To Reproduce

Steps to reproduce the behavior:

  1. sudo eaphammer --create-template --name google --url 'https://accounts.google.com/v3/signin/identifier?continue=https%3A%2F%2Fwww.google.com%2F&[REDACTED]' --debug

Expected behavior

A proper clone of the login page is created and available with the --list-template flag.

Screenshots

image

image

image

image

image

Command string(s) used

sudo eaphammer --create-template \
--name google \
--url 'https://accounts.google.com/v3/signin/identifier?continue=https%3A%2F%2Fwww.google.com%2F&[REDACTED]' \
--debug

EAPHammer verbose output (using the --debug flag)

{
    "core": {
        "eap_user_methods": {
            "peap_version": {
                "gtc_downgrade": "1"
            },
            "phase1": {
                "balanced": "PEAP,TTLS,TLS,FAST",
                "gtc_downgrade": "PEAP",
                "speed": "PEAP,TTLS,TLS,FAST",
                "weakest": "PEAP,TTLS,TLS,FAST"
            },
            "phase2": {
                "balanced": "GTC,MSCHAPV2,TTLS-MSCHAPV2,TTLS,TTLS-CHAP,TTLS-PAP,TTLS-MSCHAP,MD5",
                "gtc_downgrade": "GTC",
                "speed": "MSCHAPV2,TTLS-MSCHAPV2,TTLS,TTLS-CHAP,GTC,TTLS-PAP,TTLS-MSCHAP,MD5",
                "weakest": "GTC,TTLS-PAP,MD5,TTLS-CHAP,TTLS-MSCHAP,MSCHAPV2,TTLS-MSCHAPV2,TTLS"
            }
        },
        "eaphammer": {
            "general": {
                "default_ssid_list": "example_known_ssids_file.txt",
                "default_wordlist": "rockyou.txt",
                "openssl_build_options": "'enable-ssl2 enable-ssl3 enable-ssl3-method enable-des enable-rc4 enable-weak-ssl-ciphers no-shared'",
                "openssl_source": "'https://github.com/openssl/openssl/archive/OpenSSL_1_1_1a.tar.gz'",
                "openssl_version": "'1.1.1a'",
                "proc_ipforward": "/proc/sys/net/ipv4/ip_forward",
                "version": "'0.1.4'",
                "wordlist_source": "https://github.com/danielmiessler/SecLists/blob/43e28e38957f456cac37d29e6596284cd7c88f90/Passwords/rockyou.txt.tar.gz?raw=true"
            },
            "services": {
                "avahi": "avahi-daemon",
                "avahi_bin": "/usr/sbin/avahi-daemon",
                "avahi_sleep_time": "2",
                "dhcpcd": "dhcpcd",
                "dhcpcd_bin": "/sbin/dhcpcd",
                "dhcpcd_sleep_time": "2",
                "dnsmasq": "dnsmasq",
                "dnsmasq_bin": "dnsmasq",
                "dnsmasq_sleep": "2",
                "dnsspoof": "None",
                "dnsspoof_bin": "dnsspoof",
                "dnsspoof_sleep": "2",
                "httpd": "apache2",
                "httpd_bin": "None",
                "httpd_sleep": "2",
                "network_manager": "network-manager",
                "network_manager_sleep": "2",
                "sleep_time": "2",
                "stop_avahi": "False",
                "stop_dhcpcd": "False",
                "use_network_manager": "True",
                "use_systemd": "True",
                "wlan_clean_sleep": "2",
                "wpa_supplicant": "wpa_supplicant",
                "wpa_supplicant_bin": "None",
                "wpa_supplicant_sleep": "2"
            }
        },
        "hostapd": {
            "80211n": {
                "ieee80211n": "1",
                "require_ht": "0"
            },
            "args": {
                "debug": "False"
            },
            "eap": {
                "capture_wpa_handshakes": "0",
                "eap_fast_a_id": "101112131415161718191a1b1c1d1e1f",
                "eap_fast_a_id_info": "hostapd-wpe",
                "eap_fast_prov": "3",
                "eap_server": "1",
                "ieee8021x": "1",
                "pac_key_lifetime": "604800",
                "pac_key_refresh_time": "86400",
                "pac_opaque_encr_key": "000102030405060708090a0b0c0d0e0f",
                "wpa_key_mgmt": "WPA-EAP"
            },
            "general": {
                "beacon_int": "100",
                "bssid": "00:11:22:33:44:00",
                "channel": "1",
                "country_code": "US",
                "ctrl_interface": "./run/hostapd-control-interface",
                "ctrl_interface_group": "0",
                "driver": "nl80211",
                "dtim_period": "1",
                "fragm_threshold": "2346",
                "hw_mode": "g",
                "ieee80211w": "0",
                "ignore_broadcast_ssid": "0",
                "interface": "wlan0",
                "known_beacons": "0",
                "logger_stdout": "-1",
                "logger_stdout_level": "2",
                "logger_syslog": "-1",
                "logger_syslog_level": "2",
                "loud_karma": "0",
                "macaddr_acl": "0",
                "max_num_sta": "255",
                "rts_threshold": "2347",
                "ssid": "eaphammer",
                "ssid_acl_mode": "0",
                "use_autocrack": "0",
                "use_karma": "0"
            },
            "owe": {
                "owe_ieee80211w": "2",
                "rsn_pairwise": "CCMP",
                "wpa": "2",
                "wpa_key_mgmt": "OWE"
            },
            "owe_transition": {
                "owe_transition_bssid": "fe:e1:de:ce:a5:ed",
                "owe_transition_ieee80211w": "2",
                "owe_transition_ignore_broadcast_ssid": "1",
                "owe_transition_ssid": "remmahpae",
                "rsn_pairwise": "CCMP",
                "wpa": "2",
                "wpa_key_mgmt": "OWE"
            },
            "psk": {
                "capture_wpa_handshakes": "1",
                "wpa_passphrase": "ermahgerdbestpasswordevar"
            },
            "wmm": {
                "wmm_ac_be_acm": "0",
                "wmm_ac_be_aifs": "3",
                "wmm_ac_be_cwmax": "10",
                "wmm_ac_be_cwmin": "4",
                "wmm_ac_be_txop_limit": "0",
                "wmm_ac_bk_acm": "0",
                "wmm_ac_bk_aifs": "7",
                "wmm_ac_bk_cwmax": "10",
                "wmm_ac_bk_cwmin": "4",
                "wmm_ac_bk_txop_limit": "0",
                "wmm_ac_vi_acm": "0",
                "wmm_ac_vi_aifs": "2",
                "wmm_ac_vi_cwmax": "4",
                "wmm_ac_vi_cwmin": "3",
                "wmm_ac_vi_txop_limit": "94",
                "wmm_ac_vo_acm": "0",
                "wmm_ac_vo_aifs": "2",
                "wmm_ac_vo_cwmax": "3",
                "wmm_ac_vo_cwmin": "2",
                "wmm_ac_vo_txop_limit": "47",
                "wmm_enabled": "1"
            },
            "wpa": {
                "auth_algs": "3",
                "wpa": "2",
                "wpa_pairwise": "TKIP CCMP"
            },
            "wrapper": {
                "sleep_time": "3"
            }
        },
        "responder": {
            "HTTP Server": {
                "exedownloadname": "ProxyClient.exe",
                "exefilename": "files/BindShell.exe",
                "htmlfilename": "files/AccessDenied.html",
                "htmltoinject": "<img src='file://RespProxySrv/pictures/logo.jpg' alt='Loading' height='1' width='1'>",
                "serve-always": "Off",
                "serve-exe": "Off",
                "serve-html": "Off",
                "wpadscript": "function FindProxyForURL(url, host){if ((host == \"localhost\") || shExpMatch(host, \"localhost.*\") ||(host == \"127.0.0.1\") || isPlainHostName(host)) return \"DIRECT\"; if (dnsDomainIs(host, \"ProxySrv\")||shExpMatch(host, \"(*.ProxySrv|ProxySrv)\")) return \"DIRECT\"; return 'PROXY ProxySrv:3128; PROXY ProxySrv:3141; DIRECT';}"
            },
            "HTTPS Server": {
                "sslcert": "certs/responder.crt",
                "sslkey": "certs/responder.key"
            },
            "Responder Core": {
                "analyzelog": "Analyzer-Session.log",
                "autoignoreaftersuccess": "Off",
                "capturemultiplecredentials": "On",
                "capturemultiplehashfromsamehost": "On",
                "challenge": "Random",
                "database": "Responder.db",
                "dns": "Off",
                "dontrespondto": "",
                "dontrespondtoname": "ISATAP",
                "ftp": "On",
                "http": "Off",
                "https": "On",
                "imap": "On",
                "kerberos": "On",
                "ldap": "On",
                "poisonerslog": "Poisoners-Session.log",
                "pop": "On",
                "responderconfigdump": "Config-Responder.log",
                "respondto": "",
                "respondtoname": "",
                "sessionlog": "Responder-Session.log",
                "smb": "On",
                "smtp": "On",
                "sql": "On"
            }
        },
        "wskeyloggerd": {
            "filenames": {
                "keylogger_script": "wsk.min.js",
                "login_template": "login.html",
                "main_log": "wskeylogger.log",
                "socketio_script": "socket.io.min.js"
            },
            "general": {
                "parent_template_dir": "dont_touch",
                "redir_param": "orig_url",
                "secret_key": "secret"
            },
            "keylogger": {
                "connect_event": "connect",
                "connect_event_response_msg": "confirm connection",
                "disconnect_event": "disconnect",
                "keydown_event": "keydown",
                "msg_details_param": "jskdetails",
                "namespace": "/test",
                "send_details_event": "send_details"
            },
            "routes": {
                "keylogger_script_route": "/wks",
                "portal_route": "/login",
                "socketio_script_route": "/sio"
            }
        }
    },
    "paths": {
        "asleap": {
            "bin": "/usr/share/eaphammer/local/asleap/asleap"
        },
        "certs": {
            "active_certs_dir": "/usr/share/eaphammer/certs/active",
            "active_full_chain": "/usr/share/eaphammer/certs/active/fullchain.pem",
            "ca_certs_dir": "/usr/share/eaphammer/certs/ca",
            "dh": "/usr/share/eaphammer/certs/dh",
            "server_certs_dir": "/usr/share/eaphammer/certs/server"
        },
        "dhcp": {
            "script": "/usr/share/eaphammer/scripts/dhcp_script.py"
        },
        "directories": {
            "asleap": "/usr/share/eaphammer/local/asleap",
            "certs": "/usr/share/eaphammer/certs",
            "conf": "/usr/share/eaphammer/settings",
            "db": "/usr/share/eaphammer/db",
            "hcxdumptool": "/usr/share/eaphammer/local/hcxdumptool",
            "hcxtools": "/usr/share/eaphammer/local/hcxtools",
            "hostapd": "/usr/share/eaphammer/local/hostapd-eaphammer/hostapd",
            "local": "/usr/share/eaphammer/local",
            "log": "/usr/share/eaphammer/logs",
            "loot": "/usr/share/eaphammer/loot",
            "responder": "/usr/share/eaphammer/local/Responder",
            "root": "/usr/share/eaphammer",
            "saves": "/usr/share/eaphammer/saved-configs",
            "scripts": "/usr/share/eaphammer/scripts",
            "tmp": "/usr/share/eaphammer/tmp",
            "wordlists": "/usr/share/eaphammer/wordlists"
        },
        "dnsmasq": {
            "conf": "/usr/share/eaphammer/tmp/dnsmasq-2023-09-13-18-42-58-mandW0FMHFwrbLt7uLGU1GDaXR78FC1n.conf",
            "log": "/usr/share/eaphammer/logs/dnsmasq.log"
        },
        "eap_spray": {
            "log": "/usr/share/eaphammer/logs/eap_spray.log"
        },
        "hcxdumptool": {
            "bin": "/usr/share/eaphammer/local/hcxdumptool/hcxdumptool",
            "filter": "/usr/share/eaphammer/tmp/hcxdumptool-filter-2023-09-13-18-42-58-cFF9o6i2SGtKHHKWKO2D5aNXlqT1XqCk.txt",
            "ofile": "/usr/share/eaphammer/tmp/hcxdumptool-output-2023-09-13-18-42-58-ctiUrHkbOOShoLy5Y0BseLRhULtf4paU.txt"
        },
        "hcxtools": {
            "hcxpcaptool": {
                "bin": "/usr/share/eaphammer/local/hcxtools/hcxpcaptool",
                "ofile": "/usr/share/eaphammer/tmp/hcxpcaptool-output-2023-09-13-18-42-58-cylSAjwCVR65YrMv1FXOV6L9xwIjLx20.txt"
            }
        },
        "hostapd": {
            "bin": "/usr/share/eaphammer/local/hostapd-eaphammer/hostapd/hostapd-eaphammer",
            "conf": "/usr/share/eaphammer/tmp/hostapd-2023-09-13-18-42-58-LOEHoGDuUzNs1LEMQEqhWhJ2bFoQ0Tnd.conf",
            "ctrl_interface": "/usr/share/eaphammer/run/ctrl-iface-2023-09-13-18-42-58-bx57cFiy",
            "eap_user": "/usr/share/eaphammer/tmp/2023-09-13-18-42-58-n96HV5pQvZgbV0OoDlMqYlJxYrl5KUJV.eap_user",
            "eap_user_header": "/usr/share/eaphammer/db/eap_user.header",
            "fifo": "/usr/share/eaphammer/tmp/2023-09-13-18-42-58-E571tcrjHr5cJXuxdlJke8Xca6Wl0t51.fifo",
            "known_ssids": "/usr/share/eaphammer/tmp/2023-09-13-18-42-58-AF4kJqtCjquEqBcvPQ0GnXzf0jVeeJ96.known_ssids",
            "lib": "/usr/share/eaphammer/local/hostapd-eaphammer/hostapd/libhostapd-eaphammer.so",
            "log": "/usr/share/eaphammer/logs/hostapd-eaphammer.log",
            "mac_blacklist": "/usr/share/eaphammer/tmp/2023-09-13-18-42-58-KXQXcbnbUHalJPZPHnXg1gp9MDm4VEfe.deny",
            "mac_whitelist": "/usr/share/eaphammer/tmp/2023-09-13-18-42-58-SqfUsEw3lh6dHtzsbnqbR2V6Z51HELNQ.accept",
            "phase1_accounts": "/usr/share/eaphammer/db/phase1.accounts",
            "phase2_accounts": "/usr/share/eaphammer/db/phase2.accounts",
            "save": "/usr/share/eaphammer/saved-configs/hostapd-2023-09-13-18-42-58-LOEHoGDuUzNs1LEMQEqhWhJ2bFoQ0Tnd.conf",
            "ssid_blacklist": "/usr/share/eaphammer/tmp/2023-09-13-18-42-58-l8HrbVlhfCHX7LelOpyoeANMYmNgwuyB.deny",
            "ssid_whitelist": "/usr/share/eaphammer/tmp/2023-09-13-18-42-58-NBLiOEqAm1LCHu5o0lTIFfawcVXUdhfc.accept"
        },
        "openssl": {
            "bin": "/usr/share/eaphammer/local/openssl/local/bin/openssl"
        },
        "psk": {
            "psk_capture_file": "/usr/share/eaphammer/loot/wpa_handshake_capture-2023-09-13-18-42-58-dLjWIrDFz4O6jUSIasDdcTvZkbA4yn42.hccapx"
        },
        "responder": {
            "analyzer_log": "/usr/share/eaphammer/logs/Analyzer-Session.log",
            "bin": "/usr/share/eaphammer/local/Responder/Responder.py",
            "cert": "/usr/share/eaphammer/local/Responder/certs/responder.crt",
            "conf": "/usr/share/eaphammer/local/Responder/Responder.conf",
            "config_log": "/usr/share/eaphammer/logs/Config-Responder.log",
            "db": "/usr/share/eaphammer/db/Responder.db",
            "exe": "/usr/share/eaphammer/local/Responder/files/BindShell.exe",
            "html": "/usr/share/eaphammer/local/Responder/files/AccessDenied.html",
            "key": "/usr/share/eaphammer/local/Responder/certs/responder.key",
            "poisoners_log": "/usr/share/eaphammer/logs/Poisoners-Session.log",
            "session_log": "/usr/share/eaphammer/logs/Responder-Session.log"
        },
        "wskeyloggerd": {
            "par_templates": "/usr/share/eaphammer/core/wskeyloggerd/templates/dont_touch",
            "payloads": "/usr/share/eaphammer/payloads",
            "static": "/usr/share/eaphammer/core/wskeyloggerd/static",
            "static_sl": "/usr/share/eaphammer/static",
            "templates": "/usr/share/eaphammer/core/wskeyloggerd/templates",
            "usr_templates": "/usr/share/eaphammer/core/wskeyloggerd/templates/user_defined",
            "usr_templates_sl": "/usr/share/eaphammer/templates"
        }
    }
}
[debug] Options:
{
    "add_download_form": false,
    "advanced_help": false,
    "algorithm": "sha256",
    "auth": null,
    "auth_alg": null,
    "author": "",
    "autocrack": false,
    "beacon_interval": null,
    "bootstrap": false,
    "bssid": null,
    "ca_cert": null,
    "ca_key": null,
    "ca_key_passwd": null,
    "captive_portal": false,
    "captive_portal_server_only": false,
    "capture_wpa_handshakes": null,
    "cert_wizard": false,
    "channel": null,
    "channel_width": null,
    "cloaking": null,
    "cn": null,
    "country": null,
    "create_template": true,
    "debug": true,
    "delete_template": false,
    "description": "",
    "dh_file": null,
    "disable_tx_stbc": false,
    "dl_form_message": "Please download our secure profile to continue.",
    "driver": null,
    "dsss_cck_40": false,
    "dtim_period": null,
    "eap_methods_phase_1": "PEAP,TTLS,TLS,FAST",
    "eap_methods_phase_2": "GTC,TTLS-PAP,MD5,TTLS-CHAP,TTLS-MSCHAP,MSCHAPV2,TTLS-MSCHAPV2,TTLS",
    "eap_spray": false,
    "eap_user_file": null,
    "email": null,
    "essid": null,
    "fragm_threshold": null,
    "greenfield": false,
    "hostile_portal": false,
    "ht40": null,
    "ht_delayed_block_ack": false,
    "hw_mode": null,
    "interface": null,
    "interface_pool": null,
    "karma": false,
    "key_length": 2048,
    "known_beacons": false,
    "known_ssids": null,
    "known_ssids_file": null,
    "ldpc": false,
    "lhost": "10.0.0.1",
    "list_templates": false,
    "locale": null,
    "loud": false,
    "lport": 80,
    "lsig_txop_prot": false,
    "mac_blacklist": null,
    "mac_whitelist": null,
    "manual_config": null,
    "max_num_stations": null,
    "max_spatial_streams": null,
    "name": "google",
    "negotiate": "balanced",
    "not_after": 94608000,
    "not_before": 0,
    "obss_interval": null,
    "org": null,
    "org_unit": null,
    "owe_transition_bssid": null,
    "owe_transition_ssid": null,
    "password": null,
    "payload": "profile.msi",
    "peap_version": null,
    "pivot": false,
    "pmf": null,
    "pmkid": false,
    "portal_cert": null,
    "portal_debug": false,
    "portal_fullchain": null,
    "portal_https": false,
    "portal_private_key": null,
    "portal_user_template": "login",
    "private_key": null,
    "private_key_passwd": null,
    "psk_capture_file": null,
    "reap_creds": false,
    "remote_rig": null,
    "require_ht": false,
    "rts_threshold": null,
    "save_config": null,
    "save_config_only": null,
    "self_signed": false,
    "server_cert": null,
    "short_gi": false,
    "smps": null,
    "ssid_blacklist": null,
    "ssid_whitelist": null,
    "state": null,
    "troll_defender": false,
    "url": "https://accounts.google.com/v3/signin/identifier?continue=https%3A%2F%2Fwww.google.com%2F&ec=[REDACTED]",
    "use_max_a_msdu_length": false,
    "user_list": null,
    "wmm": false,
    "wordlist": "/usr/share/eaphammer/wordlists/rockyou.txt",
    "wpa_passphrase": null,
    "wpa_version": null
}

EAPHammer Version (./eaphammer --version)

OS (the OS from which you are running EAPHammer)

Thanks for your help!

s0lst1c3 commented 1 year ago

I'm 99% sure that this issue is due to a bug in pywebcopy, upon which this feature depends. I can't be certain since the URL you submitted is redacted, so I had to do my best using what I believe to be a similar sign-in URL for the same site / domain. Here's what I got when trying to clone the site using pywebcopy directly:

Reproduction Command:

python3 -m pywebcopy -p --url https://accounts.google.com/v3/signin/identifier\?continue\=[..snip..] --location ./test --bypass_robots 2>&1 | grep ERROR

Output:

ERROR    - pywebcopy.elements.GenericResource:373 - Status Code [<404>] received from the server [https://accounts.google.com/v3/signin/]
ERROR    - pywebcopy.schedulers.Scheduler:110 - Invalid url schema: [data] for url: [data:image/svg+xml;charset=UTF-[..snip..]
ERROR    - pywebcopy.elements.JSResource:373 - Status Code [<404>] received from the server [https://www.gstatic.com/_/mss/boq-identity=[..snip..]
ERROR    - pywebcopy.schedulers.Scheduler:187 - No connection adapters were found for 's://g'
ERROR    - pywebcopy.elements.JSResource:373 - Status Code [<404>] received from the server [..snip..]
ERROR    - pywebcopy.schedulers.Scheduler:182 - Scheduler ConnectionError Failed to retrieve resource from [..snip..]
ERROR    - pywebcopy.schedulers.Scheduler:182 - Scheduler ConnectionError Failed to retrieve resource from [..snip..]

Can you do me a favor and re-run the command shown above using your unredacted URL? Don't worry about pasting the console output, just let me know if you get similar error messages from pywebcopy. If you do, I'll open an issue with pywebcopy.