From 3fed51e23753255ffc6e660aaacf926e8ac735e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Anton=20Luka=20=C5=A0ijanec?= Date: Mon, 27 Feb 2023 00:15:03 +0100 Subject: raziskovalna naloga --- inf/rn/dok/lyx/razprava.lyx | 537 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 537 insertions(+) create mode 100644 inf/rn/dok/lyx/razprava.lyx (limited to 'inf/rn/dok/lyx/razprava.lyx') diff --git a/inf/rn/dok/lyx/razprava.lyx b/inf/rn/dok/lyx/razprava.lyx new file mode 100644 index 0000000..129326f --- /dev/null +++ b/inf/rn/dok/lyx/razprava.lyx @@ -0,0 +1,537 @@ +#LyX 2.3 created this file. For more info see http://www.lyx.org/ +\lyxformat 544 +\begin_document +\begin_header +\save_transient_properties true +\origin unavailable +\textclass scrbook +\begin_preamble +% in case somebody want to have the label "Equation" +%\renewcommand{\eqref}[1]{Equation~(\negthinspace\autoref{#1})} + +% that links to image floats jumps to the beginning +% of the float and not to its caption +\usepackage[figure]{hypcap} + +% the pages of the TOC is numbered roman +% and a pdf-bookmark for the TOC is added +\let\myTOC\tableofcontents +\renewcommand\tableofcontents{% + \frontmatter + \pdfbookmark[1]{\contentsname}{} + \myTOC + \mainmatter } + +% makes caption labels bold +% for more info about these settings, see +% https://ctan.org/tex-archive/macros/latex/contrib/koma-script/doc/scrguien.pdf +\setkomafont{captionlabel}{\bfseries} +\setcapindent{1em} + +% enables calculations +\usepackage{calc} + +% fancy page header/footer settings +% for more information see section 9 of +% ftp://www.ctan.org/pub/tex-archive/macros/latex2e/contrib/fancyhdr/fancyhdr.pdf +\renewcommand{\chaptermark}[1]{\markboth{#1}{#1}} +\renewcommand{\sectionmark}[1]{\markright{\thesection\ #1}} + +% increases the bottom float placement fraction +\renewcommand{\bottomfraction}{0.5} + +% avoids that floats are placed above its sections +\let\mySection\section\renewcommand{\section}{\suppressfloats[t]\mySection} + +% increases link area for cross-references and autoname them +% if you change the document language to e.g. French +% you must change "extrasenglish" to "extrasfrench" +% if you uncomment the following lines, you cannot use the reference version Ref+Text in LyX +%\AtBeginDocument{% +% \renewcommand{\ref}[1]{\autoref{#1}} +%} +%\def\refnamechanges{% +% \renewcommand*{\equationautorefname}[1]{} +% \renewcommand{\sectionautorefname}{sec.\negthinspace} +% \renewcommand{\subsectionautorefname}{sec.\negthinspace} +% \renewcommand{\subsubsectionautorefname}{sec.\negthinspace} +% \renewcommand{\figureautorefname}{Fig.\negthinspace} +% \renewcommand{\tableautorefname}{Tab.\negthinspace} +%} +%\@ifpackageloaded{babel}{\addto\extrasenglish{\refnamechanges}}{\refnamechanges} +\end_preamble +\options intoc,bibliography=totoc,index=totoc,BCOR10mm,captions=tableheading,titlepage +\use_default_options true +\master /usr/share/lyx/examples/thesis/thesis.lyx +\begin_modules +customHeadersFooters +\end_modules +\maintain_unincluded_children false +\language slovene +\language_package default +\inputencoding utf8 +\fontencoding global +\font_roman "lmodern" "default" +\font_sans "lmss" "default" +\font_typewriter "lmtt" "default" +\font_math "auto" "auto" +\font_default_family default +\use_non_tex_fonts false +\font_sc false +\font_osf false +\font_sf_scale 100 100 +\font_tt_scale 100 100 +\use_microtype false +\use_dash_ligatures false +\graphics default +\default_output_format default +\output_sync 0 +\bibtex_command bibtex +\index_command default +\float_placement h +\paperfontsize 12 +\spacing single +\use_hyperref true +\pdf_title "Your title" +\pdf_author "Your name" +\pdf_bookmarks true +\pdf_bookmarksnumbered true +\pdf_bookmarksopen true +\pdf_bookmarksopenlevel 1 +\pdf_breaklinks false +\pdf_pdfborder true +\pdf_colorlinks false +\pdf_backref false +\pdf_pdfusetitle false +\pdf_quoted_options "pdfpagelayout=OneColumn, pdfnewwindow=true, pdfstartview=XYZ, plainpages=false" +\papersize a4paper +\use_geometry false +\use_package amsmath 2 +\use_package amssymb 2 +\use_package cancel 1 +\use_package esint 1 +\use_package mathdots 1 +\use_package mathtools 1 +\use_package mhchem 1 +\use_package stackrel 1 +\use_package stmaryrd 1 +\use_package undertilde 1 +\cite_engine basic +\cite_engine_type default +\biblio_style plain +\use_bibtopic false +\use_indices false +\paperorientation portrait +\suppress_date false +\justification true +\use_refstyle 0 +\use_minted 0 +\branch Standalone +\selected 1 +\filename_suffix 0 +\color #ff0000 +\end_branch +\index Index +\shortcut idx +\color #008000 +\end_index +\secnumdepth 3 +\tocdepth 2 +\paragraph_separation skip +\defskip medskip +\is_math_indent 1 +\math_indentation default +\math_numbering_side default +\quotes_style german +\dynamic_quotes 0 +\papercolumns 1 +\papersides 2 +\paperpagestyle fancy +\tracking_changes false +\output_changes false +\html_math_output 0 +\html_css_as_file 0 +\html_be_strict false +\end_header + +\begin_body + +\begin_layout Left Header +\begin_inset Argument 1 +status open + +\begin_layout Plain Layout +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +chaptername +\end_layout + +\end_inset + + +\begin_inset space ~ +\end_inset + + +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +thechapter +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +rightmark +\end_layout + +\end_inset + + +\begin_inset Note Note +status collapsed + +\begin_layout Plain Layout +Enable page headers and add the chapter to the header line. +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Right Header +\begin_inset Argument 1 +status open + +\begin_layout Plain Layout +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +leftmark +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Left Footer +\begin_inset Argument 1 +status open + +\begin_layout Plain Layout +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +thepage +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Center Footer + +\end_layout + +\begin_layout Right Footer +\begin_inset Argument 1 +status open + +\begin_layout Plain Layout + +\end_layout + +\end_inset + + +\begin_inset ERT +status collapsed + +\begin_layout Plain Layout + + +\backslash +thepage +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Chapter +Razprava +\end_layout + +\begin_layout Section +Težave pri pridobivanju podatkov +\end_layout + +\begin_layout Subsection +Napad Sybil +\end_layout + +\begin_layout Standard +Napad Sybil je pogosto možen v DHT omrežjih, ki za identifikacijske številke + vozlišč ne izvajajo asimetrične kriptografije — izrazito je prisoten pri + Kademili oz. + BitTorrent Mainline DHT. + Napad učinkovito omrtviči vozlišča — onemogoči vzpostavljanje povezav in + zapolni usmerjevalno tabelo tako, da so v njej večinoma napadalčeva vozlišča. + Napadalec iz enega ali več IP naslovov izdela veliko število virtualnih + vozlišč, katerih IDji so zelo blizu vozlišča žrtve napada. + Tako bo žrtev vedno vstavila napadalčeva vozlišča v usmerjevalno tabelo, + saj bo vedno lahko razpolovila koš. +\end_layout + +\begin_layout Standard +Usmerjevalna tabela žrtve ob uspešnem napadu izgleda takole: +\end_layout + +\begin_layout Standard +\begin_inset ERT +status open + +\begin_layout Plain Layout + + +\backslash +lstinputlisting[basicstyle= +\backslash +tiny]{/root/projects/travnik/misc/sybil.txt} +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Subsubsection +Preventivni omilitveni ukrepi +\end_layout + +\begin_layout Itemize +Vozlišče v usmerjevalno tabelo sprejme samo eno vozlišče iz enega IP naslova. + Težava nastane pri IPv6, ko je dolžina predpone omrežja lahko zelo različna. + Napadalci imajo lahko na voljo velik spekter naslovov, celo večji od /48, + legitimni uporabniki pa imajo velikokrat naslovne prostore velikosti /128 + (samo en naslov). +\end_layout + +\begin_layout Itemize +Uporaba fiksnih prefiksov IDjev (BEP 0042) (citiraj), kjer morajo vozlišča + uporabljati ID, ki se začne z IP naslovom, transformiranim skozi CRC32c + funkcijo. + Težava nastane, ko imajo napadalci spet dovolj velik naslovni prostor, + da lahko pokrijejo vse predpone IDja. + Poleg tega je to zgolj razširitev osnovnega DHT protokola, na katero se + odjemalci ne morejo zanašati. + Nepravilen ID je sicer lahko napadalec, lahko pa je tudi vozlišče, ki razširitv +e ni implementiral. +\end_layout + +\begin_layout Itemize +Vsakemu vozlišču lahko pred vstavljanjem v usmerjevalno tabelo pošljemo + ping paket, ki vsebuje drugačen ID, kot ga odjemalec sicer uporablja. + Če v odgovoru na ping ID vozlišča ni enak, kot smo ga videli prej, pomeni, + da je vozlišče zagotovo napadalec. + Težava nastane, ko lahko sogovornik nas smatra kot napadalca, saj smo mu + poslali pakete iz dveh različnih node IDjev (čeprav v teoriji ne smemo + zaupati izvornemu naslovu prejetih UDP paketov). +\end_layout + +\begin_layout Subsubsection +Ublažitev posledic napada +\end_layout + +\begin_layout Standard +travnik ima poleg omejitve največ enega vozlišča z enim IP naslovom v usmerjeval +ni tabeli tudi protiukrep, ki prepreči zavrnitev storitve kot posledico + napada Sybil. + Protiukrep deluje tako, da v primeru, ko zazna, da ima shranjenih več kot + 64 košev, izbriše skoraj celotno usmerjevalno tabelo in se še enkrat sinhronizi +ra z omrežjem z novim IDjem, v upanju, da napadalec ne bo napadel še enkrat. +\end_layout + +\begin_layout Subsection +Slaba zmogljivost mrežne opreme +\end_layout + +\begin_layout Standard +Ker se ob normalnem delovanju travnika prenese do 2000 paketov z različnimi + IP naslovi na sekundo, slaba omrežna oprema kljub majhni porabljeni pasovni + širini (okoli 4 megabite na sekundo) začne delovati slabo. + Ključen primer je bil domači optični modem, ki med delovanjem travnika + burno izgublja pakete do te mere, da prihaja do izpadov razreševanja internetni +h imen (DNS). + Problem sem omilil (na 2000 paketov/s) tako, da nov najden infohash dodam + med željene torrente največ enkrat na dve sekundi in omejim čas življenja + torrenta (koliko časa za torrent aktivno iščem soležnike, preden ga izbrišem) + na 256 sekund. + Seveda to zaradi velike količine torrentov, za katere nikoli ne dobim metapodat +kov, precej zmanjša število prejetih torrentov. +\end_layout + +\begin_layout Section +Uporabna vrednost korpusa prenesenih podatkov +\end_layout + +\begin_layout Standard +Podatki predstavljajo vzorec populacije torrentov, ki se pretakajo po internetu. + Vsak prenesen torrent je poleg metapodatkov o datotekah označen še s časom + prejema, programsko opremo in različico odjemalca, ki je torrent poslal, + ter IP naslovom pošiljatelja. + Glede na te informacije je možno analizirati stanje BitTorrent omrežja + skozi čas, ugotoviti, za kakšne namene se uporablja (kakšne vsebine se + pretakajo z njim), kateri programi/države prevladujejo, kakšni podatkovni + tipi datotek so najbolj pogosti itd. +\end_layout + +\begin_layout Section +Etičnost in legitimnost rudarjenja podatkov +\end_layout + +\begin_layout Standard +Čeprav gre za izrazito osebne podatke, se morajo uporabniki BitTorrent omrežja + zavedati, da so njihovi prenosi +\shape italic +a priori +\shape default + javni, tudi če jih nihče aktivno ne prenaša. + Nekateri BitTorrent odjemalci uporabnike ob prvem zagonu o tem celo obvestijo, + med delovanjem pa celo prikazujejo IP naslove soležnikov, na katere se + povezujejo. + Uporabniki se zato zavedajo, da je njihova identiteta drugim članom roja + znana. + Pogosto pa se ne zavedajo, da se obstoječe roje da odkriti in se jim pridružiti. + (vstavi sliko) +\end_layout + +\begin_layout Section +Invazivnost v omrežje +\end_layout + +\begin_layout Standard +Implementacija za to raziskavo je delovala neinvazivno, saj je implementirana + tako, kot bi bil implementiran navaden torrent odjemalec, le da zahteve + pošilja hitreje. + Ne poslužuje se bolj invazivnih taktik, ki posegajo v omrežje, kot je npr. + napad Sybil (citiraj), in dosledno shranjuje in daje drugim na razpolago + informacije o soležnikih. +\end_layout + +\begin_layout Standard +Program bi bil lahko manj invaziven, če bi namesto +\family typewriter +find_nodes +\family default + pošiljal +\family typewriter +ping +\family default + zahteve, ko bi bilo to ustrezno. + +\family typewriter +find_nodes +\family default + se vseeno uporablja, da se z enim paketom pridobi čim več informacij o + vozliščih. +\end_layout + +\begin_layout Section +Vzorčenje ključev +\end_layout + +\begin_layout Standard +Vzorčenje ključev, opisano v protokolu BEP-xxxx (citiraj), ni bilo uporabljeno, + ker ga ne podpirajo vse implementacije BitTorrent DHT protokola. + S pošiljanjem teh zahtev bi kljub temu vzorec pridobljenih torrentov obsegal + enako reprezentativen delež prenesenih torrentov na internetu, saj so vozlišča, + ki podpirajo ta protokol, zaradi naključnih IDjev homogeno razpršena po + naslovnem prostoru. +\end_layout + +\begin_layout Standard +\begin_inset Branch Standalone +inverted 0 +status open + +\begin_layout Standard +\begin_inset Note Note +status open + +\begin_layout Plain Layout +The contents of this branch is only output if this chapter is processed + on its own, i. +\begin_inset space \thinspace{} +\end_inset + +e., not from the master. + This allows you to have a bibliography and a nomenclature if you only want + to output this chapter. +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +\begin_inset CommandInset include +LatexCommand include +filename "Bibliography.lyx" + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\end_body +\end_document -- cgit v1.2.3