31 May 2023

Smuggler - An HTTP Request Smuggling / Desync Testing Tool


An HTTP Request Smuggling / Desync testing tool written in Python 3


IMPORTANT

This tool does not guarantee no false-positives or false-negatives. Just because a mutation may report OK does not mean there isn't a desync issue, but more importantly just because the tool indicates a potential desync issue does not mean there definitely exists one. The script may encounter request processors from large entities (i.e. Google/AWS/Yahoo/Akamai/etc..) that may show false positive results.


Installation

  1. git clone https://github.com/defparam/smuggler.git
  2. cd smuggler
  3. python3 smuggler.py -h

Example Usage

Single Host:

python3 smuggler.py -u <URL>

List of hosts:

cat list_of_hosts.txt | python3 smuggler.py

Options

usage: smuggler.py [-h] [-u URL] [-v VHOST] [-x] [-m METHOD] [-l LOG] [-q]
[-t TIMEOUT] [--no-color] [-c CONFIGFILE]

optional arguments:
-h, --help show this help message and exit
-u URL, --url URL Target URL with Endpoint
-v VHOST, --vhost VHOST
Specify a virtual host
-x, --exit_early Exit scan on first finding
-m METHOD, --method METHOD
HTTP method to use (e.g GET, POST) Default: POST
-l LOG, --log LOG Specify a log file
-q, --quiet Quiet mode will only log issues found
-t TIMEOUT, --timeout TIMEOUT
Socket timeout value Default: 5
--no-color Suppress color codes
-c CONFIGFILE, --configfile CONFIGFILE
Filepath to the configuration file of payloads

Smuggler at a minimum requires either a URL via the -u/--url argument or a list of URLs piped into the script via stdin. If the URL specifies https:// then Smuggler will connect to the host:port using SSL/TLS. If the URL specifies http:// then no SSL/TLS will be used at all. If only the host is specified, then the script will default to https://

Use -v/--vhost <host> to specify a different host header from the server address

Use -x/--exit_early to exit the scan of a given server when a potential issue is found. In piped mode smuggler will just continue to the next host on the list

Use -m/--method <method> to specify a different HTTP verb from POST (i.e GET/PUT/PATCH/OPTIONS/CONNECT/TRACE/DELETE/HEAD/etc...)

Use -l/--log <file> to write output to file as well as stdout

Use -q/--quiet reduce verbosity and only log issues found

Use -t/--timeout <value> to specify the socket timeout. The value should be high enough to conclude that the socket is hanging, but low enough to speed up testing (default: 5)

