Repository files navigation

ovs_testframework

Overview

To automatically reproduce and evaluate the vulnerabilities within the packet parsing process of Open vSwitch(OvS), we have developed a Testing Framework. This framework is designed to automate the testing for nine CVEs, to enhance the understanding and mitigation of network vulnerabilities leveraging OvS deployments.

Disclaimer

To ensure the integrity and safety of operational networks, all testing linked to this framewokr was entirely within our own isolated infrastructure. This work provides open-source access to code that could potentially be used to exploit flaws in different versions of Open vSwitch. It is important to highlight that the purpose of this thesis and the OvS Testing Framework is strictly educational and aimed at supporting research and enhancing security. It is especially not intended for any malicious use, including unauthorized testing or causing any network disruptions.

Requirements

The Testing Framework is mainly developed in Python, supporting versions ranging from 2.7 to 3.x. Due to the nature of the network emulation and the tests, superuser(root) rights are required to run it. Additionally, the framework relies on the following key dependencies: Mininet (tested on the versions 2.2.2 and 2.3.0) and its Python library for network emulation and manipulation, Valgrind for memory debugging and leak detection, and tcpdump for network traffic analysis. Most of the test packets are implemented in C and are compiled using the GNU Compiler Collection (gcc tested on the versions 4.8.4 and 11.4.0).

Usage

sudo python main.py

or to install a diffrent OvS version:

sudo python main.py -V <version>

openvswitch_version_check

Overview

This script lists the vulnerabilities for OvS, provides a short description of each, prints the total count, and calculates the average Common Vulnerability Scoring System Base Score for the given version.

Requirements

The script openvswitch_version_check.py requires Python 3.x and the following Python packages:

  • requests

You can install these packages using pip:

pip install requests

Usage

python openvswitch_version_check.py

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Repository files navigation

ovs_testframework

Overview

To automatically reproduce and evaluate the vulnerabilities within the packet parsing process of Open vSwitch(OvS), we have developed a Testing Framework. This framework is designed to automate the testing for nine CVEs, to enhance the understanding and mitigation of network vulnerabilities leveraging OvS deployments.

Disclaimer

To ensure the integrity and safety of operational networks, all testing linked to this framewokr was entirely within our own isolated infrastructure. This work provides open-source access to code that could potentially be used to exploit flaws in different versions of Open vSwitch. It is important to highlight that the purpose of this thesis and the OvS Testing Framework is strictly educational and aimed at supporting research and enhancing security. It is especially not intended for any malicious use, including unauthorized testing or causing any network disruptions.

Requirements

The Testing Framework is mainly developed in Python, supporting versions ranging from 2.7 to 3.x. Due to the nature of the network emulation and the tests, superuser(root) rights are required to run it. Additionally, the framework relies on the following key dependencies: Mininet (tested on the versions 2.2.2 and 2.3.0) and its Python library for network emulation and manipulation, Valgrind for memory debugging and leak detection, and tcpdump for network traffic analysis. Most of the test packets are implemented in C and are compiled using the GNU Compiler Collection (gcc tested on the versions 4.8.4 and 11.4.0).

Usage

sudo python main.py

or to install a diffrent OvS version:

sudo python main.py -V <version>

openvswitch_version_check

Overview

This script lists the vulnerabilities for OvS, provides a short description of each, prints the total count, and calculates the average Common Vulnerability Scoring System Base Score for the given version.

Requirements

The script openvswitch_version_check.py requires Python 3.x and the following Python packages:

  • requests

You can install these packages using pip:

pip install requests

Usage

python openvswitch_version_check.py

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

ovs_testframework

Overview

To automatically reproduce and evaluate the vulnerabilities within the packet parsing process of Open vSwitch(OvS), we have developed a Testing Framework. This framework is designed to automate the testing for nine CVEs, to enhance the understanding and mitigation of network vulnerabilities leveraging OvS deployments.

Disclaimer

To ensure the integrity and safety of operational networks, all testing linked to this framewokr was entirely within our own isolated infrastructure. This work provides open-source access to code that could potentially be used to exploit flaws in different versions of Open vSwitch. It is important to highlight that the purpose of this thesis and the OvS Testing Framework is strictly educational and aimed at supporting research and enhancing security. It is especially not intended for any malicious use, including unauthorized testing or causing any network disruptions.

Requirements

The Testing Framework is mainly developed in Python, supporting versions ranging from 2.7 to 3.x. Due to the nature of the network emulation and the tests, superuser(root) rights are required to run it. Additionally, the framework relies on the following key dependencies: Mininet (tested on the versions 2.2.2 and 2.3.0) and its Python library for network emulation and manipulation, Valgrind for memory debugging and leak detection, and tcpdump for network traffic analysis. Most of the test packets are implemented in C and are compiled using the GNU Compiler Collection (gcc tested on the versions 4.8.4 and 11.4.0).

