-
-
Notifications
You must be signed in to change notification settings - Fork 727
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
[Websocket Passive Scan] Script Mechanism #1718
Conversation
b92ab30
to
8c921b9
Compare
Some comments which discussed with @thc202 in IRC addressed |
src/org/zaproxy/zap/extension/websocket/pscan/scripts/ScriptsWebSocketPassiveScanner.java
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Still need to try out the code - aiming to do that asap ;)
src/org/zaproxy/zap/extension/websocket/pscan/WebSocketPassiveScanThread.java
Outdated
Show resolved
Hide resolved
src/org/zaproxy/zap/extension/websocket/pscan/scripts/ScriptsWebSocketPassiveScanner.java
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just tried it and it works really well - good work!
A couple of minor points from me, as mentioned above.
231d746
to
a239cb5
Compare
@psiinon 's and LGTM suggestion addressed. |
a239cb5
to
65942d2
Compare
This pull request introduces 9 alerts when merging 65942d2 into 7cd4f60 - view on LGTM.com new alerts:
Comment posted by LGTM.com |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A bit of feedback after a quick skim....
src/org/zaproxy/zap/extension/websocket/ExtensionWebSocket.java
Outdated
Show resolved
Hide resolved
src/org/zaproxy/zap/extension/websocket/alerts/WebSocketAlertWrapper.java
Outdated
Show resolved
Hide resolved
src/org/zaproxy/zap/extension/websocket/alerts/WebSocketPassiveScanAlert.java
Outdated
Show resolved
Hide resolved
...ension/websocket/files/scripts/templates/websocketpassive/Passive WebSocket Scan Template.js
Outdated
Show resolved
Hide resolved
...ension/websocket/files/scripts/templates/websocketpassive/Passive WebSocket Scan Template.js
Outdated
Show resolved
Hide resolved
...ension/websocket/files/scripts/templates/websocketpassive/Passive WebSocket Scan Template.py
Outdated
Show resolved
Hide resolved
...ension/websocket/files/scripts/templates/websocketpassive/Passive WebSocket Scan Template.py
Outdated
Show resolved
Hide resolved
...ension/websocket/files/scripts/templates/websocketpassive/Passive WebSocket Scan Template.js
Outdated
Show resolved
Hide resolved
...ension/websocket/files/scripts/templates/websocketpassive/Passive WebSocket Scan Template.js
Outdated
Show resolved
Hide resolved
...ension/websocket/files/scripts/templates/websocketpassive/Passive WebSocket Scan Template.py
Outdated
Show resolved
Hide resolved
65942d2
to
e7c2af0
Compare
...ension/websocket/files/scripts/templates/websocketpassive/Passive WebSocket Scan Template.js
Outdated
Show resolved
Hide resolved
...ension/websocket/files/scripts/templates/websocketpassive/Passive WebSocket Scan Template.py
Outdated
Show resolved
Hide resolved
src/org/zaproxy/zap/extension/websocket/pscan/scripts/ScriptsWebSocketPassiveScanner.java
Outdated
Show resolved
Hide resolved
...ension/websocket/files/scripts/templates/websocketpassive/Passive WebSocket Scan Template.js
Outdated
Show resolved
Hide resolved
68de77c
to
8553678
Compare
The above minor issues addressed. Further issues is added to the initial comment under TODO section. |
src/org/zaproxy/zap/extension/websocket/pscan/WebSocketPassiveScannerList.java
Outdated
Show resolved
Hide resolved
src/org/zaproxy/zap/extension/websocket/pscan/WebSocketPassiveScannerList.java
Outdated
Show resolved
Hide resolved
src/org/zaproxy/zap/extension/websocket/pscan/WebSocketPassiveScanThread.java
Outdated
Show resolved
Hide resolved
src/org/zaproxy/zap/extension/websocket/pscan/WebSocketPassiveScannerList.java
Outdated
Show resolved
Hide resolved
src/org/zaproxy/zap/extension/websocket/alerts/WebSocketAlertWrapper.java
Outdated
Show resolved
Hide resolved
src/org/zaproxy/zap/extension/websocket/alerts/WebSocketAlertWrapper.java
Outdated
Show resolved
Hide resolved
I've updated the task list, to me it seems 2/4. Edit: Disregard, I was thinking you meant you addressed more items, but now that I looked at the history you added a 4th item 👍 (oops) |
addOns/websocket/src/main/java/org/zaproxy/zap/extension/websocket/alerts/AlertManager.java
Show resolved
Hide resolved
1b0d6c1
to
94a1484
Compare
Comments have been resolved. I add a PS: I used to squash commits before pushed them, however I realize that it is pain for review. So i am going to squash them before get merged. |
98e98f9
to
7603293
Compare
addOns/websocket/src/main/java/org/zaproxy/zap/extension/websocket/ExtensionWebSocket.java
Outdated
Show resolved
Hide resolved
...ebsocket/src/main/java/org/zaproxy/zap/extension/websocket/alerts/WebSocketAlertWrapper.java
Outdated
Show resolved
Hide resolved
...ebsocket/src/main/java/org/zaproxy/zap/extension/websocket/alerts/WebSocketAlertWrapper.java
Outdated
Show resolved
Hide resolved
.../src/main/java/org/zaproxy/zap/extension/websocket/pscan/WebSocketPassiveScannerManager.java
Outdated
Show resolved
Hide resolved
.../src/main/java/org/zaproxy/zap/extension/websocket/pscan/WebSocketPassiveScannerManager.java
Outdated
Show resolved
Hide resolved
.../src/main/java/org/zaproxy/zap/extension/websocket/pscan/WebSocketPassiveScannerManager.java
Outdated
Show resolved
Hide resolved
.../src/main/java/org/zaproxy/zap/extension/websocket/pscan/WebSocketPassiveScannerManager.java
Outdated
Show resolved
Hide resolved
.../src/main/java/org/zaproxy/zap/extension/websocket/pscan/WebSocketPassiveScannerManager.java
Outdated
Show resolved
Hide resolved
.../src/main/zapHomeFiles/scripts/templates/websocketpassive/Passive WebSocket Scan Template.js
Outdated
Show resolved
Hide resolved
addOns/websocket/src/main/java/org/zaproxy/zap/extension/websocket/ExtensionWebSocket.java
Show resolved
Hide resolved
...cket/src/main/java/org/zaproxy/zap/extension/websocket/pscan/WebSocketPassiveScanThread.java
Show resolved
Hide resolved
9718a29
to
5b067ce
Compare
This pull request introduces 1 alert when merging 1a7c2ad into f4b11d4 - view on LGTM.com new alerts:
|
9ce0a1d
to
073e88c
Compare
This pull request introduces 1 alert when merging 073e88c into f4b11d4 - view on LGTM.com new alerts:
|
The above alert is a FP. |
@ManosMagnus thanks! Let us know when it's tidied up for merge. |
8b146f5
to
07a4577
Compare
07a4577
to
60e1184
Compare
Commits were tidied up for merge. Thank for help! |
7e2790c
to
1d4e2fd
Compare
Whoop whoop, thanks @ManosMagnus! |
The mechanism runs starts a background thread and looping until telling that to stop. Background thread has a Thread Safe Queue in order to add (produce) and scan (consume) messages. To take the messages background thread make queries in the database (message by message). The whole process managed by WebSocketManager in which WebSocketPassiveScanners and plugins are stored.
Also, Add a new Script Plugin for WebSocket Scanning with the appropriate
interface.
TODO:
ConcurrentLinkedHashSet
with another class from library java.util.concurrent (like CopyOnWriteArraySet)A "fake" alert mechanism for WebSockets. WebSocketAlertWrapper uses the core Alert in order to represent the WebSocketAlerts. The WebSocketWrapper creates an Alert by replacing other info with WebSocketMessage readable payload and http message with http handshake.
TODO: