Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon.

Pages: 1-4041-8081-

Omegle-Spy thread! Post your logs!

Name: Anonymous 2010-08-18 6:39



Omegle-Spy is a Java application that acts as an omegle host, and connects two unsuspecting omgle-users to you, so you can snoop in on the conversation, and send messages to the participants individually, without letting the other party know.

It's hilarious.

http://code.google.com/p/omegle-spy/
http://www.mediafire.com/download.php?bh96rtq85r3tc57

The MediaFire link is an SVN checkout, since there are no downloads available at the Google Code page.

Run the "OmegleSpy.jar" file to start the program, requires that you have Java installed. Enjoy!

Name: Anonymous 2010-08-18 6:47

Polecat kebabs.

Name: Anonymous 2010-08-18 6:51

It's funny that you're willing to assume people have Java installed, but not SVN.

Name: Anonymous 2010-08-18 6:56

Someone rewrite this in a sensible language, please.

Name: Anonymous 2010-08-18 6:58

I can't wait for summer to be over.

Name: Anonymous 2010-08-18 7:19

>>5
Dave Fischer here. HAHAHAHA

Name: Anonymous 2010-08-18 7:49

>>1
Take this shit to /lounge/.

Name: Anonymous 2010-08-18 9:49

>>2
Just posting that as what you think it means isn't going to do anything because everyone else just thinks it's some silly shit from /prog/.

Name: Anonymous 2010-08-18 9:55

This is shit.

Name: Fuck off, !Ep8pui8Vw2 2010-08-18 15:32

>>2,5,7,9
Fuck off, ``faggot''.

Name: Nathan 2010-08-18 21:29

Could you post the source please? I am very interested in this.

Name: Anonymous 2010-08-18 21:36

I would also like to see the source. How does one create something like this?

Name: Anonymous 2010-08-18 22:03

>>7
No, we don't want this shit over on our board either. Take it to /b/ instead.

Name: Anonymous 2010-08-19 0:03

>>11,12
IHBT

Name: Anonymous 2010-08-19 4:16

Name: amonimous 2010-08-21 8:53

sup,
works for a bit then i get that thing,
reload the page or somshit,
what do?

Name: amomimous 2010-08-21 9:00

16 here
anyone help please

Name: Anonymous 2010-08-21 9:11

>>16,17
I hope you get hit by a car.

Name: Anonymous 2010-08-21 9:13

>>18
I hope you get hit by a cdr.

Just to make sure.

Name: Anonymous 2010-08-21 10:06

>>12
It's simple, the program just joins 2 Omegle conversations and acts as a bridge between the two*. From there it's easy to send fake messages and such.
* I haven't actually looked at the souce, but I'm assuming that's how it works.

Name: Anonymous 2010-08-21 11:54

>>4

#!/usr/bin/env python2.6
# vim: encoding=utf-8

import json
from threading import Thread
from Queue import Queue, Empty
from urllib2 import urlopen
from urllib import urlencode
from time import sleep

import sys
reload(sys)
sys.setdefaultencoding('utf-8')

class OmegleConnection(object):

    class OmegleEvents(Thread):
        """ They are as follows:

        [u'connected']
        [u'typing']
        [u'gotMessage', u'lolwhut']
        [u'stoppedTyping']
        [u'strangerDisconnected']

        """
        def __init__(self, parent):
            self.id = parent.id
            self.queue = Queue()
            Thread.__init__(self)
        def run(self):
            while True:
                r = json.loads(urlopen("http://bajor.omegle.com/events", urlencode({'id': self.id}), 10000).read())
                if r == None:
                    self.queue.put(None)
                    return
                for i in r:
                    self.queue.put(i)
        def get(self):
            x = []
            try:
                while True:
                    x.append(self.queue.get(False))
            except Empty:
                pass
            return x

    def __init__(self):
        self.id = json.loads(urlopen("http://bajor.omegle.com/start?rcs=1&pid=").read())
        self.events = self.OmegleEvents(self)
        self.events.start()

    def typing(self):
        urlopen("http://bajor.omegle.com/typing", urlencode({'id': self.id}))
    def stoppedtyping(self):
        urlopen("http://bajor.omegle.com/stoppedtyping", urlencode({'id': self.id}))
    def send(self, msg):
        urlopen("http://bajor.omegle.com/send", urlencode({'msg': msg, 'id': self.id}))
    def disconnect(self):
        urlopen("http://bajor.omegle.com/disconnect", urlencode({'id': self.id}))
    def read(self):
        return self.events.get()

