Spelling suggestions: "subject:"protocol desting"" "subject:"protocol ingesting""
1 |
Lunar: A User-Level Stack Library for Network EmulationKnestrick, Christopher C. 02 March 2004 (has links)
The primary issue with developing new networking protocols is testing how the protocol will behave when deployed on a large scale; of particular interest is how it will interact with existing protocols. Testing a protocol using a network simulator has drawbacks. First, the protocol must be written for the simulator and then rewritten for actual deployment. Aside from the additional work, this allows for software bugs to be introduced between testing and implementation. More importantly, there are correctness issues. Since both the new and existing protocols must be specially written for the simulator, and not actual real-world implementations, the question remains if the behavior observed and, specifically, the interactions between the protocols are valid. Direct code execution environments solve the correctness problem, but there is the loss of control that a simulator provides. Our solution is to create an environment that allows direct code execution to occur on top of a network simulator. This thesis presents the primary component of that solution: Lunar (Linux User-level Network Architecture), a user-level library that is created from the network stack portion of the Linux operating system. This allows real-world applications to link against a simulator, with Lunar serving as the bridge.
For this work, an implementation of Lunar was constructed using the 2.4.3 version of the Linux kernel. Verification testing was performed to demonstrate correct functioning of the library using both TCP (including TCP with loss) and UDP. Performance testing was done to measure the overhead that Lunar adds to a running application. Overhead was measured as the percent increase in the runtime of an application with Lunar as compared to the application running without it, and ranged from approximately 2% (running over 100 Mbps switched Ethernet) to approximately 39% (1 Gbps Myrinet). / Master of Science
|
2 |
USING LABVIEW TO DESIGN A FAULT-TOLERANT LINK ESTABLISHMENT PROTOCOLHoran, Stephen, Deivasigamani, Giriprassad 10 1900 (has links)
International Telemetering Conference Proceedings / October 18-21, 2004 / Town & Country Resort, San Diego, California / The design of a protocol for a satellite cluster link establishment and management that accounts for link corruption, node failures, and node re-establishment is presented in this paper. This protocol will need to manage the traffic flow between nodes in the satellite cluster, adjust routing tables due to node motion, allow for sub-networks in the cluster, and similar activities. This protocol development is in its initial stages and we will describe how we use the LabVIEW Sate Diagram tool kit to generate the code to design a state machine representing the protocol for the establishment of inter-satellite communications links.
|
3 |
Development of a tool to test computer protocolsMyburgh, W. D 04 1900 (has links)
Thesis (MSc) -- Stellenbosch University, 2003. / ENGLISH ABSTRACT: Software testing tools simplify and automate the menial work associated with testing. Moreover,
for complex concurrent software such as computer protocols, testing tools allow testing
on an abstract level that is independent of specific implementations. Standard conformance
testing methodologies and a number of testing tools are commercially available, but detailed
descriptions of the implementation of such testing tools are not widely available.
This thesis investigates the development of a tool for automated protocol testing in the ETH
Oberon development environment. The need to develop a protocol testing tool that automates
the execution of specified test cases was identified in collaboration with a local company that
develops protocols in the programming language Oberon. Oberon is a strongly typed secure
language that supports modularisation and promotes a readable programming style. The
required tool should translate specified test cases into executable test code supported by a
runtime environment. A test case consists of a sequence of input actions to which the software
under test is expected to respond by executing observable output actions.
A number of issues are considered of which the first is concerned with the representation
of test case specifications. For this, a notation was used that is basically a subset of the
test specification language TTCN-3 as standardised by the European Telecommunications
Standards Institute.
The second issue is the format of executable test cases and a suitable runtime environment.
A translator was developed that generates executable Oberon code from specified test cases.
The compiled test code is supported by a runtime library, which is part of the tool. Due
to the concurrent nature of a protocol environment, concurrent processes in the runtime
environment are identified. Since ETH Oberon supports multitasking in a limited sense, test
cases are executed as cooperating background tasks.
The third issue is concerned with the interaction between an executing test case and a system
under test. It is addressed by an implementation dependent interface that maps specified test interactions onto real interactions as required by the test context in which an implementation
under test operates. A supporting protocol to access the service boundary of an implementation
under test remotely and underlying protocol service providers are part of a test context.
The ETH Oberon system provides a platform that simplifies the implementation of protocol
test systems, due to its size and simple task mechanism. Operating system functionality
considered as essential is pointed out in general terms since other systems could be used to
support such testing tools. In conclusion, directions for future work are proposed. / AFRIKAANSE OPSOMMING: Toetsstelsels vir programmatuur vereenvoudig en outomatiseer die slaafse werk wat met toetsing
assosieer word. 'n Toetsstelsel laat verder toe dat komplekse gelyklopende programmatuur,
soos rekenaarprotokolle, op 'n abstrakte vlak getoets word, wat onafhanklik van spesifieke
implementasies is. Daar bestaan standaard metodes vir konformeringstoetsing en 'n
aantal toetsstelsels is kommersiëel beskikbaar. Uitvoerige beskrywings van die implementering
van sulke stelsels is egter nie algemeen beskikbaar nie.
Hierdie tesis ondersoek die ontwikkeling van 'n stelsel vir outomatiese toetsing van protokolle
in die ontwikkelingsomgewing van ETH Oberon. Die behoefte om 'n protokoltoetsstelsel te
ontwikkel, wat die uitvoering van gespesifiseerde toetsgevalle outomatiseer, is geïdentifiseer
in oorleg met 'n plaaslike maatskappy wat protokolle ontwikkel in die Oberon programmeertaal.
Oberon is 'n sterkgetipeerde taal wat modularisering ondersteun en a leesbare programmeerstyl
bevorder. Die toestsstelsel moet gespesifiseerde toetsgevalle vertaal na uitvoerbare
toetskode wat ondersteun word deur 'n looptydomgewing. 'n Toetsgeval bestaan uit 'n reeks
van toevoeraksies waarop verwag word dat die programmatuur wat getoets word, sal reageer
deur die uitvoering van afvoeraksies wat waargeneem kan word.
'n Aantal kwessies word aangeraak, waarvan die eerste te make het met die voorstelling van
die spesifikasie van toetsgevalle. Hiervoor is 'n notasie gebruik wat in wese 'n subversameling
van die toetsspesifikasietaal TTCN-3 is. TTCN-3 is gestandardiseer deur die European
Telecommunications Standards Institute.
Die tweede kwessie is die formaat van uitvoerbare toetsgevalle en 'n geskikte looptydomgewing.
'n Vertaler is ontwikkel wat uitvoerbare Oberon-kode genereer vanaf gespesifiseerde toetsgevalle.
Die vertaalde toetskode word ondersteun deur 'n biblioteek van looptydfunksies, wat
deel van die stelsel is. As gevolg van die eienskap dat 'n protokolomgewing uit gelyklopende
prosesse bestaan, word daar verskillende tipes van gelyklopende prosesse in 'n protokoltoetsstelsel
geïdentifiseer. Aangesien ETH Oberon 'n beperkte multitaakstelsel is, word toetsgevalle vertaal na eindige outomate wat uitgevoer word as samewerkende agtergrondtake.
Die derde kwessie het te make met die interaksie tussen 'n toetsgeval wat uitgevoer word en
die stelsel wat getoets word. Dit word aangespreek deur 'n koppelvlak wat gespesifiseerde
interaksies afbeeld op werklike interaksies soos vereis deur die konteks waarin 'n implementasie
onderworpe aan toetsing uitvoer. 'n Ondersteunende protokolom die dienskoppelvlak van
die implementasie oor 'n afstand te bereik en ander onderliggende protokoldienste is deel van
'n toetskonteks.
Die ETH Oberon-stelsel help in die vereenvoudiging van die implementasie van protokol toetsstelsels,
as gevolg van die stelsel se grootte en die eenvoudige taakhanteerder . Die essensiële
funksionaliteit van bedryfsstelsels word uitgelig in algemene terme omdat ander stelsels gebruik
kan word om toetsstelsels te ondersteun. Ten slotte word voorstelle vir opvolgwerk
gemaak.
|
4 |
PROACTIVE VULNERABILITY IDENTIFICATION AND DEFENSE CONSTRUCTION -- THE CASE FOR CANKhaled Serag Alsharif (8384187) 25 July 2023 (has links)
<p>The progressive integration of microcontrollers into various domains has transformed traditional mechanical systems into modern cyber-physical systems. However, the beginning of this transformation predated the era of hyper-interconnectedness that characterizes our contemporary world. As such, the principles and visions guiding the design choices of this transformation had not accounted for many of today's security challenges. Many designers had envisioned their systems to operate in an air-gapped-like fashion where few security threats loom. However, with the hyper-connectivity of today's world, many CPS find themselves in uncharted territory for which they are unprepared.</p>
<p><br></p>
<p>An example of this evolution is the Controller Area Network (CAN). CAN emerged during the transformation of many mechanical systems into cyber-physical systems as a pivotal communication standard, reducing vehicle wiring and enabling efficient data exchange. CAN's features, including noise resistance, decentralization, error handling, and fault confinement mechanisms, made it a widely adopted communication medium not only in transportation but also in diverse applications such as factories, elevators, medical equipment, avionic systems, and naval applications.</p>
<p><br></p>
<p>The increasing connectivity of modern vehicles through CD players, USB sticks, Bluetooth, and WiFi access has exposed CAN systems to unprecedented security challenges and highlighted the need to bolster their security posture. This dissertation addresses the urgent need to enhance the security of modern cyber-physical systems in the face of emerging threats by proposing a proactive vulnerability identification and defense construction approach and applying it to CAN as a lucid case study. By adopting this proactive approach, vulnerabilities can be systematically identified, and robust defense mechanisms can be constructed to safeguard the resilience of CAN systems.</p>
<p><br></p>
<p>We focus on developing vulnerability scanning techniques and innovative defense system designs tailored for CAN systems. By systematically identifying vulnerabilities before they are discovered and exploited by external actors, we minimize the risks associated with cyber-attacks, ensuring the longevity and reliability of CAN systems. Furthermore, the defense mechanisms proposed in this research overcome the limitations of existing solutions, providing holistic protection against CAN threats while considering its performance requirements and operational conditions.</p>
<p><br></p>
<p>It is important to emphasize that while this dissertation focuses on CAN, the techniques and rationale used here could be replicated to secure other cyber-physical systems. Specifically, due to CAN's presence in many cyber-physical systems, it shares many performance and security challenges with those systems, which makes most of the techniques and approaches used here easily transferrable to them. By accentuating the importance of proactive security, this research endeavors to establish a foundational approach to cyber-physical systems security and resiliency. It recognizes the evolving nature of cyber-physical systems and the specific security challenges facing each system in today's hyper-connected world and hence focuses on a single case study. </p>
|
5 |
Fuzzing Radio Resource Control messages in 5G and LTE systems : To test telecommunication systems with ASN.1 grammar rules based adaptive fuzzer / Fuzzing Radio Resource Control-meddelanden i 5Goch LTE-systemPotnuru, Srinath January 2021 (has links)
5G telecommunication systems must be ultra-reliable to meet the needs of the next evolution in communication. The systems deployed must be thoroughly tested and must conform to their standards. Software and network protocols are commonly tested with techniques like fuzzing, penetration testing, code review, conformance testing. With fuzzing, testers can send crafted inputs to monitor the System Under Test (SUT) for a response. 3GPP, the standardization body for the telecom system, produces new versions of specifications as part of continuously evolving features and enhancements. This leads to many versions of specifications for a network protocol like Radio Resource Control (RRC), and testers need to constantly update the testing tools and the testing environment. In this work, it is shown that by using the generic nature of RRC specifications, which are given in Abstract Syntax Notation One (ASN.1) description language, one can design a testing tool to adapt to all versions of 3GPP specifications. This thesis work introduces an ASN.1 based adaptive fuzzer that can be used for testing RRC and other network protocols based on ASN.1 description language. The fuzzer extracts knowledge about ongoing RRC messages using protocol description files of RRC, i.e., RRC ASN.1 schema from 3GPP, and uses the knowledge to fuzz RRC messages. The adaptive fuzzer identifies individual fields, sub-messages, and custom data types according to specifications when mutating the content of existing messages. Furthermore, the adaptive fuzzer has identified a previously unidentified vulnerability in Evolved Packet Core (EPC) of srsLTE and openLTE, two open-source LTE implementations, confirming the applicability to robustness testing of RRC and other network protocols. / 5G-telekommunikationssystem måste vara extremt tillförlitliga för att möta behoven för den kommande utvecklingen inom kommunikation. Systemen som används måste testas noggrant och måste överensstämma med deras standarder. Programvara och nätverksprotokoll testas ofta med tekniker som fuzzing, penetrationstest, kodgranskning, testning av överensstämmelse. Med fuzzing kan testare skicka utformade input för att övervaka System Under Test (SUT) för ett svar. 3GPP, standardiseringsorganet för telekomsystemet, producerar ofta nya versioner av specifikationer för att möta kraven och bristerna från tidigare utgåvor. Detta leder till många versioner av specifikationer för ett nätverksprotokoll som Radio Resource Control (RRC) och testare behöver ständigt uppdatera testverktygen och testmiljön. I detta arbete visar vi att genom att använda den generiska karaktären av RRC-specifikationer, som ges i beskrivningsspråket Abstract Syntax Notation One (ASN.1), kan man designa ett testverktyg för att anpassa sig till alla versioner av 3GPP-specifikationer. Detta uppsatsarbete introducerar en ASN.1-baserad adaptiv fuzzer som kan användas för att testa RRC och andra nätverksprotokoll baserat på ASN.1- beskrivningsspråk. Fuzzer extraherar kunskap om pågående RRC meddelanden med användning av protokollbeskrivningsfiler för RRC, dvs RRC ASN.1 schema från 3GPP, och använder kunskapen för att fuzz RRC meddelanden. Den adaptiva fuzzer identifierar enskilda fält, delmeddelanden och anpassade datatyper enligt specifikationer när innehållet i befintliga meddelanden muteras. Dessutom har den adaptiva fuzzer identifierat en tidigare oidentifierad sårbarhet i Evolved Packet Core (EPC) för srsLTE och openLTE, två opensource LTE-implementeringar, vilket bekräftar tillämpligheten för robusthetsprovning av RRC och andra nätverksprotokoll.
|
6 |
Black-box analýza zabezpečení Wi-Fi / Black-Box Analysis of Wi-Fi Stacks SecurityVenger, Adam January 2021 (has links)
Zariadenia, na ktoré sa každodenne spoliehame, sú stále zložitejšie a využívajú zložitejšie protokoly. Jedným z týchto protokolov je Wi-Fi. S rastúcou zložitosťou sa zvyšuje aj potenciál pre implementačné chyby. Táto práca skúma Wi-Fi protokol a použitie fuzz testingu pre generovanie semi-validných vstupov, ktoré by mohli odhaliť zraniteľné miesta v zariadeniach. Špeciálna pozornosť bola venovaná testovaniu Wi-Fi v systéme ESP32 a ESP32-S2. Výsledkom práce je fuzzer vhodný pre testovanie akéhokoľvek Wi-Fi zariadenia, monitorovací nástroj špeciálne pre ESP32 a sada testovacích programov pre ESP32. Nástroj neodhalil žiadne potenciálne zraniteľnosti.
|
Page generated in 0.0846 seconds