nuclei/pkg/tmplexec
Tarun Koyalwar 619396a6b8
flow: flatten dynamic values array if len is 1 (#4625)
* flow: flatten dynamic values array if len is 1

* wait for exporters when closing

* misc updates
2024-01-13 00:44:25 +05:30
..
flow flow: flatten dynamic values array if len is 1 (#4625) 2024-01-13 00:44:25 +05:30
generic introduce scan context (#4373) 2023-11-28 00:24:45 +05:30
multiproto introduce scan context (#4373) 2023-11-28 00:24:45 +05:30
README.md nuclei v3 : misc updates (#4247) 2023-10-17 17:44:13 +05:30
doc.go nuclei v3 : misc updates (#4247) 2023-10-17 17:44:13 +05:30
exec.go fix missing results in flow template + feature: internal matchers using `internal: true` (#4582) 2024-01-08 05:12:11 +05:30
interface.go introduce scan context (#4373) 2023-11-28 00:24:45 +05:30

README.md

tmplexec

tmplexec also known as template executer executes template it is different from protocols package which only contains logic within the scope of one protocol. tmplexec is resposible for executing Template with defined logic. with introduction of multi protocol and flow templates (deprecated package protocols/common/executer) did not seem appropriate/helpful anymore as it is outside of protocol scope and deals with execution of template which can contain 1 requests , or multiple requests of same protocol or multiple requests of different protocols. tmplexec is responsible for executing template and handling all logic related to it.

Engine/Backends

Currently there are 3 engines for template execution

  • Generic => executes request[s] of same/one protocol
  • MultiProtocol => executes requests of multiple protocols with shared logic between protocol requests see multiprotocol
  • Flow => executes requests of one or multiple protocol requests as specified by template in javascript (aka flow) flow