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

Статья Как правильно изучать malware-кодинг под Windows

thatsmyname вайт просто :) Понятно, что там актуален такой код:
C++:
if ( !parse_t::get_instance()->for_each( [ & ]( _vlabel_meta *label_data ) -> bool {
         std::printf( "> checking label %s for invalid instructions... number of instructions = %d\n",
                      label_data->label_name.c_str(), label_data->vinstrs.size() );

         const auto result = std::find_if(
             label_data->vinstrs.begin(), label_data->vinstrs.end(),
             [ & ]( const _vinstr_meta &vinstr ) -> bool {
                 std::printf( "> vinstr name = %s, has imm = %d, imm = 0x%p\n", vinstr.name.c_str(),
                              vinstr.has_imm, vinstr.imm );

                 for ( auto &vm_handler : vmctx->vm_handlers )
                     if ( vm_handler.profile && vm_handler.profile->name == vinstr.name )
                         return false;

                 std::printf( "[!] this vm protected file does not have the vm handler for: %s...\n",
                              vinstr.name.c_str() );

                 return true;
             } );

         return result == label_data->vinstrs.end();
     } ) )
{
    std::printf( "[!] binary does not have the required vm handlers...\n" );
    exit( -1 );
}

На любителя, как по мне :D Не хотел бы такое наблюдать в ВПО.
я изначально хотел написать что на стороне сервера то можно конечно, но потом передумал
 
Пожалуйста, обратите внимание, что пользователь заблокирован
На любителя, как по мне :D Не хотел бы такое наблюдать в ВПО.
Если издали смотреть, так чтобы конкретных символов не было видно, была только структура заметна, то очень похоже на код на Расте. Не знаю, хорошо это или плохо в объективном плане, но я за это Раст не долюбливаю. Ну и да, синтаксис для лямбд у плюсов конечно отвратительный.
 
Еще раз повторюсь - в статье писал не что Си круче С++ (хотя он реально круче), а что для начинающего лучше учиться с Си. Си проще, это чистый код. Учить кодинг с плюсов (или шарпа), это примерно как объяснить человеку, что лампочка горит потому что Бог так захотел. А потом объяснять про электроны. Человек хочет взять и писать малварь , а вы ему предлагаете зачем-то учить ООП инкапсуляцию и все такое. Он же не в офис пойдет на работу.
Послушайте, я могу познакомить вас с создателем C ++, и он объяснит вам, почему C плох для новичков.

Причина, по которой я нахожусь в состоянии войны с вами, заключается в том, что вы сказали, что C ++ не дает преимуществ перед C. Это неправда, потому что многие компании инвестировали в C ++, а они нет, если C ++ не предлагает преимуществ.

Идеальный способ - C ++ -> C -> ASM

Это 21 век. Вещи разные. У людей разный мозг. Это не то же самое, что 90-е. В 90-х вы переходите с ASM на C или что-то еще.
 
Последнее редактирование:
Пожалуйста, обратите внимание, что пользователь заблокирован
Послушайте, я могу познакомить вас с создателем C ++, и он объяснит вам, почему C плох для новичков.
А, конечно, ты у нас оказывается - еще один, который свечку держал... наверное, у тебя тоже зарплата 30к в месяц и вышка по прикладной математике. Ну здорово, предлагаю тебе Бьёрном устроить турне по рассейским вузам и объяснить тамошним руководителям, что учить программированию нужно с С++, а не с Питона и Джавы, или боже упоси с Сишечки или Паскаля.
 
thatsmyname вайт просто :) Понятно, что там актуален такой код:
C++:
if ( !parse_t::get_instance()->for_each( [ & ]( _vlabel_meta *label_data ) -> bool {
         std::printf( "> checking label %s for invalid instructions... number of instructions = %d\n",
                      label_data->label_name.c_str(), label_data->vinstrs.size() );

         const auto result = std::find_if(
             label_data->vinstrs.begin(), label_data->vinstrs.end(),
             [ & ]( const _vinstr_meta &vinstr ) -> bool {
                 std::printf( "> vinstr name = %s, has imm = %d, imm = 0x%p\n", vinstr.name.c_str(),
                              vinstr.has_imm, vinstr.imm );

                 for ( auto &vm_handler : vmctx->vm_handlers )
                     if ( vm_handler.profile && vm_handler.profile->name == vinstr.name )
                         return false;

                 std::printf( "[!] this vm protected file does not have the vm handler for: %s...\n",
                              vinstr.name.c_str() );

                 return true;
             } );

         return result == label_data->vinstrs.end();
     } ) )
{
    std::printf( "[!] binary does not have the required vm handlers...\n" );
    exit( -1 );
}

