修复一个导致崩溃的问题
This commit is contained in:
@@ -475,6 +475,24 @@ std::vector<double> MachineLearning::ExtractFeatures(const uint8_t* buffer,
|
||||
|
||||
// 提取所有特征
|
||||
std::vector<double> allFeatures;
|
||||
const size_t EXPECTED_PROPERTY_FEATURES = 14; // 14个布尔值属性
|
||||
const size_t EXPECTED_LIBRARY_FEATURES = 150; // _libraries数组大小
|
||||
const size_t EXPECTED_ENTROPY_FEATURES = 1; // 文件熵
|
||||
const size_t EXPECTED_ENTRYPOINT_FEATURES = 64; // EncodeEntrypoint实际使用64字节
|
||||
const size_t EXPECTED_SECTION_FEATURES = 5; // EncodeSections实际返回5个特征
|
||||
const size_t EXPECTED_RATIO_FEATURES = 1; // 代码比率
|
||||
const size_t EXPECTED_SECTION_COUNT_FEATURES = 1; // 节区数量
|
||||
|
||||
const size_t TOTAL_EXPECTED_FEATURES =
|
||||
EXPECTED_PROPERTY_FEATURES +
|
||||
EXPECTED_LIBRARY_FEATURES +
|
||||
EXPECTED_ENTROPY_FEATURES +
|
||||
EXPECTED_ENTRYPOINT_FEATURES +
|
||||
EXPECTED_SECTION_FEATURES +
|
||||
EXPECTED_RATIO_FEATURES +
|
||||
EXPECTED_SECTION_COUNT_FEATURES;
|
||||
|
||||
allFeatures.reserve(TOTAL_EXPECTED_FEATURES);
|
||||
|
||||
// 1. PE段属性
|
||||
std::vector<double> propFeatures =
|
||||
@@ -512,7 +530,6 @@ std::vector<double> MachineLearning::ExtractFeatures(const uint8_t* buffer,
|
||||
|
||||
// 清理资源
|
||||
peconv::free_pe_buffer(peBuffer);
|
||||
|
||||
return allFeatures;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user