Usage

sudo python main.py

or to install a diffrent OvS version:

sudo python main.py -V <version>

openvswitch_version_check

Overview

This script lists the vulnerabilities for OvS, provides a short description of each, prints the total count, and calculates the average Common Vulnerability Scoring System Base Score for the given version.

Requirements

The script openvswitch_version_check.py requires Python 3.x and the following Python packages:

  • requests

You can install these packages using pip:

pip install requests

Usage

python openvswitch_version_check.py

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

ovs_testframework

Overview

To automatically reproduce and evaluate the vulnerabilities within the packet parsing process of Open vSwitch(OvS), we have developed a Testing Framework. This framework is designed to automate the testing for nine CVEs, to enhance the understanding and mitigation of network vulnerabilities leveraging OvS deployments.

Disclaimer

To ensure the integrity and safety of operational networks, all testing linked to this framewokr was entirely within our own isolated infrastructure. This work provides open-source access to code that could potentially be used to exploit flaws in different versions of Open vSwitch. It is important to highlight that the purpose of this thesis and the OvS Testing Framework is strictly educational and aimed at supporting research and enhancing security. It is especially not intended for any malicious use, including unauthorized testing or causing any network disruptions.

Requirements

The Testing Framework is mainly developed in Python, supporting versions ranging from 2.7 to 3.x. Due to the nature of the network emulation and the tests, superuser(root) rights are required to run it. Additionally, the framework relies on the following key dependencies: Mininet (tested on the versions 2.2.2 and 2.3.0) and its Python library for network emulation and manipulation, Valgrind for memory debugging and leak detection, and tcpdump for network traffic analysis. Most of the test packets are implemented in C and are compiled using the GNU Compiler Collection (gcc tested on the versions 4.8.4 and 11.4.0).

Usage

sudo python main.py

or to install a diffrent OvS version:

sudo python main.py -V <version>

openvswitch_version_check

Overview

This script lists the vulnerabilities for OvS, provides a short description of each, prints the total count, and calculates the average Common Vulnerability Scoring System Base Score for the given version.

Requirements

The script openvswitch_version_check.py requires Python 3.x and the following Python packages:

  • requests

You can install these packages using pip:

pip install requests

Usage

python openvswitch_version_check.py

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Repository files navigation

ovs_testframework

Overview

To automatically reproduce and evaluate the vulnerabilities within the packet parsing process of Open vSwitch(OvS), we have developed a Testing Framework. This framework is designed to automate the testing for nine CVEs, to enhance the understanding and mitigation of network vulnerabilities leveraging OvS deployments.

Disclaimer

To ensure the integrity and safety of operational networks, all testing linked to this framewokr was entirely within our own isolated infrastructure. This work provides open-source access to code that could potentially be used to exploit flaws in different versions of Open vSwitch. It is important to highlight that the purpose of this thesis and the OvS Testing Framework is strictly educational and aimed at supporting research and enhancing security. It is especially not intended for any malicious use, including unauthorized testing or causing any network disruptions.

Requirements

The Testing Framework is mainly developed in Python, supporting versions ranging from 2.7 to 3.x. Due to the nature of the network emulation and the tests, superuser(root) rights are required to run it. Additionally, the framework relies on the following key dependencies: Mininet (tested on the versions 2.2.2 and 2.3.0) and its Python library for network emulation and manipulation, Valgrind for memory debugging and leak detection, and tcpdump for network traffic analysis. Most of the test packets are implemented in C and are compiled using the GNU Compiler Collection (gcc tested on the versions 4.8.4 and 11.4.0).

Usage

sudo python main.py

or to install a diffrent OvS version:

sudo python main.py -V <version>

openvswitch_version_check

Overview

This script lists the vulnerabilities for OvS, provides a short description of each, prints the total count, and calculates the average Common Vulnerability Scoring System Base Score for the given version.

Requirements

The script openvswitch_version_check.py requires Python 3.x and the following Python packages:

  • requests

You can install these packages using pip:

pip install requests

Usage

python openvswitch_version_check.py

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

ovs_testframework

Overview

To automatically reproduce and evaluate the vulnerabilities within the packet parsing process of Open vSwitch(OvS), we have developed a Testing Framework. This framework is designed to automate the testing for nine CVEs, to enhance the understanding and mitigation of network vulnerabilities leveraging OvS deployments.

Disclaimer

To ensure the integrity and safety of operational networks, all testing linked to this framewokr was entirely within our own isolated infrastructure. This work provides open-source access to code that could potentially be used to exploit flaws in different versions of Open vSwitch. It is important to highlight that the purpose of this thesis and the OvS Testing Framework is strictly educational and aimed at supporting research and enhancing security. It is especially not intended for any malicious use, including unauthorized testing or causing any network disruptions.