На любителя, как по мне :D Не хотел бы такое наблюдать в ВПО.
printf - это стиль C и небезопасный тип.

Да, я видел эту базу кода раньше. Это 90% чистый современный C ++, но есть вероятность 10% плохого стиля C, потому что он бывший программист C

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

Например, Like Async API, которые часто используют лямбда.

Код:
std::cout <<  "[!] this vm protected file does not have the vm handler for: " <<  vinstr.name << "..." << "\n"
std::cout <<  "[!] binary does not have the required vm handlers.." << "\n";

C++20

std::format

 
Последнее редактирование:
А, конечно, ты у нас оказывается - еще один, который свечку держал... наверное, у тебя тоже зарплата 30к в месяц и вышка по прикладной математике. Ну здорово, предлагаю тебе Бьёрном устроить турне по рассейским вузам и объяснить тамошним руководителям, что учить программированию нужно с С++, а не с Питона и Джавы, или боже упоси с Сишечки или Паскаля.
Я думаю, вы пропустили то, что я сказал. Я сказал, что разработчикам новых вредоносных программ следует начинать с C ++, а новичкам, не знакомым с программированием, следует начинать с Python или Javascript. Я бы предпочел Javascript, поскольку знания JS не тратятся зря, и вы можете напрямую протестировать его в консоли браузера. Python просто чокнутый, мне действительно не нравятся языки с пробелами, но это нормально.
 
Пожалуйста, обратите внимание, что пользователь заблокирован
printf - это стиль C и небезопасный тип
Кстати iostream - это еще одна забавная дрочь в С++. В частности, там используются статические конструкторы, то есть, если ты подключил хедер, но не использовал нигде функции из него, то все равно получишь вкомпиленный конструктор. Потом endl флашит стрим, что сказывается на производительности, поэтому многие рекомендуют просто \n писать вместо endl, если тебе не нужно флашить стрим. std::format конечно получше, но тут мы опять получаем некоторый оверхед засчет выделения строки на куче перед ее выводом.

Я бы предпочел Javascript, поскольку знания JS не тратятся зря, и вы можете напрямую протестировать его в консоли браузера.
Да, а джаваскрипт то ни разу не "чёкнутый" с его слабой типизацией?
 
Кстати iostream - это еще одна забавная дрочь в С++. В частности, там используются статические конструкторы, то есть, если ты подключил хедер, но не использовал нигде функции из него, то все равно получишь вкомпиленный конструктор. Потом endl флашит стрим, что сказывается на производительности, поэтому многие рекомендуют просто \n писать вместо endl, если тебе не нужно флашить стрим. std::format конечно получше, но тут мы опять получаем некоторый оверхед засчет выделения строки на куче перед ее выводом.


Да, а джаваскрипт то ни разу не "чёкнутый" с его слабой типизацией?
Меня совершенно не волнует производительность вредоносных программ, кроме шкафчиков. Средняя производительность C ++ для вредоносных программ достаточно хорошая и достаточно быстрая.

Javascript подвержен ошибкам, как и C, но все же находится на более высоком уровне, поэтому он полезен для всех новичков, чтобы узнать, что набирает утка.

Затем, когда они переходят на C ++, они могут узнать, что им предлагает строгая типизация.

JS -> C ++ - плавный путь.
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Меня совершенно не волнует производительность вредоносных программ, кроме шкафчиков.
Да, шкафчики должны быть быстрыми, они же... шкафчики.
6fded07684fafe14256c4c319c1fcd41.jpg


он полезен для всех новичков, чтобы узнать, что набирает утка
Хорошо, что хоть кто-то следит за тем, что набирают эти утки. Ты же знаешь уток, у них вечно какой-то заговор готовится.
20161020-6-3dod7z.jpg
 
Меня совершенно не волнует производительность вредоносных программ, кроме шкафчиков. Средняя производительность C ++ для вредоносных программ достаточно хорошая и достаточно быстрая.
Javascript подвержен ошибкам, как и C, но все же находится на более высоком уровне, поэтому он полезен для всех новичков, чтобы узнать, что набирает утка.
Затем, когда они переходят на C ++, они могут узнать, что им предлагает строгая типизация.
JS -> C ++ - плавный путь.
Write in English, please. Your Google Translate is terrible.

1627162328892.png
 
Последнее редактирование:
Write in English, please. Your Google Translate is terrible.

[ATTACH = full] 25002 [/ ATTACH]
My written English is worse. I have grammatical and sentence structuring issues, mainly, because I focused on speech rather writing.

I said most malware doesn't require fast performance other than lockers. A normally written Modern C ++ malware is good enough and fast enough.

For lockers, you can use optimization tricks for C ++ to make it faster and beat the C lockers. Most lockers in market don't leverage parallelism to it's fullest.

I think that's because C code has long lines and hard to reason clearly. You can look at parallel languages like Erlang and those languages has lesser lines.

C ++ has some unique parallel frameworks that's hard to find in C.

One of those is https://www.actor-framework.org/ which adds Actor model to C ++

A lot of high frequency trading firms use C ++ not C because C ++ offer more opportunities for optimization. They don't want to compromise the abstraction C ++ offer.

Most parts of Modern C ++ and the STL is designed by Alexander Stepanov (Russian). Rust and Swift is based on Stepanov's proposals (Elements of Programming 2009) he made to C ++.

C ++ has less lines and you can reason fairly quickly about the code.

JavaScript is error prone just like C, but it's still a high level language, and you can get instant output than waiting for C program to compile.

You can open your browser devtools -> console and type JS and you can play around it.

It's useful for newbies to discover what's weakly typing & duck typing using Javascript and then when they switch to C ++, they can discover what's strong typing.

JS -> C ++ -> C -> ASM is a great path for those new to programming. As far as ASM goes, I prefer ARM ASM as the future is ARM, not Intel or AMD.

I'm using Typescript for panels but my JS knowledge is not wasted. Moreover, JS can teach you to think Async and it's useful for C ++ Lambdas & Futures.
 
Последнее редактирование:
Man, I'm packing everyone on your sipluses, why are you tearing up your ass like that? Write on what you want, even on paper.
Quake3,
Why not C ++? Because it has no advantages over pure C in the context of the task we need, and learning OOP and new standards from 0 is unrealistic (and pointless).

30 min - 1 hr

https://github.com/AnthonyCalandra/modern-cpp-features


This woman has more brains than Quake3 and the rest of the C programmers.

Look at Russia vs Japan. Japan is more efficient than Russia and rest of world. C++ is efficient than any other languages.


alexi.PNG
 
Последнее редактирование:
Look at Russia vs Japan. Japan is more efficient than Russia and rest of world. C++ is efficient than any other languages.
Jap is famous for its overtime, efficiency is not a quality. Why did you decide to dump the water from the reactor into the ocean? Stupid Japs, this is not an indicator of efficiency...
 
Пожалуйста, обратите внимание, что пользователь заблокирован
Мужик так радеет за местных разрабов, чтобы те писали современную, эффективную малварь на плюсах, а вы не цените. Вот это дружба народов. А если серьезно, то в идеале, чтобы решить этот спор нужно два исходника одной и той же малвари на C и C++ , чтобы было что обсуждать показательно (и то всегда можно докопаться, что это разраб накосячил, а не религия язык плохой). В общем, очередной холивар вокруг языка.
 
I'm just reminding you of the "lost decade" and the Japanese financial bubble, the consequences of which are still being dealt with (I don't want to get political, but still)
I think this is more about subject by it self not nationality. crunching is not good, for malware u need creativity and sometimes madness to make a rly good product.
 
Пожалуйста, обратите внимание, что пользователь заблокирован
My written English is worse.
Энд йор эсс из бёрнинг.

This woman has more brains than Quake3 and the rest of the C programmers.
Бат хёр эсс из нот бёрнинг лайк йорс.

Look at Russia vs Japan. Japan is more efficient than Russia and rest of world. C++ is efficient than any other languages.
Ин мазер Раша ви код ин Цэ, ноуан гивз э шит эбаут Жапань, Жапань хез но кулхацкерз, вайл маза Раша хез э лот.
 
unbalance
Japan's GDP is 5 Trillion USD. Russia's GDP average is 2.3 Trillion USD.
Japan's land size is 145,937 mi² and Russia's land size is 6.612 million mi²
Japan population is 126.3 million whereas Russia's 144.4 million

I call this as efficient for a small island like Japan. If Russia fully utilize it's potential, it would be 50 USD trillion economy.

The Japanese have both quality and efficiency now. Decades ago, they had terrible product quality, but they learn quickly from mistakes. I attribute Zen to their success.

DildoFagins

Why do you want to burn my and her asses?

>In maser Russia vi code in Tse, nouan givz e shit ebout Japan, Japan hez no kulkhatskerz, vile maza Russia hez e lot.

In mother Russia we code in C, We don't give shit about Japan, Japan has no Nikolai Kulchitsky, ("vile maza"??) Russia has a lot
 


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