XSShell
XSShell – это обратная оболочка для межсайтового скриптинга … Хорошо, возможно, это не настоящая обратная оболочка, но она позволит вам взаимодействовать в реальном времени с браузером жертвы XSS.
Просто запустите двоичный файл xsshell, чтобы настроить конечную точку слушателя, выполните XSS, чтобы перенести эксплойт js в браузер жертвы, и как только он запустит его, вы увидите что-то подобное в консоли:
====== start socket: 1, header: AmaaKrM= ====== socket connected: 1 user agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36 Edge/17.17134 page url: http://example.com/ referrer: http://google.com/ cookies: phpsessid=abababababababab ====== end socket: 1, header: AmaaKrM= ======
Если у вас есть соединение, вы можете выполнить любой файл JavaScript, который вы хотите в браузере, и заставить этот скрипт возвращать данные в вашу консоль.
Поначалу это может показаться не очень полезным, но он позволяет вам быть более тактичным и реагировать в реальном времени на среду, в которой работает скрипт.
Среды, такие как, скажем… страница администратора, используемая для утверждения и управления заказами, размещенными на розничном сайте ?
XSShell также поставляется с несколькими готовыми полезными нагрузками XSS:
- \ alert – отправить сообщение с предупреждением js
- \ cs – получить куки и любые обновления куки
- \ gi – скачать все изображения на странице
- \ kl – регистратор ключей
- \ ll – перечислить все ссылки на странице
- \ src – скачать исходный код страницы
- \ pfl – показать пользователю модал и предложить им войти
- \ xhr – делать запросы xhr в контексте браузера жертвы
- \ ct – вылетает вкладка браузера жертвы
- \ wcs – попытаться сделать снимок с веб-камеры жертвы (ВНИМАНИЕ: большинство современных браузеров запрашивают доступ к веб-камерам)
Установка
go get github.com/raz-varren/xsshell go install github.com/raz-varren/xsshell
Модификации
Если вы измените какой-либо из файлов JS в этом пакете, убедитесь, что вы запустили:
go generate github.com/raz-varren/xsshell… go install github.com/raz-varren/xsshell
Это обеспечит упаковку обновленных файлов в двоичный файл.
Использование
Команда xsshell:
xsshell -h
Usage of xsshell:
-cert string
ssl cert file
-host string
websocket listen address
-key string
ssl key file
-log string
specify a log file to log all console communication
-path string
websocket connection path (default "/s")
-port string
websocket listen port (default "8234")
-servdir string
specify a directory to serve files from. a file server will not be started if no directory is specified
-servpath string
specify the base url path that you want to serve files from (default "/static/")
-wrkdir string
working directory that will be used as the relative root path for any commands requiring user provided file paths (default "./")
¯\_(ツ)_/¯
Примечание: Информация для исследования, обучения или проведения аудита. Применение в корыстных целях карается законодательством РФ.