def tr(a, b, pr):
    es = a.read()
    for e in es:
        if e == None or e[0] == "strangerDisconnected":
            print pr, "<disconnected>"
            b.disconnect()
            sleep(2) # Give the threads time to die.
            raise SystemExit(0)
        elif e[0] == 'connected' or e[0] == 'waiting':
            pass
        elif e[0] == "typing":
            print pr, "<typing>"
            b.typing()
        elif e[0] == "gotMessage":
            print pr, e[1]
            b.send(e[1])
        elif e[0] == "stoppedTyping":
            print pr, "<stoppedTyping>"
            b.stoppedtyping()
        else:
            print pr, "<unknown:"+repr(e)+">"

def main():
    a = OmegleConnection()
    b = OmegleConnection()
    while True:
        tr(a, b, "a→")
        tr(b, a, "b→")
        sleep(0.5)

if __name__ == '__main__':
    main()

Name: Anonymous 2010-08-21 12:23

>>11-12
Use jad. God you people are morons

Name: Anonymous 2010-08-21 14:08

>>22
It's open source, no need to decompile it.

Name: 21 2010-08-21 17:37

I believe my post, due to it taking an whole hour of effort, deserves more attention that it has received up to this point.

Name: Anonymous 2010-08-21 18:01

sage for smegma-spy

Name: Anonymous 2010-08-21 18:34

>>24
Yes, yes, thank you, Xarn.

Name: Anonymous 2010-08-21 18:51

>>26
Xarn doesn't use Python 2.6. He's on Debian.

Name: Anonymous 2010-08-21 19:16

>>21 was a good post. >>24 was a terrible post.

Name: Anonymous 2010-08-21 19:54

>>27
Only you, care about what Xarn uses, Xarn.

Name: Anonymous 2010-08-21 19:59

>>29
That first comma was an accident.

Name: Anonymous 2010-08-22 9:03

>>30
Nice try Xarn

Name: Anonymous 2010-08-22 9:17

>>26,29
Most people grow out of this sort of behavior in elementary school.

Name: Anonymous 2010-08-22 10:28

>>32
What behavior? Fanboying for someone in an anonymous BBS?

Name: Anonymous 2010-08-22 11:03

>>33
Nobody cares that you don't like Xarn, >>26,29,33. Quit shitting up /prog/ with your petty vendetta.

Name: Anonymous 2010-08-22 11:56

>>34
Quit shitting up /prague/ with your petty vendetta vendetta.

Name: Anonymous 2010-08-22 14:36

I keep getting "Please reload the page for technical reasons." and there is no captcha on Omegle for me to fill in, which is supposed to fix this. What do I do now?

Name: Anonymous 2010-08-22 14:55

>>36
Have you considered suicide?

Name: Anonymous 2010-08-22 15:30

>>37
Have tried a couple of times, it's pretty good. A+++++ would try again.

Name: Anonymous 2010-08-22 15:52

$> python omeglespy.py
  File "omeglespy.py", line 69
    print pr, "<disconnected>"
           ^
SyntaxError: invalid syntax

Name: Anonymous 2010-08-22 16:57

>>36
same here ... have they fixed this exploit?

Name: Anonymous 2010-08-22 19:10

>>40
exploit?
Oh you kids, trying so hard to be "hackers."

Name: Anonymous 2010-08-22 19:11

>>40
Who cares?

Name: Anonymous 2010-08-22 21:46

>>40
Nobody answer this kid who can't research on his own

Name: Anonymous 2010-08-22 21:51

>>43
Were I not this lazy, I'd probably actually bother to answer him.

Name: Anonymous 2010-08-23 9:22

>>40
no still happens, i can use it once everytime i boot up my computer. and in the hundreds of times ive used omegle i think i've done a captcha there once -any ways to make it come up?

Name: Anonymous 2010-08-23 12:44


[17:43:50] Finding two strangers...
[17:43:50] Justa connected
[17:43:50] Myrna connected
[17:43:52] Justa: Hey
[17:43:53] Justa: wats up
[17:44:17] Myrna: nothing
[17:44:21] Myrna: wht ur name
[17:44:24] Justa: sterling
[17:44:25] Justa: wats urs

Name: Anonymous 2010-08-23 15:22

>>39
Which part of #!/usr/bin/env python2.6 don't you get?

Name: Guido 2010-08-23 15:53

>>47
Python 2 is deprecated

Name: Anonymous 2010-08-23 16:52

