Veselkov Konstantin 97a77a4401 | 6 years ago | |
---|---|---|
build | 7 years ago | |
screenshots | 7 years ago | |
.gitignore | 7 years ago | |
LICENSE | 7 years ago | |
README.md | 7 years ago | |
color.go | 6 years ago | |
flock.go | 7 years ago | |
main.go | 7 years ago | |
markov.go | 7 years ago | |
optionManualTweetFromFlock.go | 7 years ago | |
optionMarkovFlockBotnet.go | 7 years ago | |
optionTweetMarkov.go | 7 years ago | |
readConfigTokensAndConnect.go | 7 years ago | |
readTxt.go | 7 years ago | |
text.txt | 7 years ago | |
waitTime.go | 7 years ago |
A twitter botnet with autonomous bots replying tweets with text generated based on probabilities in Markov chains
Markov chain: https://en.wikipedia.org/wiki/Markov_chain
The algorithm calculates the probabilities of Markov chains, analyzing a considerable amount of text, for the examples, I've done it with the book "The Critique of Pure Reason", by Immanuel Kant (http://www.gutenberg.org/cache/epub/4280/pg4280.txt).
When the botnet is up working, the bots start streaming all the twitter new tweets containing the configured keywords. Each bot takes a tweet, analyzes the containing words, and generates a reply using the Markov chains previously calculated, and posts the tweet as reply.
In the following examples, the bots ("andreimarkov", "dodecahedron", "projectNSA") are replying some people.
configuration file example (flockConfig.json):
[{
"title": "account1",
"consumer_key": "xxxxxxxxxxxxx",
"consumer_secret": "xxxxxxxxxxxxx",
"access_token_key": "xxxxxxxxxxxxx",
"access_token_secret": "xxxxxxxxxxxxx"
},
{
"title": "account2",
"consumer_key": "xxxxxxxxxxxxx",
"consumer_secret": "xxxxxxxxxxxxx",
"access_token_key": "xxxxxxxxxxxxx",
"access_token_secret": "xxxxxxxxxxxxx"
},
{
"title": "account3",
"consumer_key": "xxxxxxxxxxxxx",
"consumer_secret": "xxxxxxxxxxxxx",
"access_token_key": "xxxxxxxxxxxxx",
"access_token_secret": "xxxxxxxxxxxxx"
}
]