Requirements

The Testing Framework is mainly developed in Python, supporting versions ranging from 2.7 to 3.x. Due to the nature of the network emulation and the tests, superuser(root) rights are required to run it. Additionally, the framework relies on the following key dependencies: Mininet (tested on the versions 2.2.2 and 2.3.0) and its Python library for network emulation and manipulation, Valgrind for memory debugging and leak detection, and tcpdump for network traffic analysis. Most of the test packets are implemented in C and are compiled using the GNU Compiler Collection (gcc tested on the versions 4.8.4 and 11.4.0).

Usage

sudo python main.py

or to install a diffrent OvS version:

sudo python main.py -V <version>

openvswitch_version_check

Overview

This script lists the vulnerabilities for OvS, provides a short description of each, prints the total count, and calculates the average Common Vulnerability Scoring System Base Score for the given version.

Requirements

The script openvswitch_version_check.py requires Python 3.x and the following Python packages:

  • requests

You can install these packages using pip:

pip install requests

Usage

python openvswitch_version_check.py

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

ovs_testframework

Overview

To automatically reproduce and evaluate the vulnerabilities within the packet parsing process of Open vSwitch(OvS), we have developed a Testing Framework. This framework is designed to automate the testing for nine CVEs, to enhance the understanding and mitigation of network vulnerabilities leveraging OvS deployments.

Disclaimer

To ensure the integrity and safety of operational networks, all testing linked to this framewokr was entirely within our own isolated infrastructure. This work provides open-source access to code that could potentially be used to exploit flaws in different versions of Open vSwitch. It is important to highlight that the purpose of this thesis and the OvS Testing Framework is strictly educational and aimed at supporting research and enhancing security. It is especially not intended for any malicious use, including unauthorized testing or causing any network disruptions.

Requirements

The Testing Framework is mainly developed in Python, supporting versions ranging from 2.7 to 3.x. Due to the nature of the network emulation and the tests, superuser(root) rights are required to run it. Additionally, the framework relies on the following key dependencies: Mininet (tested on the versions 2.2.2 and 2.3.0) and its Python library for network emulation and manipulation, Valgrind for memory debugging and leak detection, and tcpdump for network traffic analysis. Most of the test packets are implemented in C and are compiled using the GNU Compiler Collection (gcc tested on the versions 4.8.4 and 11.4.0).

Usage

sudo python main.py

or to install a diffrent OvS version:

sudo python main.py -V <version>

openvswitch_version_check

Overview

This script lists the vulnerabilities for OvS, provides a short description of each, prints the total count, and calculates the average Common Vulnerability Scoring System Base Score for the given version.

Requirements

The script openvswitch_version_check.py requires Python 3.x and the following Python packages:

  • requests

You can install these packages using pip:

pip install requests

Usage

python openvswitch_version_check.py

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Repository files navigation

ovs_testframework

Overview

To automatically reproduce and evaluate the vulnerabilities within the packet parsing process of Open vSwitch(OvS), we have developed a Testing Framework. This framework is designed to automate the testing for nine CVEs, to enhance the understanding and mitigation of network vulnerabilities leveraging OvS deployments.

Disclaimer

To ensure the integrity and safety of operational networks, all testing linked to this framewokr was entirely within our own isolated infrastructure. This work provides open-source access to code that could potentially be used to exploit flaws in different versions of Open vSwitch. It is important to highlight that the purpose of this thesis and the OvS Testing Framework is strictly educational and aimed at supporting research and enhancing security. It is especially not intended for any malicious use, including unauthorized testing or causing any network disruptions.

Requirements

The Testing Framework is mainly developed in Python, supporting versions ranging from 2.7 to 3.x. Due to the nature of the network emulation and the tests, superuser(root) rights are required to run it. Additionally, the framework relies on the following key dependencies: Mininet (tested on the versions 2.2.2 and 2.3.0) and its Python library for network emulation and manipulation, Valgrind for memory debugging and leak detection, and tcpdump for network traffic analysis. Most of the test packets are implemented in C and are compiled using the GNU Compiler Collection (gcc tested on the versions 4.8.4 and 11.4.0).

Usage

sudo python main.py

or to install a diffrent OvS version:

sudo python main.py -V <version>

openvswitch_version_check

Overview

This script lists the vulnerabilities for OvS, provides a short description of each, prints the total count, and calculates the average Common Vulnerability Scoring System Base Score for the given version.

Requirements

The script openvswitch_version_check.py requires Python 3.x and the following Python packages:

  • requests

You can install these packages using pip:

pip install requests

Usage

python openvswitch_version_check.py

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages