hidden/Hidden/todo.txt

89 lines
5.6 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

TODO:
+ Добавить поддержку фильтрации открытия и создания key
+ Добавить поддержку фильтрации перечисления key
+ Добавить поддержку фильтрации перечисления value
+ Вынести fs filter и reg filter в отдельные файлы
+ Протестировать фишки с ObRegisterCallback
+ Стерание всех флагов
+ Реализовать PsMonitor со всеми вытекающими
+ Реализовать рабочий прототип
+ Для Exclude
+ Для Protected
+ Добавить флаг наследования
+ Реализовать интерфейс для IOCTL
+ Реализовать интерфейс для File & Reg мониторов
+ Вынести Process Table в отдельный файл
+ Переименовать Process Tree в Process Table
+ Протестировать интерфейсы
+ Добавить в HiddenCLI загрузку excluded и protected процессов
+ Добавить проект HiddenTest
+ Реализовать тесты в проекте HiddenTest
+ FS monitor
+ Reg filter
+ Ps filter
+ Добавить код тестирования для add\remove excluded image
+ Добавить в Reg filter поддержку всех возможных операций над value
+ set value
+ delete value
+ query value
+ query multiple value
- Переписать Exclude List на основе AVL или других buildin generic trees
- FS monitor
- Reg monitor
+ Реализовать конвертирование пути в пути драйвера
+ Ps monitor
+ FS filter
+ Reg filter
+ Реализовать RemoveAllExcludeListEntries
+ Реализовать все ф-и Ps monitor
+ Добавить в библиотеку поддержку get\set state
+ Решить проблему с protected (возможно разрешить создавать такие процессы только из protected\system)
+ Реализовать IOCTL протокол управления
+ Реализовать usermode библиотеку для работы с IOCTL API
+ Слинковать с IOCTL API lib
+ Добавить поддержку флага автоприсвоение состояния существующим процессам для Hid_AddExcludedImage\Hid_AddProtectedImage
+ Проверить как ведёт себя файловый фильтр с файлами открытыми по ID или по короткому пути
+ Реализовать HiddenCLI
+ ignore
+ unignore
+ protect
+ unprotect
+ query
+ Протестировать все комманды
+ При выполнении /unhide с любым ID возвращается статус ок
+ Проверить чтобы все ObjId генерировались начиная с 1
+ Реализовать функционал вкл\выкл драйвера через IOCTL
- Написать тест для вкл\выкл драйвера через IOCTL
+ Написать тест HiddenCLITests
+ Портировать драйвер под архитектуру x64
+ Портировать под версии Windows 8, 8.1, 10
+ Залить проект на Git
+ Переименовать проект драйвера в Hidden
+ Привести в порядок все версии билда Release, Debug, ...
+ Добавить процесс System(4) как статически исключенный
- Подумать по поводу проблемы, что HKLM\System\CurrentControlSet на самом деле берётся из CurrentControl00n
- Реализовать steals mode
+ Реализовать поддержку загрузки дефольтных конфигов из реестра
+ Реализовать установку конфигов в реестр через hiddencli
+ Привести в порядок вывод статуса в hiddencli
+ Привести в порядок номер ошибки в hiddencli
+ Изменить логирование на DbgPrintEx
- Добавить SAL на функции драйвера
- Поддержка case-sensetive путей на Windows 10
- Реализовать сокрытие процессов
+ Сделать видимыми скрытые процессы после выгрузки и /unhide
- Улучшить алгоритм поиска офсета
+ Добавить конфигурацию в реестр
- Реализовать скрытие процесса из PspCidTable
- Добавить сокрытие потоков из PspCidTable
+ Добавить поддержку Vista\7
- Решить проблему синхронизации доступа к ActiveProcessLinks
- Добавить поддержку сокрытия из SessionProcessLinks (если в этом есть смысл)
- Реализовать сокрытие сервисов через scdb патч
+ Добавить тест для проверки сокрытия процессов
+ Решить проблему с %tu принтом лога на 32-бит драйвере
- Эмулировать создание reg\fs обьектов, когда обьект с таким же именем скрыт
+ GetProcessInProcessTable может возвращать ptr чтобы избежать UpdateProcessInProcessTable
+ Windows 7 x86 protect тест завален
- Проверить всё на Windows Vista