summaryrefslogtreecommitdiff
path: root/slides/slides.tex
blob: 35c3f1dbcb379d4c96152ecc331ba09cb23c8073 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
\documentclass{beamer}
\usepackage[ngerman]{babel}
\usepackage[utf8x]{inputenc}
%\usepackage{iwona}
\usepackage{palatino}
\usepackage{beamerthemesplit}
\usepackage{url}
\usepackage{graphicx}

\usepackage{listings}
 \lstdefinelanguage{JavaScript}{
     keywords={attributes, class, classend, do, empty, endif, endwhile, fail, function, functionend, if, implements, in, inherit, inout, not, of, operations, out, return, set, then, types, while, use},
     keywordstyle=\color{blue}\bfseries,
     ndkeywords={},
     ndkeywordstyle=\color{yellow}\bfseries,
     identifierstyle=\color{black},
     sensitive=false,
     comment=[l]{//},
     commentstyle=\color{green}\ttfamily,
     stringstyle=\color{red}\ttfamily,
     morestring=[b]",%
  }

\usetheme{Warsaw}
\usefonttheme{professionalfonts}

\title{\emph{\sc Omegle}}
\subtitle{Spiel, Spass und Spannung}
\author{Yves Fischer}
\institute{Übungsvortrag im Fach Vortragstechniken an der\\
DHBW Stuttgart Aussenstelle Horb}
\date{Montag 15. Juni 2009}

\newcommand{\simplesplit}[2][]{
\begin{columns}
  \begin{column}{5cm}
    #1
  \end{column}
  \begin{column}{5cm}
    #2
  \end{column}
\end{columns}
}

\begin{document}
\frame{\titlepage}

\section{Was ist Omegle}
\begin{frame}
  \textbf{Omegle}
  \begin{itemize}
  \item ... verbindet zwei Gesprächspartner zufällig
  \item ... ist ,,Web 2.0''. Setzt mit Ajax auf REST-Interface und
    JSON als Datenformat.
  \item ... ist \emph{nicht} primär eine Cybersex Plattform
  \item Hat angeblich je nach Zeit zwischen 2500 und 4000 Benutzer
  \end{itemize}
\end{frame}

  % \begin{frame}\frametitle{Omegle technisch betrachtet}
  %   asd
  % \end{frame}


  \section{Fun mit Omegle}
  \frame{
    \begin{center}
      {\Huge \it Spass mit Omegle}
    \end{center}
  }
\begin{frame}[fragile]\frametitle{,,Easteregg''} 
  \lstset{language=JavaScript,
    extendedchars=true,
    basicstyle=\scriptsize,
    showstringspaces=false,
  }
  \begin{lstlisting}
if(Q=="stranger" && 
      ( R.indexOf("FBI") !==-1 
        || R.toLowerCase().indexOf("federal bureau")!==-1)) {
  A("If the above message says you "+ 
    "have been reported to the FBI, "+
    "it is not legitimate. Please ignore it.");
}
  \end{lstlisting}
\small
  \begin{itemize}
  \item \url{http://omegle.com/static/omegle.js}
  \end{itemize}
\end{frame}

  
  \begin{frame}\frametitle{Re-Implementation der Omegle
       Plattform}
     \begin{columns}
       \begin{column}{5cm}
     \begin{itemize}\small
       \item Zum testen der eigenen ,,Omegle-Applikationen''
       \item ebenfalls mit python und twisted-Framework
       \item Zurzeit teils funktionsfähig. Weitere funktionen wie Malen oder Bildertausch geplant
       \end{itemize}
     \end{column}
     \begin{column}{7cm}
       \includegraphics[width=\textwidth]{img/chatserver.png}
     \end{column}
     \end{columns}
   \end{frame}

  \begin{frame}\frametitle{eigene Omegle Clients}
  \begin{columns}
    \begin{column}{5cm}
      \begin{itemize}
      \item einfacher Konsolenchat
      \item ncurses chat mit python-urwid
      \end{itemize}
    \end{column}
    \begin{column}{5cm}
      \includegraphics[width=5cm]{img/chat.png}
    \end{column}
  \end{columns}
  \end{frame}

   \begin{frame}\frametitle{Mitschneiden von Inhalten}
     \includegraphics[width=10cm]{img/proxy.pdf}
   \end{frame}

\begin{frame}[fragile]\frametitle{Training eines Bots} 
  \lstset{language=SQL} \tiny
  \begin{lstlisting}
SELECT message
  FROM omegle_messages 
 WHERE ( message ILIKE '%sex%'
      OR message ILIKE '%boob%'
      OR message ILIKE '%horny %'
      OR message ILIKE '%pussy %'
      OR message ILIKE '%ass %'
      OR message ILIKE '%naked%'
      OR message ILIKE '%fuck%'
      OR LENGTH(message) < 7 AND CAST(RANDOM()*10 as integer)=1)
   AND
      LENGTH(message) < 35 
   AND NOT ( message ILIKE '%www.%'
          OR message ILIKE '%http%'
          OR message ILIKE '%@%.%');
  \end{lstlisting}
\small
  \begin{itemize}
  \item Alle Nachrichten in denen die {\it Wörter} vorkommen und keine
    Adressen vorkommen.
  \item keine Nachrichten groesser 34 Zeichen ({\sc ASCII}-Art)
  \end{itemize}
\end{frame}

\begin{frame}[fragile]\frametitle{Unterhaltung}\tiny
  \begin{columns}
    \begin{column}{5cm}
\begin{verbatim}
 Megahal Connection confirmed
Stranger: hellO 
 Megahal: Hello, asl, cybersex.
Stranger: 23 m usa
 Megahal: Usa fuck u.
Stranger: same to u 
 Megahal: To fuck your ass.
Stranger: lets all fuck your mother 
 Megahal: To fuck your mother.
Stranger: fuck your preteen sister :P
 Megahal: Your ass is so tight.
Stranger: with her sweet untouch asshole
          i would love to  fuck her
 Megahal: To fuck your ass.
Stranger: your mother ass is so tight that
          we need a car jack to open it up
 Megahal: To fuck your mother.
Stranger: :P
 Megahal: Fuck your preteen sister :p.
ahalBot Megahal:Stranger is typing
 Megahal disconnect
\end{verbatim}
      \end{column}
      \begin{column}{5cm}
\begin{verbatim}
Stranger: asl
 Megahal: Hello, asl, cybersex.
Stranger: msn?
 Megahal: Do you want sex you have msn
          or horny picture.
Stranger: yes
 Megahal: Hell yes i am haha.
Stranger: tell ur msn
 Megahal: Ur a fucken hot pussy.
Stranger: i know
 Megahal: I really want to fuck, i can fuck.
Stranger: nice
 Megahal: And pussy juice yummmm fuck.
Stranger: you make me so fuckng horny
 Megahal: Me want sex you have sex with me.
Stranger: yar
 Megahal: I am already naked.
Stranger: fuck yes
 Megahal: Yes yes go sex time.
Stranger: yeah sex tiem
 Megahal: Do you want sex you 
          have sex with a girl.
Stranger: you are so intelligent
 Megahal: Are you naked.
Stranger: no i´m not
 Megahal: Not like sex.
Stranger: i wear underwear at the móment
 Megahal: F or m.
\end{verbatim}
      \end{column}
    \end{columns}
  \begin{itemize}
  \item Abbruch der Verbindung mit ,,Processing Failed''. Filter?
  \end{itemize}
\end{frame}

\frame{\frametitle{Auswertung}
  \begin{itemize}
    \item Abbruch der Verbindung mit ,,Processing Failed''. Filter?
    \item Asiaten brechen bei {\it sinnlosen} Bot-Aussagen weniger ab
    \item Die allgemein schlechten Englischkentnisse auf Omegle
      begünstigen den Einsatz von Megahal
    \item Megahal ist hin und wieder in der Lage seinem Partner nicht aufzufallen
    \item Das trainieren von Megahal mit Begriffen aus Konversationen rund um Cybersex ist sinnvoll, wenn lange Konversationen gewünscht sind, da hier Fehler des Bots nicht so stark ins Gewicht fallen
    \end{itemize}

}
\frame{\frametitle{Auswertung 2}
    \begin{itemize}
    \item Megahal ist nicht in der Lage ein Gesprächsverlauf zu analysieren sondern betrachet jeweils nur die letzte Aussage seines Gesprächspartners. Daher kommt er leicht al vom Thema ab.
    \item Megahal ist nicht intelligent. Er weiss nicht, dass er nach ,,19M Holland'' nicht ,,19M Finnland'' sonder eher ,,19F'' sagen sollte.
    \item Manchmal fängt Megahal an sich nur zu wiederholen.
    \item Megahal merkt nicht, wenn jemand gemerkt hat, dass er ein Bot ist.
  \end{itemize}
}

\section{Demonstration}
\frame{\frametitle{}
  \begin{center}\Huge Demonstration \end{center}
}

\begin{frame}\frametitle{Quellen}
  \begin{itemize}
  \item omegle \url{http://omegle.com}
  \item megahal \url{http://megahal.alioth.debian.org/}
  \item python-omegle tools \url{http://xapek.org/svn/common/omegle}
  \item Omegle Klon in python \url{http://xapek.org/svn/common/chat}
  \item Perl WWW::Omegle
    \url{http://search.cpan.org/~revmischa/WWW-Omegle-0.02/lib/WWW/Omegle.pm}
  \item Folien
    \url{http://xapek.org/svn/common/omegle/slides/slides.pdf}
  \end{itemize}
\end{frame}

\end{document}