Use --no-color to suppress the output color codes printed to stdout (logs by default don't include color codes)

Use -c/--configfile <configfile> to specify your smuggler mutation configuration file (default: default.py)


Config Files

Configuration files are python files that exist in the ./config directory of smuggler. These files describe the content of the HTTP requests and the transfer-encoding mutations to test.

Here is example content of default.py:

def render_template(gadget):
RN = "\r\n"
p = Payload()
p.header = "__METHOD__ __ENDPOINT__?cb=__RANDOM__ HTTP/1.1" + RN
# p.header += "Transfer-Encoding: chunked" +RN
p.header += gadget + RN
p.header += "Host: __HOST__" + RN
p.header += "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.87 Safari/537.36" + RN
p.header += "Content-type: application/x-www-form-urlencoded; charset=UTF-8" + RN
p.header += "Content-Length: __REPLACE_CL__" + RN
return p


mutations["nameprefix1"] = render_template(" Transfer-Encoding: chunked")
mutations["tabprefix1"] = render_template("Transfer-Encoding:\tchunked")
mutations["tabprefix2"] = render_template("Transfer-Encoding\t:\tchunked")
mutations["space1"] = render_template("Transfer-Encoding : chunked")

for i in [0x1,0x4,0x8,0x9,0xa,0xb,0xc,0xd,0x1F,0x20,0x7f,0xA0,0xFF]:
mutations["midspace-% 02x"%i] = render_template("Transfer-Encoding:%cchunked"%(i))
mutations["postspace-%02x"%i] = render_template("Transfer-Encoding%c: chunked"%(i))
mutations["prespace-%02x"%i] = render_template("%cTransfer-Encoding: chunked"%(i))
mutations["endspace-%02x"%i] = render_template("Transfer-Encoding: chunked%c"%(i))
mutations["xprespace-%02x"%i] = render_template("X: X%cTransfer-Encoding: chunked"%(i))
mutations["endspacex-%02x"%i] = render_template("Transfer-Encoding: chunked%cX: X"%(i))
mutations["rxprespace-%02x"%i] = render_template("X: X\r%cTransfer-Encoding: chunked"%(i))
mutations["xnprespace-%02x"%i] = render_template("X: X%c\nTransfer-Encoding: chunked"%(i))
mutations["endspacerx-%02x"%i] = render_template("Transfer-Encoding: chunked\r%cX: X"%(i))
mutations["endspacexn-%02x"%i] = render_template("Transfer-Encoding: chunked%c\nX: X"%(i))

There are no input arguments yet on specifying your own customer headers and user-agents. It is recommended to create your own configuration file based on default.py and modify it to your liking.

Smuggler comes with 3 configuration files: default.py (fast), doubles.py (niche, slow), exhaustive.py (very slow) default.py is the fastest because it contains less mutations.

specify configuration files using the -c/--configfile <configfile> command line option


Payloads Directory

Inside the Smuggler directory is the payloads directory. When Smuggler finds a potential CLTE or TECL desync issue, it will automatically dump a binary txt file of the problematic payload in the payloads directory. All payload filenames are annotated with the hostname, desync type and mutation type. Use these payloads to netcat directly to the server or to import into other analysis tools.


Helper Scripts

After you find a desync issue feel free to use my Turbo Intruder desync scripts found Here: https://github.com/defparam/tiscripts DesyncAttack_CLTE.py and DesyncAttack_TECL.py are great scripts to help stage a desync attack


License

These scripts are released under the MIT license. See LICENSE.



Related news


How To Automatically Translate Any Android App Into Any Language

There is the number of applications which are not having the features of translating apps to your favorite languages. This makes it difficult for the users to translate apps into their native language. Today, I am going to tell you about an application which will help you to Automatically Translate Any Android App into Any Language.
Nowadays there are around hundreds of application on play store which is having the feature of translate but some applications don't have this features. This is just because they don't have proper developers or sometimes translators.
There is an application launched by Akhil Kedia from XDA Developer which made it possible for all the users to translate the application to any language you need. This is something which everyone needs it.
Akhil Kedia built an Xposed module in which users can easily change the language of any application to whichever they like or love. Personally, we all love English language but there are peoples in many parts of the world they are suitable for other languages.
Automatically Translate Any Android App into Any Language
Automatically Translate Any Android App into Any Language

Automatically Translate Any Android App into Any Language

The best part about this Xposed Module is that it translates the application to any language whichever you like and there are around many languages which you can try it. The other best part about this application is that the user interface which is amazing.
In an Android application, the best thing is the user interface. This is something which helps users to download the module or application to run again and again. There are about many settings which can be changed from the application.
The setup process is a bit different from other applications but if you will look at the application you will definitely love it. Just because of too many settings and features available in the application and you can turn it to any language without any crashing issues of the application.

Requirements:

  • Rooted Android Phone
  • Xposed Framework installed on your phone.
  • Android 5.0 or higher.
  • Unknown Source enabled (You might be knowing it)
How to Automatically Translate Any Android App into Any Language
  • Download the module called as All Trans from here: Download
Automatically Translate Any Android App
  • Now, after installation, it will ask you to reboot your phone to activate the module
  • Now, you need to get the API Key to get it you need to sign up with Yandex first so sign up: Yandex Sign up
Automatically Translate Any Android App
  • Then after sign up you will get the API key just enter the API key in the All-Trans application.
Automatically Translate Any Android App
  • Open All Trans Application and the swipe right to Global Settings.
Automatically Translate Any Android App
  • Click on Enter Yandex Subscription key and then enter your key.
Automatically Translate Any Android App
  • In Global Settings click on Translate from and select the Language the application is already in. (Eg: English)
Automatically Translate Any Android App
  • Now, click on translate to and select your favorite language. This will change the language.
Automatically Translate Any Android App
  • Swipe left and select the applications which you need to translate and done.
Automatically Translate Any Android App
  • After selecting just open the application and the language is translated automatically.
Automatically Translate Any Android App

Final Words:

This is the best and easy way to Automatically Translate Any Android App into Any Language. I hope you love this article.Share this article with your friends and keep visiting for more tips and tricks like this and I will meet you in the next one.
Stay Updated Tune IemHacker

Read more


  1. Hacking Tools For Pc
  2. Hack Tool Apk
  3. Hacker Tools Mac
  4. World No 1 Hacker Software
  5. What Are Hacking Tools
  6. Hacker Tools Github
  7. Hack Tools 2019
  8. Hack Tool Apk No Root
  9. New Hack Tools
  10. Pentest Tools Review
  11. Hack Tools For Mac
  12. Hacking Tools Software
  13. Pentest Tools For Mac
  14. Hacker Security Tools
  15. Hack Tools Pc
  16. Physical Pentest Tools
  17. Hacking Tools For Games
  18. Bluetooth Hacking Tools Kali
  19. Pentest Tools Review
  20. Hack And Tools
  21. Hacker Tools 2019
  22. Pentest Tools Subdomain
  23. Termux Hacking Tools 2019
  24. Hak5 Tools
  25. Hack App
  26. Hacking Tools For Windows 7
  27. Pentest Tools Port Scanner
  28. Hacker Tools Hardware
  29. Hacking Tools For Windows Free Download
  30. Tools For Hacker
  31. Pentest Tools Bluekeep
  32. Hackers Toolbox
  33. Hack Tools For Ubuntu
  34. Best Pentesting Tools 2018
  35. Hacker Tools Apk
  36. Ethical Hacker Tools
  37. Hacker Tools Free
  38. Game Hacking
  39. Tools Used For Hacking
  40. Pentest Tools Framework
  41. Beginner Hacker Tools
  42. Best Hacking Tools 2019
  43. Physical Pentest Tools
  44. Hacking Apps
  45. Hacking Tools Free Download
  46. Hacker Tools Linux
  47. Pentest Tools Framework
  48. Hacking App
  49. Github Hacking Tools
  50. Hacking App
  51. Pentest Tools Kali Linux
  52. Hacker Tools 2019
  53. Hacker Security Tools
  54. Hacker Tools Free Download
  55. Wifi Hacker Tools For Windows
  56. Hacker Hardware Tools
  57. What Are Hacking Tools
  58. Hacking Tools
  59. Hacking Tools Hardware
  60. Pentest Tools For Android
  61. Hak5 Tools
  62. How To Hack
  63. Hacking Tools
  64. Pentest Tools For Android
  65. Hacking Tools For Beginners
  66. Pentest Tools Android
  67. Hack Tools Download
  68. Hacking Tools For Windows 7
  69. Computer Hacker
  70. Best Pentesting Tools 2018
  71. Pentest Tools Online
  72. Termux Hacking Tools 2019
  73. Hack Tools For Games
  74. Hacking Tools Github
  75. Hacker Tools Linux
  76. Black Hat Hacker Tools
  77. Termux Hacking Tools 2019
  78. Hacking Tools Free Download
  79. Hacking Tools For Beginners
  80. Hacker Tools Software
  81. How To Hack
  82. Hacking Tools 2020
  83. Hack Tools For Ubuntu
  84. Hacking Tools
  85. Hack App
  86. Pentest Tools
  87. Computer Hacker
  88. Hacking Tools For Windows 7
  89. Android Hack Tools Github
  90. World No 1 Hacker Software
  91. Hack Tools Github
  92. Pentest Tools Subdomain
  93. Pentest Tools Android
  94. What Are Hacking Tools
  95. Hacker Tools Linux
  96. Hacking Tools Pc
  97. Hacker Tools 2019
  98. Pentest Tools Alternative
  99. Hack Tools Mac
  100. Tools Used For Hacking
  101. Hacking Tools For Beginners
  102. Pentest Tools
  103. Hacker Tools Windows
  104. Pentest Tools Linux
  105. Physical Pentest Tools
  106. Kik Hack Tools
  107. World No 1 Hacker Software
  108. Hacking Tools
  109. Pentest Tools Linux
  110. Pentest Tools Tcp Port Scanner
  111. Hack Tools Mac
  112. Pentest Tools Free
  113. Game Hacking
  114. Pentest Tools Download
  115. Pentest Tools For Ubuntu
  116. Pentest Box Tools Download
  117. Hacker Tools Hardware
  118. Hacker Tools Apk
  119. Hack Tools For Mac
  120. Nsa Hacker Tools
  121. Pentest Automation Tools
  122. Hacking Tools Software
  123. Hack Apps
  124. Pentest Recon Tools
  125. Hacking Tools And Software
  126. Growth Hacker Tools
  127. Hack Tool Apk
  128. Android Hack Tools Github
  129. Pentest Tools Android
  130. Pentest Tools Windows
  131. Hacking Tools Software
  132. Best Hacking Tools 2019
  133. Pentest Tools For Mac
  134. Pentest Tools Port Scanner

5 Free Online Courses To Learn Artificial Intelligence

We are living in the era of fourth industrial revolution(4IR), where Artificial intelligence has a significant role to play. This 4IR technology embedded within societies and even into the human body. From Computer enthusiasts to common people, everyone should be aware and learn this breakthrough technology.
We think about gigantic Robots from Transformers when we hear about Artificial Intelligence(AI) which is a fiction in the past but a fact today, capable of transforming the whole tech world. The field of AI consists of more than Robots such as personal assistants, self-driving cars, apprenticeship learning, behavior cloning and so on. To learn about this advanced technology, thanks to the online learning resources which offers great content to get started with artificial intelligence.

Here are the 5 free e-learning courses on Artificial Intelligence

1. UC Berkeley CS188 Intro to AI

Get started with UC Berkeley AI course, this course is absolutely for beginners who are unaware of Artificial intelligence. It doesn't need any prior computer knowledge to know about AI. UC Berkeley allows anyone to learn this course for free. This course is systematically presented and consists of the following:
  • Course Schedule
  • Complete sets of Lecture Slides and Videos
  • Interface for Electronic Homework Assignments
  • Section Handouts
  • Specs for the Pacman Projects
  • Source files and PDFs of past Berkeley CS188 exams
  • Form to apply for edX hosted autograders for homework and projects (and more)
  • Contact information
Aside from this, you can also browse the following courses as well from UC Berkeley that are part of AI course:
  • Machine Learning: CS189, Stat154
  • Intro to Data Science: CS194-16
  • Probability: EE126, Stat134
  • Optimization: EE127
  • Cognitive Modeling: CogSci131
  • Machine Learning Theory: CS281A, CS281B
  • Vision: CS280
  • Robotics: CS287
  • Natural Language Processing: CS288

2. Artificial Intelligence: Principles and Techniques

This course is offered by Stanford with great content that includes topics, videos, assignments, projects, and exams. The whole course mainly focuses on the complex real-world problems and try to find similarity between web search, speech recognition, face recognition, machine translation, autonomous driving, and automatic scheduling. Here you will learn the foundational principles of AI and implement some the AI systems. The goal of this course is to help you tackle the real-world situations with the help of AI tools. So, it is the best for the beginner to get started with AI.

3. Learn with GOOGLE AI

Who will dislike the course from Google? absolutely no one. This company is one of the early adopters of AI has a lot to offer to learners. Learn with Google AI is an education platform for people at all experience levels, it is free to access and browse content. The education resources provided by Google is from the machine learning experts of the company. These resources are the collections of lessons, tutorials, and Hands-on exercises that help you start learning, building, and problem-solving.

4. MIT 6.S094: Deep Learning for Self-Driving Cars

This course gives the practical overview of Deep Learning and AI. It is the course for beginners, also for the people who are getting started with Machine Learning. The course also offers a lot of benefits to the experienced and advanced researchers in the field deep learning. This MIT's course takes people into the journey of Deep Learning with the applied theme of building Self-Driving cars. However, the course also offers slides and videos to engage the learners.

5. Fundamentals of Deep Learning for Computer Vision

This course is offered by Nvidia and Nvidia Deep learning Institute. Computer Vision is one of the disciplines of AI that acquire, analyze, process, and understand images. The course is completely free and everyone who is enthusiast about AI can access and learn the course. It is a hands-on course that able to provide basics of deep learning and deployment of neural networks. With this. you will also learn the following:
  • Identify the ingredients required to start a Deep Learning project.
  • Train a deep neural network to correctly classify images it has never seen before.
  • Deploy deep neural networks into applications.
  • Identify techniques for improving the performance of deep learning applications.
  • Assess the types of problems that are candidates for deep learning.
  • Modify neural networks to change their behavior.

Related news


  1. Hacking Tools
  2. Hacking Tools Pc
  3. Hack Tools Download
  4. Hack Tools
  5. Pentest Tools Open Source
  6. Hacking Tools Pc
  7. Pentest Tools
  8. Hacking Tools For Games
  9. Hacker Search Tools
  10. How To Make Hacking Tools
  11. Hacker Tools Free
  12. Underground Hacker Sites
  13. Pentest Tools Android
  14. Ethical Hacker Tools
  15. Hacking Tools For Beginners
  16. Hacker Tools List
  17. Hacker Tools 2019
  18. Hacking Tools Name
  19. Hack Tools For Mac
  20. Pentest Tools Subdomain
  21. Hacker Tools Github
  22. Pentest Tools For Android
  23. Hacking Tools Online
  24. Hacker Tools For Mac
  25. Hacker
  26. Blackhat Hacker Tools
  27. Hacker Security Tools
  28. New Hack Tools
  29. Hack Tools For Windows
  30. How To Make Hacking Tools
  31. Pentest Tools Subdomain
  32. Hak5 Tools
  33. Pentest Tools For Android
  34. Hacker Tools Github
  35. Beginner Hacker Tools
  36. Tools 4 Hack
  37. World No 1 Hacker Software
  38. Pentest Tools Alternative
  39. Hacking Tools Windows
  40. Hacker Tools Apk Download
  41. Tools 4 Hack
  42. Nsa Hacker Tools
  43. Pentest Reporting Tools
  44. New Hack Tools
  45. Hacking Tools For Windows Free Download
  46. Hacker Tools Hardware
  47. Hack Apps
  48. Best Pentesting Tools 2018
  49. Hacking Tools Online
  50. Growth Hacker Tools
  51. Pentest Tools Nmap
  52. Hacking Tools For Kali Linux
  53. Bluetooth Hacking Tools Kali
  54. Usb Pentest Tools
  55. Pentest Tools For Windows
  56. Hacking Tools 2019
  57. Game Hacking
  58. Install Pentest Tools Ubuntu
  59. Hacker Tool Kit
  60. Hack Tools
  61. Hackrf Tools
  62. Hacker Tools List
  63. Ethical Hacker Tools
  64. Hacking Tools Windows 10
  65. Pentest Tools Subdomain
  66. Easy Hack Tools
  67. Usb Pentest Tools
  68. How To Hack
  69. Hacker Tools
  70. Hacking Tools Pc
  71. Top Pentest Tools
  72. Hacker Tools Online
  73. Hacking App
  74. Hacking Tools And Software
  75. Hack Tools Online
  76. Hack Tools Github
  77. Hacking Tools Software
  78. Pentest Tools For Windows
  79. Hacker Tools Free Download
  80. Pentest Tools Website Vulnerability
  81. Hack Tool Apk
  82. Hack Tools For Games
  83. Hacking Tools Name
  84. Best Hacking Tools 2020
  85. Easy Hack Tools
  86. Pentest Tools For Ubuntu
  87. Pentest Tools List
  88. Pentest Tools Bluekeep
  89. Hacker Tools Mac
  90. Pentest Tools Subdomain
  91. Pentest Box Tools Download
  92. Hacker Tools Software
  93. Hak5 Tools
  94. Hacking Tools For Beginners
  95. Hacker Tools List
  96. Computer Hacker
  97. Hacker Tools Apk Download
  98. Pentest Tools