purebasic.info

PureBasic forum
Текущее время: Вс июн 24, 2018 9:27 pm

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 19 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Сжатие данных.
СообщениеДобавлено: Пт мар 09, 2018 8:54 am 
Не в сети
доцент

Зарегистрирован: Пн мар 05, 2018 4:49 am
Сообщений: 50
Благодарил (а): 4 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
Что-то не хочет сжимать данные правильно, на выходе прога тупо не работает. Проверял UPX пакером, метод LZMA и он сжал примерно так же, только на 1кб больше, значит где то теряются пару байтов при сжатие.

Код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
UseLZMAPacker()
 
Procedure CompressFile(file2Compress.s)
  If ReadFile(0, file2Compress)
    fileLength = Lof(0)
    *fileBuffer = AllocateMemory(fileLength)
    If fileLength And *fileBuffer
      ReadData(0, *fileBuffer, fileLength)
      startTimer = GetTickCount_()
      compressedLength = CompressMemory(*fileBuffer, fileLength,
                                        *fileBuffer, fileLength, #PB_PackerPlugin_Lzma, 9)
      CloseFile(0)
      If compressedLength
        compressionTime = GetTickCount_() - startTimer
        compressedFileName.s = SaveFileRequester("Choose a file to save to:",
                                                 "", "All files | *.*", 0)
        If compressedFileName
            DeleteFile(compressedFileName)
          OpenFile(1,compressedFileName)
          WriteData(1, *fileBuffer, compressedLength)
          FreeMemory(*fileBuffer)
          CloseFile(1)
          MessageRequester("Info", "Compression succeded:" + Chr(10) + Chr(10) +
                                   "Old size: " + Str(FileLength) + Chr(10) +
                                   "New size:"+ Str(CompressedLength + 4) + Chr(10) +
                                   "Compression time: " + Str(CompressionTime) + " ms",
                                   #MB_ICONINFORMATION)
          ProcedureReturn 1
        EndIf
      EndIf
    EndIf
  EndIf
  ProcedureReturn 0
EndProcedure
 
file2Compress.s = OpenFileRequester("Choose a file to compress",
                                    "", "All files | *.*", 0)
If file2Compress
  If CompressFile(file2Compress) = 0
    MessageRequester("Info", "Something went wrong.", #MB_ICONINFORMATION)
  EndIf
EndIf



p.s код взял с другой темы, но как работает понимаю. Есть еще свои наработки на основе функций пурика, но и они не работают, тоже теряют где то байты.
p.s.s Сжимаю *.exe файлы.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Сжатие данных.
СообщениеДобавлено: Пт мар 09, 2018 1:18 pm 
Не в сети
МОДЕРАТОР
Аватар пользователя

Зарегистрирован: Пн апр 09, 2007 4:53 pm
Сообщений: 11194
Благодарил (а): 4 раз.
Поблагодарили: 417 раз.
Pypsikan писал(а):
на выходе прога тупо не работает
Pypsikan писал(а):
CompressMemory(*fileBuffer, fileLength, *fileBuffer, fileLength, #PB_PackerPlugin_Lzma, 9)
Результат нужно помещать в другую область памяти, а не в ту где исходные данные.

_________________
Компьютер позволяет решать все те проблемы, которые до его изобретения не существовали. :) :)


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Сжатие данных.
СообщениеДобавлено: Пт мар 09, 2018 7:20 pm 
Не в сети
док
Аватар пользователя

Зарегистрирован: Сб мар 28, 2015 11:06 pm
Сообщений: 139
Откуда: Україна
Благодарил (а): 7 раз.
Поблагодарили: 10 раз.
Пункты репутации: 4
Pypsikan Эм, я правильно понял: ты хочешь пуриком сжать ехе и чтоб он после этого работал?


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Сжатие данных.
СообщениеДобавлено: Пт мар 09, 2018 10:45 pm 
Не в сети
доцент

Зарегистрирован: Пн мар 05, 2018 4:49 am
Сообщений: 50
Благодарил (а): 4 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
LinXP писал(а):
Pypsikan Эм, я правильно понял: ты хочешь пуриком сжать ехе и чтоб он после этого работал?

А что так нельзя?


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Сжатие данных.
СообщениеДобавлено: Пт мар 09, 2018 10:48 pm 
Не в сети
доцент

Зарегистрирован: Пн мар 05, 2018 4:49 am
Сообщений: 50
Благодарил (а): 4 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
Пётр писал(а):
Pypsikan писал(а):
на выходе прога тупо не работает
Pypsikan писал(а):
CompressMemory(*fileBuffer, fileLength, *fileBuffer, fileLength, #PB_PackerPlugin_Lzma, 9)
Результат нужно помещать в другую область памяти, а не в ту где исходные данные.

Если я пральна понял.

Код:
1
2
3
4
5
6
7
8
*fileBuffer = AllocateMemory(fileLength)
*compressBuffer = AllocateMemory(fileLength)
If fileLength And *fileBuffer
ReadData(0, *fileBuffer, fileLength)
startTimer = GetTickCount_()
compressedLength = CompressMemory(*fileBuffer, fileLength, *compressBuffer, fileLength, #PB_PackerPlugin_Lzma, 9)
... чуть ниже по коду ...
WriteData(1, *compressBuffer, compressedLength)


но такое тоже не работает.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Сжатие данных.
СообщениеДобавлено: Пт мар 09, 2018 10:56 pm 
Не в сети
док
Аватар пользователя

Зарегистрирован: Сб мар 28, 2015 11:06 pm
Сообщений: 139
Откуда: Україна
Благодарил (а): 7 раз.
Поблагодарили: 10 раз.
Пункты репутации: 4
https://ru.wikipedia.org/wiki/UPX
https://ru.wikipedia.org/wiki/Portable_Executable
Упаковка исполняемых файлов
Цитата:
Сжатый исполняемый файл состоит из модуля распаковки/инициализации и блока данных, содержащего в себе исходный файл в сжатом виде. При запуске модуль распаковки выделяет память и распаковывает туда содержимое блока данных.

Сам подумай, чего у тебя не хватает
Pypsikan писал(а):
Проверял UPX пакером, метод LZMA и он сжал примерно так же, только на 1кб больше

ЭТО и занимает ~1кб


Последний раз редактировалось LinXP Пт мар 09, 2018 11:51 pm, всего редактировалось 1 раз.

Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Сжатие данных.
СообщениеДобавлено: Пт мар 09, 2018 11:04 pm 
Не в сети
МОДЕРАТОР
Аватар пользователя

Зарегистрирован: Пн апр 09, 2007 4:53 pm
Сообщений: 11194
Благодарил (а): 4 раз.
Поблагодарили: 417 раз.
Pypsikan писал(а):
А что так нельзя?
Перед запуском exe файла его нужно распаковать.

_________________
Компьютер позволяет решать все те проблемы, которые до его изобретения не существовали. :) :)


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Сжатие данных.
СообщениеДобавлено: Сб мар 10, 2018 1:39 am 
Не в сети
доцент

Зарегистрирован: Пн мар 05, 2018 4:49 am
Сообщений: 50
Благодарил (а): 4 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
LinXP писал(а):
https://ru.wikipedia.org/wiki/UPX
https://ru.wikipedia.org/wiki/Portable_Executable
Упаковка исполняемых файлов
Цитата:
Сжатый исполняемый файл состоит из модуля распаковки/инициализации и блока данных, содержащего в себе исходный файл в сжатом виде. При запуске модуль распаковки выделяет память и распаковывает туда содержимое блока данных.

Сам подумай, чего у тебя не хватает
Pypsikan писал(а):
Проверял UPX пакером, метод LZMA и он сжал примерно так же, только на 1кб больше

ЭТО и занимает ~1кб


Думал об распаковке, но что-то она странно идет, во общем попробую еще раз.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Сжатие данных.
СообщениеДобавлено: Сб мар 10, 2018 10:07 am 
Не в сети
док
Аватар пользователя

Зарегистрирован: Сб мар 28, 2015 11:06 pm
Сообщений: 139
Откуда: Україна
Благодарил (а): 7 раз.
Поблагодарили: 10 раз.
Пункты репутации: 4
Pypsikan
Темы: Не работает SendMail, Спрятать строки от отладчика, Сжатие данных (exe).
Чёт я сразу не подумал что вирусню пишешь... я пасс..
Но если вдруг сигнатуры пурика внесут в базы антивирусов - буду знать, кого "благодарить"...


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Сжатие данных.
СообщениеДобавлено: Вс мар 11, 2018 7:40 am 
Не в сети
профессор

Зарегистрирован: Чт сен 22, 2011 6:21 pm
Сообщений: 230
Благодарил (а): 31 раз.
Поблагодарили: 22 раз.
Пункты репутации: 0
Ну зачем сразу такие предьявы, возможно - "авто-багрепорт" + защита от юных хацкеров (умеющих подменять строки в exe файле) + самоинсталяция дополнительных компонентов программы(для распространения программы 1-им файлом).

зы. в свое время как-то решал те-же проблемы.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Сжатие данных.
СообщениеДобавлено: Вс мар 11, 2018 4:33 pm 
Не в сети
доцент

Зарегистрирован: Пн мар 05, 2018 4:49 am
Сообщений: 50
Благодарил (а): 4 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
LinXP писал(а):
Pypsikan
Темы: Не работает SendMail, Спрятать строки от отладчика, Сжатие данных (exe).
Чёт я сразу не подумал что вирусню пишешь... я пасс..
Но если вдруг сигнатуры пурика внесут в базы антивирусов - буду знать, кого "благодарить"...


Не, не вирусня. Прост балуюсь. Сигнатуры пурика уже внесли в бд, пару АВ детектят, но я тут не причем, это еще до меня было.
Я ни разу не писал вирсню хех.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Сжатие данных.
СообщениеДобавлено: Вс мар 11, 2018 4:35 pm 
Не в сети
доцент

Зарегистрирован: Пн мар 05, 2018 4:49 am
Сообщений: 50
Благодарил (а): 4 раз.
Поблагодарили: 0 раз.
Пункты репутации: 0
Kuzmat писал(а):
Ну зачем сразу такие предьявы, возможно - "авто-багрепорт" + защита от юных хацкеров (умеющих подменять строки в exe файле) + самоинсталяция дополнительных компонентов программы(для распространения программы 1-им файлом).

зы. в свое время как-то решал те-же проблемы.


Дык, просто балуюсь, изучаю что можно, что нельзя. Чтобы в будущем может что-то написать.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Сжатие данных.
СообщениеДобавлено: Вс мар 11, 2018 8:21 pm 
Не в сети
док
Аватар пользователя

Зарегистрирован: Сб мар 28, 2015 11:06 pm
Сообщений: 139
Откуда: Україна
Благодарил (а): 7 раз.
Поблагодарили: 10 раз.
Пункты репутации: 4
Kuzmat писал(а):
возможно - "авто-багрепорт"

вместе с паролями снятые стилером https://lolzteam.net/threads/380954/
Kuzmat писал(а):
+ защита от юных хацкеров (умеющих подменять строки в exe файле) + самоинсталяция дополнительных компонентов программы(для распространения программы 1-им файлом).

То что нужно, для установки скрытого майнера на компьютер жертвы: https://darkwebs.ws/threads/25203/page-20#post-457411
теперь понятно зачем была тема Аппаратная поддержка процессора(AES) - касается майнеров: "Возможные значения "-lowcpu 1" и "-lowcpu 2". Для примера, на процессоре Intel Core i7 4770 с параметром "-lowcpu 2" показывает около 180 h/s на одном потоке. Данный параметр работает только для процессоров с поддержкой AES-NI."
Pypsikan писал(а):
Не, не вирусня. Прост балуюсь. Я ни разу не писал вирсню хех.

https://lolzteam.net/members/228561/#postings
https://xakfor.net/threads/%D0%9F%D1%80 ... ana.18539/
ага, совпадение...

Pypsikan писал(а):
Сигнатуры пурика уже внесли в бд, пару АВ детектят, но я тут не причем, это еще до меня было..

любопытен факт того, что ты об этом в курсе..


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Сжатие данных.
СообщениеДобавлено: Пн мар 12, 2018 4:05 am 
Не в сети
профессор

Зарегистрирован: Пт фев 20, 2009 12:57 pm
Сообщений: 1625
Откуда: Алматы
Благодарил (а): 14 раз.
Поблагодарили: 44 раз.
Пункты репутации: 5
не понимаю я вас, товарищи :) на счет темы с сигнатурами. какая разница какие там еще сигнатуры, ежели твой очередной шедевр детектится на вирутотале пятком антивирусов - то берешь гугель в зубы и в перед искать суппорт данных антивирусов, а там отсылка сэмплов с пометкой фалсе поситиве детекшион... как-то так вобщем. и в итоге через какое-то время этот пяток перестает ругаться. я так помню с 18, кажется, до 3 число снизил переписками. но это конечно при условии, что шедевр действительно без сурпрызов :) а те три ваще какие-то галимые антивири... один вовсе не нашел. второй сайт был глючный по самые помидоры. что там с третьим не помню... кароче на эти ноунеймы забил :)


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Сжатие данных.
СообщениеДобавлено: Пн мар 12, 2018 7:17 am 
Не в сети
док

Зарегистрирован: Сб окт 31, 2009 7:44 am
Сообщений: 155
Благодарил (а): 88 раз.
Поблагодарили: 3 раз.
Пункты репутации: 0
имхо, пусть что хочет/может пишет, для этого и нужен PB. Серьёзные проги пишутся на других языках. Если бы ещё расшаривал какие-то исходники/функции, то вообще респект! Нечего вообще поднимать тему "со своими подозрениями".. Интересен вопрос про законность майнеров. С одной стороны - человек своей головой зарабатывает деньги, с другой - никому ничего плохого не делает (не украл/пошифровал/удалил). Разве только налоги не платит..


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 19 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group (блог о phpBB)
Сборка создана CMSart Studio
Русская поддержка phpBB