-
-
Notifications
You must be signed in to change notification settings - Fork 726
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
A better multi threaded framework! #9
Comments
Hello, It's better now! (almost fixed) Regards. |
hello, working on new upgrades... regards. |
we cannot use thread count while we are using multi modules, it has collision.
Hello, there is a fundamental problem in multithreading in this framework. last night I push some codes to enable an option if the user wants to use multi-threading instead of multiprocessing. this is how the framework was working: in the first view, it's fast! because it's using multi-core of CPU for scanning each target with each module. in the real test, I scanned 20 IPs I've tried this 20 IPs with the single port with the code I contributed last night it took only 3.335 seconds! (used one core of CPU (2% maybe)) I've also retest with but there were some issues that made me revert the codes I pushed.
after I pushed my codes in the master branch I released that
so the whole master branch was WC and I revert the codes pushed to unfuck the situation. I created a what's best we need to do? if anyone would like to help on this one, I appreciate your ideas and contributions. Best Regards. |
Hii Ali, |
done in #440 |
Hello everyone.
Right now OWASP Nettacker has two kinds of multi-threading/processing. the first one is
-M
switch which is the number of hosts to scan together. It's usingmultiprocessing
module. another one is the number of threads to a host-t
switch. It's using thethreading
module.the problem is when the threading number is too high, and we want to count the active threads! for example, check the
core/parse.py
.there is a for to check if the process is still alive and count it, otherwise remove the process from the array and if array length would be smaller than thread number, then add a new process.
or you can check one of the modules to see how the count with threading works.
it's the same!
if set the thread number in
tcp_connect_port_scan
as 1000. it takes more than "1 sec" to check all the dead threads and add new threads. and if we remove thetime.sleep
the CPU usage will go high! So we need a better counting algorithm and thread control!Let me know if there is any question!
Regards.
The text was updated successfully, but these errors were encountered: