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

Insufficient Fix for #2698 #3166

Closed
zy9ard3 opened this issue Jan 7, 2023 · 4 comments · Fixed by #3211
Closed

Insufficient Fix for #2698 #3166

zy9ard3 opened this issue Jan 7, 2023 · 4 comments · Fixed by #3211
Assignees
Labels
Status: Completed Nothing further to be done with this issue. Awaiting to be closed. Type: Bug Inconsistencies or issues which will cause an issue or problem for users or implementors.
Milestone

Comments

@zy9ard3
Copy link

zy9ard3 commented Jan 7, 2023

Nuclei version:

latest ==> 2.8.6

Current Behavior :

The fix for #2698 seems insufficient as the engine still encoding some chars like ; and breaking the necessary payloads like ( i.e : xyzwhatever;alert(1) , 1;WAITFOR+DELAY+'0:0:12'-- )

Expected Behavior :

Fix can be enhanced with respect to the below chars like Burpsuite

210573930-89c6da1d-63f6-464f-95ca-5448064c0865

@zy9ard3 zy9ard3 added the Type: Bug Inconsistencies or issues which will cause an issue or problem for users or implementors. label Jan 7, 2023
@tarunKoyalwar tarunKoyalwar self-assigned this Jan 9, 2023
@tarunKoyalwar tarunKoyalwar added Type: Question A query or seeking clarification on parts of the spec. Probably doesn't need the attention of all. Investigation Something to Investigate and removed Type: Bug Inconsistencies or issues which will cause an issue or problem for users or implementors. labels Jan 9, 2023
@tarunKoyalwar
Copy link
Member

@zy9ard3 , If you look into URL encoding RFC etc . You will see that ; is reserved character

Reserved  Characters
 ! * ' ( ) ; : @ & = + $ , / ? % # [ ] 

These are reserved characters which are used for parsing urls and other stuff .

Above PR Introduced helper functions and option to only encode given characters (similar to above screenshot) .To implement something like this in nuclei a new field needs to introduced either to template or CLI option and before this PR all characters were url encoded and there weren't any major issues with that behaviour. but still its something worth to investigate and discuss

@tarunKoyalwar tarunKoyalwar linked a pull request Jan 17, 2023 that will close this issue
4 tasks
@tarunKoyalwar tarunKoyalwar added Type: Bug Inconsistencies or issues which will cause an issue or problem for users or implementors. and removed Type: Question A query or seeking clarification on parts of the spec. Probably doesn't need the attention of all. Investigation Something to Investigate labels Jan 20, 2023
@tarunKoyalwar
Copy link
Member

  • reserved characters are not encoded anymore
  • #,/,?,= are used as seperators for parsing URLs and cannot be used without encoding in payload

@zy9ard3
Copy link
Author

zy9ard3 commented Jan 20, 2023

@tarunKoyalwar

Thanks for the Acknowledgement !!

Apart from the above ones, can we use other characters like ; as normal in upcoming releases ???

@tarunKoyalwar
Copy link
Member

tarunKoyalwar commented Jan 20, 2023

@zy9ard3 , yes ; and other special chars/symbols , it will also handle non ASCII chars (ex chinese etc) , whitespaces or control characters , If it is a crafted payload (waf bypass with some encoding etc ) . it will not process them/encode and keep it the same.

@ehsandeep ehsandeep added the Status: Completed Nothing further to be done with this issue. Awaiting to be closed. label Jan 24, 2023
@ehsandeep ehsandeep added this to the nuclei v2.8.8 milestone Jan 24, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Status: Completed Nothing further to be done with this issue. Awaiting to be closed. Type: Bug Inconsistencies or issues which will cause an issue or problem for users or implementors.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants