pack.yml schema standartization#3
Conversation
added download_sigma.py
|
Thanks a lot for this PR. I really appreciate the work here, and I think the direction is useful. I checked the Rustinel engine side as well to understand how this should fit. Today Rustinel does not load
So I think the best contract for now is: I like the idea of making the schema more flexible, especially The part I am less sure about is making generated symlinks and generated IOC One concrete thing I noticed: the PR currently writes flat Would you be open to adjusting the PR in that direction: keep the schema improvements, but keep generated/runtime files as build output rather than source files? |
|
Hey @Karib0u , thanks for the comment!
That is fine with us, I can do the changes that remove the symlinks and generated files. This was more just a demo of how it could look like if the repo structure already was a zippable pack folder without any tool call needed.
Yes, as I explain in the PR description, this change is so that it is actually easier to take a zipped pack and make it a rustinel rules folder. With this change, your rules folder will look like
Definitely, as I wrote you in message, this PR is aimed mainly so that we sync the schema between our projects -- to make sure that all our needs and ideas are covered, so our packs are as compatible as possible. Let me know what you think! Also, are there any plans to change the IoCs loading structure in rustinel? If it would support the IoCs .yaml files in the format as currently in this repo, it would make it more transparent, rather than having to convert to .txt every time (with metadata lost). |
|
Thanks, that makes sense. I am fine with removing the symlinks/generated files from On the layout: I see your point now. If the intended install path is: then the flat pack artifact is reasonable and probably nicer than: So I am okay with that direction, as long as we make the contract consistent everywhere:
For IOC loading in Rustinel: no concrete plan yet, but I agree with the idea. The current I think the best approach would be backward-compatible support in Rustinel:
That probably belongs as a separate Rustinel engine change, not a blocker for this PR. For this PR, I think we can keep generating the |
|
Allright. I have removed all the symlinks and pre-generated IoC The PR should now be clean and ready to merge! |
|
Thanks! Removing the symlinks and generated files from I approved and checked the workflows. A few issues remain before merging:
The atomic failures appear to come from The old nested paths also remain in I also noticed a few smaller points:
Once these are addressed and the workflows are green, I think it will be ready to merge. |
# Conflicts: # docs/usage.md
|
Thanks for the review! I have done all the changes, all validations and formatters are passing locally and in our GH actions pipeline. |
Hi,
this PR updates the
pack.yamlformat to be more extensible and compatible with Radegast use-cases.pack.yaml format changes
has,includes,excludessigma,yara,ioc)has- same as therulesbefore, says which rules are included in this packincludes- when extending, explicitly take only these rulesexcludes- when extending, explicidly do not take these rulesFor Radegast, we plan to use extension widely, but we often want to omit some high-noice rules.
manual- same as sources now, manual URL address of the sourcesigma- link e.g. to path in GitHub repo for automatic download of rules from that pathyara- same assigma, but foryarazip/pack folder structure change
pack.yamland arulessubfolderrulessubfolder was moved next to thepackyaml, which means that if you zip the whole pack folder you get a fully functional copy of the rustinel rules folderrustinel/rules/<package>/rules/structure, which seems unnecessaryadded tooling
link_packs.py- converts the oldpack.ymlformat to the new format + createst symlinks of all package rules for easier packagingupload_radegast.py- adds an automatic uploading of buitl rules directly into Radegast console for anybody to use, in future this can be handled by GitHub actionfurther notes