Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

changing project properties to make them fit better #76

Closed
wants to merge 1 commit into from
Closed

changing project properties to make them fit better #76

wants to merge 1 commit into from

Conversation

nblog
Copy link
Contributor

@nblog nblog commented Jan 22, 2024

  1. Replace with a reference to the "bson" project.
  2. Remove "libyara", provided by nuget (https://www.nuget.org/packages/Microsoft.O365.Security.Native.Libyara/)
  3. switch "bson" and "loader" projects to v141_xp(Part of the configuration is v141_xp, but it's messy)

2. Remove "libyara", provided by nuget (https://www.nuget.org/packages/Microsoft.O365.Security.Native.Libyara/)
3. switch "bson" and "loader" projects to v141_xp (default SDK 7.0)
@kevoreilly
Copy link
Owner

Thank you for the pull request. The idea to switch to nuget libyara is interesting - what motivated you to do this? Unfortunately their build is 9 months old so it's too outdated to replace the manually built one I'm afraid.

@nblog
Copy link
Contributor Author

nblog commented Mar 7, 2024

This repository is sourced from Microsoft and is guaranteed upstream, both in terms of usability and stability.

Another main reason is that the linking method uses lib\libyaraXX.lib, which can lead to inconsistencies between the version of the runtime library and the yara-lib runtime library due to different versions of VS.

@kevoreilly
Copy link
Owner

That sounds great - by guaranteed upstream you mean it is the latest release (4.5.0) or even the latest commit to master?

I'm concerned that on the NuGet Gallery page it states Last updated 9 months ago

@nblog
Copy link
Contributor Author

nblog commented Mar 7, 2024

It comes from https://github.com/Microsoft/libyara.NET and it doesn't seem that Microsoft has updated it, maybe I'm trusting Microsoft too much😂, but to solve the runtime library conflict problem, I could modify it to reference libyara in source form, depending on which way you want to accept it?

@kevoreilly
Copy link
Owner

I'm not sure I follow - what runtime library conflict?

@nblog
Copy link
Contributor Author

nblog commented Mar 8, 2024

The compiled lib\libyara64.lib is bound by the C run-time library (CRT) and (/MD or /MDd) or (/MT or /MTd), which prevents arbitrary switching.

@kevoreilly
Copy link
Owner

Arbitrary switching?! What is that and why would the project benefit?

If it is intended for convenience to switch to an unsupported compiler, then unfortunately it's not an issue which needs fixing. The project focuses strongly on detonation quality which is demonstrably weakened by other compilers e.g. #61

@nblog
Copy link
Contributor Author

nblog commented Mar 11, 2024

This is indeed a problem, we can wait for the problem to be solved before tweaking it, leaving it in the open for now might help with issues like #71 .

@kevoreilly
Copy link
Owner

There exists a problem with using VS2022, hence why this compiler is not supported. However this is not a capemon issue, so it's not an issue for this project.

The important point here is detonation quality is the only criterion for a valid issue, and there are currenrly no plans for VS2022 ever being supported.

@kevoreilly kevoreilly closed this Mar 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants