Skip to content

Commit

Permalink
Merge branch 'v3-beta', remote-tracking branch 'origin' into dev
Browse files Browse the repository at this point in the history
  • Loading branch information
ehsandeep committed Oct 16, 2023
3 parents c46457c + d051332 + ab0f0ea commit 32de68d
Show file tree
Hide file tree
Showing 390 changed files with 16,002 additions and 1,412 deletions.
17 changes: 13 additions & 4 deletions .github/workflows/build-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
name: Test Builds
strategy:
matrix:
go-version: [1.20.x]
go-version: [1.21.x]
os: [ubuntu-latest, windows-latest, macOS-latest]

runs-on: ${{ matrix.os }}
Expand All @@ -22,6 +22,11 @@ jobs:
with:
go-version: ${{ matrix.go-version }}

- name: Set up Python # required for running python code in py-snippet.yaml integration test
uses: actions/setup-python@v4
with:
python-version: '3.10'

- name: Check out code
uses: actions/checkout@v3

Expand Down Expand Up @@ -56,6 +61,10 @@ jobs:
run: go run -race . -l ../functional-test/targets.txt -id tech-detect,tls-version
working-directory: v2/cmd/nuclei/

- name: Example Code Tests
run: go build .
working-directory: v2/examples/
- name: Example SDK Simple
run: go run .
working-directory: v2/examples/simple/

- name: Example SDK Advanced
run: go run .
working-directory: v2/examples/advanced/
2 changes: 1 addition & 1 deletion .github/workflows/functional-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:
- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: 1.20.x
go-version: 1.21.x

- name: Check out code
uses: actions/checkout@v3
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/lint-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: 1.20.x
go-version: 1.21.x

- name: Checkout code
uses: actions/checkout@v3
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/performance-test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ jobs:
name: Test Performance
strategy:
matrix:
go-version: [1.20.x]
go-version: [1.21.x]
os: [ubuntu-latest, macOS-latest]

runs-on: ${{ matrix.os }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/publish-docs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:
- name: "Set up Go"
uses: actions/setup-go@v4
with:
go-version: 1.20.x
go-version: 1.21.x

- name: Generate YAML Syntax Documentation
id: generate-docs
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release-binary.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ jobs:

- uses: actions/setup-go@v4
with:
go-version: 1.20.x
go-version: 1.21.x

- uses: goreleaser/goreleaser-action@v4
with:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ jobs:
- name: Set up Go
uses: actions/setup-go@v4
with:
go-version: 1.20.x
go-version: 1.21.x

- name: release test
uses: goreleaser/goreleaser-action@v4
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/template-validate.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ jobs:
- uses: actions/checkout@v3
- uses: actions/setup-go@v4
with:
go-version: 1.20.x
go-version: 1.21.x

- name: Template Validation
run: |
Expand Down
7 changes: 7 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -17,4 +17,11 @@ v2/pkg/protocols/common/helpers/deserialization/testdata/ValueObject.class
v2/pkg/protocols/common/helpers/deserialization/testdata/ValueObject2.ser
*.exe
v2/.gitignore
v2/pkg/js/devtools/bindgen/cmd/bindgen
v2/pkg/js/devtools/jsdocgen/jsdocgen
bindgen
jsdocgen
nuclei
v2/scrapefuncs
*.DS_Store
v2/pkg/protocols/headless/engine/.cache
11 changes: 7 additions & 4 deletions DEBUG.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,9 +34,12 @@ When this flag is provided, nuclei will log all errors to the file specified. Th

Nuclei was built with some environment variables in mind to help with debugging. These environment variables can be set to enable debugging of a particular component/functionality for nuclei.

| Environment Variable | Description |
| ---------------------- | -------------------------------------------------------- |
| `DEBUG=true` | Enables Printing Stack Traces for all errors |
| `SHOW_DSL_ERRORS=true` | Enables Printing DSL Errors (that are hidden by default) |
| Environment Variable | Description |
| -------------------------------- | -------------------------------------------------------- |
| `DEBUG=true` | Enables Printing Stack Traces for all errors |
| `SHOW_DSL_ERRORS=true` | Enables Printing DSL Errors (that are hidden by default) |
| `HIDE_TEMPLATE_SIG_WARNING=true` | Hides Template Signature Verification Warnings |
| `NUCLEI_LOG_ALL=true` | Log All Events that were skipped in verbose mode |



2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Build
FROM golang:1.20.6-alpine AS build-env
FROM golang:1.21-alpine AS build-env
RUN apk add build-base
WORKDIR /app
COPY . /app
Expand Down
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@

---

Nuclei is used to send requests across targets based on a template, leading to zero false positives and providing fast scanning on a large number of hosts. Nuclei offers scanning for a variety of protocols, including TCP, DNS, HTTP, SSL, File, Whois, Websocket, Headless etc. With powerful and flexible templating, Nuclei can be used to model all kinds of security checks.
Nuclei is used to send requests across targets based on a template, leading to zero false positives and providing fast scanning on a large number of hosts. Nuclei offers scanning for a variety of protocols, including TCP, DNS, HTTP, SSL, File, Whois, Websocket, Headless, Code etc. With powerful and flexible templating, Nuclei can be used to model all kinds of security checks.

We have a [dedicated repository](https://github.com/projectdiscovery/nuclei-templates) that houses various type of vulnerability templates contributed by **more than 300** security researchers and engineers.

Expand All @@ -56,7 +56,7 @@ We have a [dedicated repository](https://github.com/projectdiscovery/nuclei-temp

# Install Nuclei

Nuclei requires **go1.20** to install successfully. Run the following command to install the latest version -
Nuclei requires **go1.21** to install successfully. Run the following command to install the latest version -

```sh
go install -v github.com/projectdiscovery/nuclei/v2/cmd/nuclei@latest
Expand Down Expand Up @@ -146,8 +146,8 @@ FILTERING:
-em, -exclude-matchers string[] template matchers to exclude in result
-s, -severity value[] templates to run based on severity. Possible values: info, low, medium, high, critical, unknown
-es, -exclude-severity value[] templates to exclude based on severity. Possible values: info, low, medium, high, critical, unknown
-pt, -type value[] templates to run based on protocol type. Possible values: dns, file, http, headless, tcp, workflow, ssl, websocket, whois
-ept, -exclude-type value[] templates to exclude based on protocol type. Possible values: dns, file, http, headless, tcp, workflow, ssl, websocket, whois
-pt, -type value[] templates to run based on protocol type. Possible values: dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code
-ept, -exclude-type value[] templates to exclude based on protocol type. Possible values: dns, file, http, headless, tcp, workflow, ssl, websocket, whois, code
-tc, -template-condition string[] templates to run based on expression condition

OUTPUT:
Expand Down Expand Up @@ -379,7 +379,7 @@ We have [a discussion thread around this](https://github.com/projectdiscovery/nu

### Using Nuclei From Go Code

Examples of using Nuclei From Go Code to run templates on targets are provided in the [examples](v2/examples/) folder.
Complete guide of using Nuclei as Library/SDK is available at [lib](v2/lib/README.md)


### Resources
Expand Down
2 changes: 1 addition & 1 deletion README_CN.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ Nuclei使用零误报的定制模板向目标发送请求,同时可以对主

# 安装Nuclei

Nuclei需要**go1.20**才能安装成功。执行下列命令安装最新版本的Nuclei
Nuclei需要**go1**才能安装成功。执行下列命令安装最新版本的Nuclei

```sh
go install -v github.com/projectdiscovery/nuclei/v2/cmd/nuclei@latest
Expand Down
2 changes: 1 addition & 1 deletion README_ID.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ Kami memiliki [repositori khusus](https://github.com/projectdiscovery/nuclei-tem

# Instalasi Nuclei

Nuclei membutuhkan **go1.20** agar dapat diinstall. Jalankan perintah berikut untuk menginstal versi terbaru -
Nuclei membutuhkan **go1.21** agar dapat diinstall. Jalankan perintah berikut untuk menginstal versi terbaru -

```sh
go install -v github.com/projectdiscovery/nuclei/v2/cmd/nuclei@latest
Expand Down
2 changes: 1 addition & 1 deletion README_KR.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ Nuclei는 템플릿을 기반으로 대상 간에 요청을 보내기 위해 사

# 설치

Nuclei를 성공적으로 설치하기 위해서 **go1.20**가 필요합니다. 다음 명령을 실행하여 최신 버전을 설치합니다.
Nuclei를 성공적으로 설치하기 위해서 **go1.21**가 필요합니다. 다음 명령을 실행하여 최신 버전을 설치합니다.

```sh
go install -v github.com/projectdiscovery/nuclei/v2/cmd/nuclei@latest
Expand Down
22 changes: 0 additions & 22 deletions SYNTAX-REFERENCE.md
Original file line number Diff line number Diff line change
Expand Up @@ -2820,28 +2820,6 @@ StopAtFirstMatch stops the execution of the requests and template as soon as a m
</div>
<div class="dt">

Fuzzing describes schema to fuzz headless requests

</div>

<hr />

<div class="dd">

<code>cookie-reuse</code> <i>bool</i>

</div>
<div class="dt">

CookieReuse is an optional setting that enables cookie reuse

</div>

<hr />





## engine.Action
Action is an action taken by the browser to reach a navigation
Expand Down
19 changes: 19 additions & 0 deletions docs/getting-started/running.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -178,6 +178,25 @@ export AZURE_CONTAINER_NAME=templates

</AccordionGroup>

Environment variables can also be provided to disable download from default and custom template locations:

```bash
# Disable download from the default nuclei-templates project
export DISABLE_NUCLEI_TEMPLATES_PUBLIC_DOWNLOAD=true

# Disable download from public / private GitHub project(s)
export DISABLE_NUCLEI_TEMPLATES_GITHUB_DOWNLOAD=true

# Disable download from public / private GitLab project(s)
export DISABLE_NUCLEI_TEMPLATES_GITLAB_DOWNLOAD=true

# Disable download from public / private AWS Bucket(s)
export DISABLE_NUCLEI_TEMPLATES_AWS_DOWNLOAD=true

# Disable download from public / private Azure Blob Storage
export DISABLE_NUCLEI_TEMPLATES_AZURE_DOWNLOAD=true
```

Once the environment variables are set, following command to download the custom templates:

```bash
Expand Down
10 changes: 3 additions & 7 deletions docs/mint.json
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@
"template-guide/introduction",
"template-guide/template-details",
{
"group":"HTTP",
"group":"HTTPs",
"pages":[
"template-guide/http/base-http",
"template-guide/http/raw-http",
Expand All @@ -71,6 +71,8 @@
"template-guide/network",
"template-guide/dns",
"template-guide/file",
"template-guide/javascript",
"template-guide/code",
{
"group":"Operators",
"pages":[
Expand Down Expand Up @@ -140,11 +142,5 @@
"feedback":{
"thumbsRating":true,
"suggestEdit":true
},
"api":{
"auth":{
"method":"key",
"name":"X-API-KEY"
}
}
}
Loading

0 comments on commit 32de68d

Please sign in to comment.