>>48
The most recent version of Python that came out is Python 2.7.

Name: Anonymous 2010-08-23 17:22

>>49
So whats going to happen to the release after Python 2.9?

Name: Anonymous 2010-08-23 18:51

>>49
maybe so, but Guido wants you to use 3.x

Name: Anonymous 2010-08-23 18:55

>>50

NOTHING. IT'LL BE JUST FINE, THANKS

Name: Anonymous 2010-08-23 19:12

>>50
We're still going to have two branches, Python 3.x and Python 3kx.

Name: Anonymous 2010-08-23 19:36

>>50
2.10, idiot.

Name: Anonymous 2010-08-23 19:37

a→ <connected>
b→ <connected>
b→ hay asl
a→ hi
a→ m
b→ how old?
b→ im f btw
a→ 28
b→ hottt i like older guys im 19
a→ my cock is tuff too
a→ can u afford
b→ omg how big
a→ more than 6 inches
b→ well no shit 6 inches is baby size haha
a→ than go to africa u got 13 inches long
b→ im wet thinking about it
a→ whats ur name
b→ lexi urs?
a→ tariq
b→ omg r u black????
a→ not
a→ u like black
b→ damn i love black men
a→ ?
a→ my cok is black
b→ but is it big????
a→ ya u can suck it
a→ did u suck
b→ as long as u promise to cum all over my face and tits
a→ i will cum on ur mouth
b→ ill swallow
b→ <disconnected>

Name: Anonymous 2010-08-24 2:10

>http://code.google.com/p/omegle-spy/issues/detail?id=2#c19

a patched version can be found there.  works perfectly; occasionally prompts for captcha.

operator of omegle on reddit:
>Ok, so I added some code to Omegle that blocks this using a simple heuristic. Obviously, we can get into a cat and mouse game where you guys add code that camouflages what you're doing, and I modify my code to detect it more accurately, but I'd really prefer if we didn't have to do that.
>but I'd really prefer if we didn't have to do that.
in over his head

anybody think of any good ways to prevent this?  seems to me the only way is to try to detect that an identical message M from Alice->Eve was sent from Eve->Bob around the same time.  obviously not too practical.

random guy who is patching omegle-spy:
>but an arms race is always fun - until Omegle is willing to kick out any user behind a NAT this will get interesting.

Name: Anonymous 2010-08-24 8:18

>>56
anybody think of any good ways to prevent this?
Digital signing to confirm authenticity of the message, encryption to prevent spying.
But I wonder if it's really worth doing this for conversations such as >>55.

Name: Anonymous 2010-08-24 8:52

>>21
thank you, good sir

Name: Anonymous 2010-08-24 10:23

>>57
Sorry, what? Do you understand the method through which the spying is done?

Name: Anonymous 2010-08-24 11:17

>>59
No, I do not. I haven't used the program nor have I read the source.
I assume that the program connects to the Omegle server twice, and acts as a tunnel between its two connections.
I realize that my suggestion was stupid.

Name: Anonymous 2010-08-24 16:01

>>56
It should be pretty trivial to detect. Use a cache with short expiry time (~30s) to store sender/recipient pairs with hashes of the normalized message string for keys. Add a suspicion token to the users for each match. Optionally detect and ignore common phrases.

Name: Anonymous 2010-08-24 20:36

>>61
yeah this seems like a good enough solution.  you could get around it by making minor (spelling, punctuation, word choice) changes in messages that you forward.  but whatever ... like >>57 mentioned these conversations are all drivel anyway.  and the omegle demographic might not give a shit of they are being spied on.

Name: Anonymous 2010-08-28 12:29

>>36
no it's still broken

Name: Anonymous 2010-11-13 7:26

John is a newfag

Name: Anonymous 2010-11-13 16:05

>>21
good job, altough at the second run it receives
<unknown:[u'recaptchaRequired', u'6Lf_FQgAAAAAAJZLLdpvkGDBqkClBarwYrpxGxo8']>

Name: 21 2010-11-13 18:25

>>65
That's when you visit omegle.com and enter the captcha, before restarting the app.

Name: Anonymous 2010-11-13 18:39

>>27
I'm on Debian sid:

# python --version
Python 2.6.6

# python3 --version
Python 3.1.2

Name: Anonymous 2010-11-14 1:12

>>67
Why are you running as root?
Why are you writing the unnecessarily verbose --version rather than the much quicker to type -V?
Why are you still clinging onto 2.6?
Why would anyone use Debian?

