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

Статья Исследуем и обходим перехваты/хуки функций на уровне пользователя

Пожалуйста, обратите внимание, что пользователь заблокирован
Интерпретатор 100% не будут детектить, но по крайне мере топовые антивирусы.)

Сам скрипт могут детектить, но это обходится, так-же легко как детекты например батников.

А-так ты сам можешь запаковать интерпритатор в exe с автоматическим запуском скрипта, детекты будут такие-же как и на стиллеры, крипторы и т.д.
Т.е. либо после попадания зверька в облако, либо проктивная защита антивирусов, ничего тут такого нет...)

На васме Лаборатория Касперского разместила вакансию, никто не хочет попробовать.:t??
Сам Инди уже подумывает...?
детект дефендер, софос, макафи вешает именно на вм автоита
это простой билд из папки примеров в самом автоите

C-подобный:
#include <Constants.au3>

;
; AutoIt Version: 3.0
; Language:       English
; Platform:       Win9x/NT
; Author:         Jonathan Bennett (jon at autoitscript dot com)
;
; Script Function:
;   Plays with the calculator.
;

; Prompt the user to run the script - use a Yes/No prompt with the flag parameter set at 4 (see the help file for more details)
Local $iAnswer = MsgBox(BitOR($MB_YESNO, $MB_SYSTEMMODAL), "AutoIt Example", "This script will run the calculator and type in 2 x 4 x 8 x 16 and then quit.  Do you want to run it?")

; Check the user's answer to the prompt (see the help file for MsgBox return values)
; If "No" was clicked (7) then exit the script
If $iAnswer = 7 Then
    MsgBox($MB_SYSTEMMODAL, "AutoIt", "OK.  Bye!")
    Exit
EndIf

; Run the calculator
Run("calc.exe")

; Wait for the calculator to become active. The classname "CalcFrame" is monitored instead of the window title
WinWaitActive("[CLASS:CalcFrame]")

; Now that the calculator window is active type the values 2 x 4 x 8 x 16
; Use AutoItSetOption to slow down the typing speed so we can see it
AutoItSetOption("SendKeyDelay", 400)
Send("2*4*8*16=")
Sleep(2000)

; Now quit by sending a "close" request to the calculator window using the classname
WinClose("[CLASS:CalcFrame]")

; Now wait for the calculator to close before continuing
WinWaitClose("[CLASS:CalcFrame]")

; Finished!
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Вот никогда и нигде не видел, чтобы автоит адмены использовали, в основном это либо повершелл, либо всратый вбс. Один раз даже повербасик видел, но автоит чет никогда.
 
Вот никогда и нигде не видел, чтобы автоит адмены использовали, в основном это либо повершелл, либо всратый вбс. Один раз даже повербасик видел, но автоит чет никогда.
Сейчас-да, лучше наверное PS...

Но когда я админил, он либо не был на слуху, либо его вообще не было, по крайне-мере я про него не так давно и узнал...)

Это типо старая школа, а PS и прочее, новое веянье...)))
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Вот никогда и нигде не видел, чтобы автоит адмены использовали, в основном это либо повершелл, либо всратый вбс.
адменом не работал, но я пользуюсь буквально им постоянно, для автоматизации различных действий, в связках с селениумом и автоитом, да просто автоматизации на десктопе различных действий. к тому же у него есть дллки и обертки под пайтон, выдумать различных комбинаций можно миллионы, главное начать, просто потом очень сложно от такой приблуды отказаться

апдейт: я могу нахваливать его бесконечно. но просто бесит что я не могу нормально работать с ним на десятке, хочется набить рожу вайтхатам за такие правила у антиков. придурки недоделаные
 
Hello.

I am happy to see peoples interested in such things. However, I'd like to point out a fundamental flaws in this proof-of-concept which I believe may pose a problem. The first being simple: it is very simple to illustrate which APIs AVs (as well as EDRs) are hooking. Writing such an application is not necessary. You can use Hasherezades pe-sieve application to easily determine if an AV is hooking. This application was used in a recent paper called ANTI-VIRUS ARTIFACTS III to demonstrate which APIs are being hooked by various AV solutions. However, writing such code for sport is nice practice. :)

Otherwise, this paper is nice and demonstrates a method of dynamically retrieving syscalls. I believe anyone interested in more sophisticated methods of getting syscalls should review ModExps paper on syscalls. He demonstrates several novel methods which evade heuristic analysis engines :)
 
Извиняюсь за АП старой темы, возник вопрос: чем плох метод загрузки ntdll с диска кастомным PE-лоадером? Тогда будет достаточно захардкодить номера сисколов NtCreateFile/NtReadFile.
 
Пожалуйста, обратите внимание, что пользователь заблокирован
чем плох метод загрузки ntdll с диска кастомным PE-лоадером?
Да в принципе ничем не плох, если ты будешь использовать только апи прослойки над сисколами. В случае с функциями загрузчика (LdrLoadDll и тд) или кучи (RtlAllocateHeap и тд) или какие-то другие, то вероятно могут возникнуть проблемы с глобальными состояниями объектов этих функций, но это надо тестить, просто предполагаю.
 
Извиняюсь за АП старой темы, возник вопрос: чем плох метод загрузки ntdll с диска кастомным PE-лоадером? Тогда будет достаточно захардкодить номера сисколов NtCreateFile/NtReadFile.
There isn't anything wrong with this method - but there are better, more intelligent approaches. Under the microscope of most AV/EDR/XDRs, this method will suffice.
 
Раз уж апнули, хочу задать вопрос, в современных реалиях с лютым дефендером из коробки на всех тачках который работает на уровне ядра, еще и с клаудпротектом, уже не актуально ?
 
К коду особо не присматривался, но вот сразу бросилось в глаза
DWORD end = start + sec_head.SizeOfRawData;
алигн проебан, нет внимания к деталям батенька, а они важны.
 
Пожалуйста, обратите внимание, что пользователь заблокирован


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