Name: Anonymous 2010-11-14 2:22

>>68
- Why not?
- ZOMG OPTIMIZED now go eat shit and die
- hahaha good one
- SPAM INSTALL UBUNTU FOR THAT REFRESHING BROWNNESS

Name: Anonymous 2010-11-14 10:07

>>68
Python's -v flag is --verbose, not --version.  This is as it should be.  Not everyone switches to Python 2.7 right away.  You probably use Gentoo or Arch, you goddamn ricer.

Name: Anonymous 2010-11-14 10:25

>>70
You're an idiot, -V is not -v.

And who cares about 2.7? Use 3.x for fuck's sake.

Name: Anonymous 2010-12-17 1:28

Xarn is a bad boyfriend

Name: anonymous 2010-12-21 5:12

fucking pussies go to hell

Name: Anonymous 2010-12-21 9:34

it's not hilarious, omegle is full of complete morons

Name: Anonymous 2010-12-21 9:43

3/4 * 100 GET

Name: Anonymous 2011-01-08 18:33

if there is a name then its fake cos on omegle u never need 2 or even can enter you name and you all just lost the game

Name: Anonymous 2011-01-31 19:46

<-- check em dubz

Name: Anonymous 2011-02-03 1:01

Name: Anonymous 2011-04-10 5:52

I got tired of the captchas so I jizzed it up a bit with proxies and some other stuff. It's still python2 as python3 doesn't have pycurl-support.

#!/usr/bin/env python2
# coding=utf-8

from __future__ import print_function
import json
from threading import Thread
from Queue import Queue, Empty
import pycurl
from urllib import urlencode
from time import sleep
from functools import wraps

import sys
reload(sys)
sys.setdefaultencoding('utf-8')

def urlopen(proxy, url, data = ''):
    class Buffa:
        def __init__(self):
            self.contents = ''
        def body_callback(self, buf):
            self.contents = self.contents + buf
        def read(self):
            return self.contents
    b = Buffa()

    c = pycurl.Curl()
    c.setopt(pycurl.URL, url)
    if proxy:
        c.setopt(pycurl.PROXY, 'localhost')
        c.setopt(pycurl.PROXYPORT, 9050)
        c.setopt(pycurl.PROXYTYPE, pycurl.PROXYTYPE_SOCKS5)
    if data != '':
        c.setopt(pycurl.POSTFIELDS, data)
    c.setopt(pycurl.WRITEFUNCTION, b.body_callback)
    c.setopt(pycurl.TIMEOUT, 9001)

    c.perform()
    return b

class OmegleConnection(object):
    class OmegleEvents(Thread):
        """ They are as follows:

        [u'connected']
        [u'typing']
        [u'gotMessage', u'lolwhut']
        [u'stoppedTyping']
        [u'strangerDisconnected']

        """
        def __init__(self, parent):
            self.id = parent.id
            self.proxy = parent.proxy
            self.queue = Queue()
            Thread.__init__(self)

        def run(self):
            while True:
                r = json.loads(urlopen(self.proxy,
                                     "http://bajor.omegle.com/events",
                                     urlencode({'id': self.id})).read())
                if r == None:
                    self.queue.put(None)
                    return
                for i in r:
                    self.queue.put(i)

        def get(self):
            x = []
            try:
                while True:
                    x.append(self.queue.get(False))
            except Empty:
                pass
            return x

    def __init__(self, pr, proxy):
        self.proxy = proxy
        self.id = json.loads(urlopen(self.proxy,
                            "http://bajor.omegle.com/start?rcs=1&pid=").read())
        print(pr, "<connected:" + self.id + ">")
        self.events = self.OmegleEvents(self)
        self.events.start()

    def typing(self):
        urlopen(self.proxy, "http://bajor.omegle.com/typing", urlencode({'id': self.id}))
    def stoppedtyping(self):
        urlopen(self.proxy, "http://bajor.omegle.com/stoppedtyping", urlencode({'id': self.id}))
    def send(self, msg):
        urlopen(self.proxy, "http://bajor.omegle.com/send", urlencode({'msg': msg, 'id': self.id}))
    def disconnect(self):
        urlopen(self.proxy, "http://bajor.omegle.com/disconnect", urlencode({'id': self.id}))

    def read(self):
        return self.events.get()

def tr(a, b, pr):
    es = a.read()
    for e in es:
        if e == None or e[0] == "strangerDisconnected":
            print(pr, "<disconnected>")
            b.disconnect()
            sleep(2) # Give the threads time to die.
            raise SystemExit(0)
        elif e[0] == 'connected' or e[0] == 'waiting':
            pass
        elif e[0] == "typing":
            b.typing()
        elif e[0] == "gotMessage":
            print(pr, e[1])
            b.send(e[1])
        elif e[0] == "stoppedTyping":
            b.stoppedtyping()
        else:
            print(pr, "<unknown:"+repr(e)+">")

def main():
    a = OmegleConnection("\x1B[31ma:\x1b[0m", True)
    b = OmegleConnection("\x1B[32mb:\x1b[0m", False)
    #b.send("[WARNING: Omegle™ is required under United States Federal Law to inform you that the IP (98.179.227.210) of the person whom you are chatting with is linked to a registered sex offender. Omegle™ encourages you to consider this when giving out personal information. The stranger cannot see this message.]")
    while True:
        tr(a, b, "\x1b[31ma:\x1b[0m")
        tr(b, a, "\x1b[32mb:\x1b[0m")
        sleep(0.2)

if __name__ == '__main__':
    main()

Name: Anonymous 2011-04-10 7:03

>>79
    #b.send("[WARNING: Omegle™ is required under United States Federal Law to inform you that the IP (98.179.227.210) of the person whom you are chatting with is linked to a registered sex offender. Omegle™ encourages you to consider this when giving out personal information. The stranger cannot see this message.]")
I love you, you magnificent bastard.

Name: Anonymous 2011-04-10 15:33

>>16
Just get on Omegle normally, fill in the CAPTCHA, disconnect, and resume using Omegle-Spy.

Name: Anonymous 2011-04-10 15:48

Name: Anonymous 2011-04-10 22:16

>>79
ONE FIOC: THE FIOCED INFIOCATION OF FIOC. FIOC OVER.

Name: Anonymous 2011-05-09 10:07

i have aids

Name: Anonymous 2011-05-09 16:44

>>83
I remember making this post.

Name: Anonymous 2011-07-04 16:01

is it broken now???? i keep getting "reload page for technical error"

Name: Anonymous 2011-07-04 16:42

>>86
Omegle doesn't use python/twisted anymore. This program is useless now.

Name: Brentbxr 2011-07-22 20:07

OmegleSpy (the original) is no longer up kept. Out of requests for the application to become working again I took over the project under the name OmegleSpyX Resurrection (see http://code.google.com/p/omeglespyx/wiki/HelpWanted ) At the moment its just me keeping it alive but if any java coders want to help me take this app to the next level, please let me know via google code.

OmegleSpyX has alot of upgrades from the original,
* including a captcha function now, it will ask you to input the captcha and show the image to you, it also knows if you failed and asks for it again. 
* Thread speed was increased 1/3
* More event handlers where put in place for more stability and control.
* cosmetics upgraded
* source code was cut down in half (went from 90kb to 43kb compiled, due to alot of useless crap)
* development mode switches added to source (might bring them out into an ini or somthing later) but when running with a java console you can view 100% of communications and even manipulate them
* more crap i cant think of...

and I have only started doing this for about a week.

I need a better java coder to help bring it to the next level. I am a c++. c, C# application coder, I never did java before this project, but you know one language you know how to code in just about any language. but still someone with great java skills could really take it up a notch, perhaps even a video version of the app? that would make the app huge! so big omegle would find a way to shuw it down and ruin all the fun and we would have to make a private version (history repeats itself).

Name: Anonymous 2011-07-23 1:57

If it ain't Lisp, it's crap.

Name: Anonymous 2011-07-23 6:03

>>89
If it's Lisp, it's fucking gay.

Name: Anonymous 2011-07-23 6:44

>>90
There are only two categories of software: crap and gay. Therefore, using computer software makes you a retard inclusive-or a faggot.

Name: Anonymous 2011-07-23 6:49

>>91
No, faggot. fuck you

Name: Anonymous 2011-07-23 7:48

fuck yall I use PGP so you can't MITM me

Name: Anonymous 2011-07-23 8:15

>>91
There are only 2 kinds of statements: lies and truth.  Therefore, speaking makes you a liar-or fuck you, faggot.

Name: Anonymous 2012-03-22 13:43

I'm beta testing a version of omeglespy that almost eliminates the recaptcha challenges entirely. Like my browser gets challenged more often than the app. You can get it by emailing the owner of https://code.google.com/p/omeglespy-z/ or mentioning @darkimport on twitter.

Don't change these.
Name: Email:
Entire Thread Thread List