Tuesday, July 3, 2012

Emulating USB Devices with Python

by Travis Goodspeed <travis at radiantmachines.com>
as presented with Sergey Bratus at Recon 2012
with thanks to Sergio Alverez and the Dartmouth Scooby Gang.

Not long ago, I was giving a lecture to Sergey Bratus's class at Dartmouth, where he asked me to teach the students about SPI, I2C, and the other bus protocols that are commonly found in embedded systems. When a student made the inevitable joke about Sergey's Magic School Bus, my good neighbor's eyes lit up and he exclaimed, "It's not a bus; it's a network!"

The Magic School Bus is a Network!

A bottle of Laphroaig 18 later, we came to the conclusion that while libusb and python-usb make it easy to prototype USB host-side applications, there wasn't really anything handy for prototyping device-side applications. So the next afternoon, we wired a MAX3421 EVK into the GoodFET41. This allows us to write USB devices entirely in host-side Python, fuzzing for device-driver vulnerabilities wherever we like.

Unlike the Teensy and similar hardware, this tool is not designed to run standalone. All of the complicated software is in Python on one workstation, while the emulated USB device appears on a second workstation. This makes fuzz testing and exploit debugging a hell of a lot more efficient, while the resulting exploit can be ported to run as C firmware for deployment.

GoodFET Does USB

Introducing the Facedancer Board

Our rough prototype was refined into a single board, which is documented as the Facedancer10 as part of the GoodFET project. The board consists of a GoodFET41 with the MAX3420 target onboard. One USB Mini plug runs to the workstation emulating a USB device, and the other USB Mini plug runs to a second host which sees only the emulated device.

Facedancer10 Prototype

The C firmware running on the MSP430 is intentionally kept as minimal as possible, with complexity pushed to the Python client in order to speed development and prevent the need for reflashing during development. This is perfectly fine for emulating USB devices, as kernels seem very tolerant of delays in responses. Additionally, the MAX3420 handles all fast-reaction timings itself, so our round-trip overheads don't create any serious problems.

To learn how the chip functions, read the MAX3420E Programming Guide and similar documents from the MAX3420E Page of Maxim's website.

Maxim MAX3420E

Learning USB

As a networking protocol, USB is quite different from the IP protocols that you are likely familiar with. It is not more difficult, but it is designed along different lines, with a different philosophy and different concepts. To learn the language, I recommend a mixture of reverse engineering devices, writing drivers, and writing emulators. Sniff some traffic with Wireshark, VMWare, or a Total Phase Beagle, then read it and try to write your own client in PyUSB. A good tutorial on that can be found in Adafruit's page on Hacking the Kinect.

In all of this, remember that USB is a network, not a bus. You can be just as 1990's stack-evil as you like, and a lot of the 90's tricks still work in USB. Every device driver included in the operating system is the equivalent of an open port!

Clear code examples for USB protocols can generally be found either in other microcontroller implementations or in the relevant BSD or Linux drivers. In general, you need to know just enough of the SETUP endpoint (EP0) to get the driver to select and initialize the device, then the packets will begin flowing over the other endpoints. There are exceptions, but generally this traffic flows through a device-specific protocol on two more endpoints, one of which is bulk-in and the other bulk-out.

HID Keyboard Emulation

As an example, I've included in the GoodFET repository a script which emulates a simple keyboard through the USB HID protocol. It's run with 'goodfet.maxusbhid', but the bulk of the code is found as the GoodFETMAXUSBHID class in GoodFETMAXUSB.py. The important thing to keep in mind when working from this code is that you are speaking a real protocol, USB HID. You are speaking it over a real chip, the MAX3420. Look up the documentation for both of those if anything is confusing, and look for code examples if things are still unclear.

The HID emulator is a more or less literal translation to Python of Maxim's example code, with much of the code devoted to handling device configuration and descriptor passing. Just like the original, some array boundaries aren't checked, so you can expect a crash or two if the host says things it oughtn't. Exploiting this code in a real product is left as an exercise for the reader.

The first descriptor is the Device Descriptor, which is defined like so. Notice that everything is in Little Endian notation. The maximum packet length is defined as 64 bytes, which is a common maximum and the one supported by the MAX3420.

DD=[0x12,           # bLength = 18d
    0x01,           # bDescriptorType = Device (1)
    0x00,0x01,      # bcdUSB(L/H) USB spec rev (BCD)
    0x00,0x00,0x00, # bDeviceClass, SubClass, Protocol
    0x40,     # bMaxPacketSize0 EP0 is 64 bytes
    0x6A,0x0B,      # idVendor(L/H)--Maxim is 0B6A
    0x46,0x53,      # idProduct(L/H)--5346
    0x34,0x12,      # bcdDevice--1234
    1,2,3,          # iMfg, iProduct, iSerialNumber

After the Device Descriptor comes the much longer Configuration Descriptor, which defines this device as being a Human Interface Device. For all vendor-proprietary protocols, the idVendor and idProduct fields of the Device Descriptor define the driver to be used. For standard devices, and HID devices in particular, it's the Configuration Descriptor that tells the operating system to treat the device as a keyboard in addition to whatever else it might be.

The Configuration Descriptor also describes endpoints used by the device. Our HID example has just one IN endpoint on EP3. EP3 was used instead of EP1 or EP2 because in the MAX3420, endpoint directions are hardwired. EP0 is implicitly the endpoint used for configuration; it's the one that the descriptors are transmitted across. EP1 and EP1 are hardwired as OUT endpoints.

Finally, you will see a set of String Descriptors used to describe the product. Roughly speaking, these are Pascal strings beginning with a length and a type, followed by UTF16 bytes. The iMfg, iProduct, and iSerialNumber entries in the Device Descriptor are indexes to this table. In C firmware, it is rather common to find a memory leak when string table entries are requested out of range. More on this bug in a later post.

FTDI Emulation

While HID is a favorite first example for USB, it's not very closely related to the devices you'll see in the field. For one thing, it only uses a single IN endpoint and no OUT endpoints. For another, there are dozens of open source firmware implementations already available. As such, I've also included an emulator for the FTDI chip, which I based upon the documentation in OpenBSD's uftdireg.h and a few quick peeks at the Linux equivalent.

To get up to speed quickly on this emulator, which is found in goodfet.maxusbftdi, compare its class GoodFETMAXUSBFTDI to that of GoodFETMAXUSBHID. In order to load the FTDI driver, it was necessary to change the idVendor and idProduct values to any of those in the FTDI driver's massive list. The strings are for the user's convenience only, so they could have been left unchanged.

Also worth noting is that the FTDI chip requires both IN and OUT endpoints to function, and that the exact endpoints must be specified in the Device Descriptor.

FTDI Emulator

The screenshot above shows goodfet.maxusbftdi emulating an FTDI chip, which a Linux workstation has enumerated as /dev/ttyUSB1. Catting that device returns text through the virtual serial port of a virtual USB chip.

Bugs Abound!

The bug below has already been fixed, but it's worth mentioning that I accidentally got heap corruption in libusb before I got to Hello World with my keyboard emulator. Intentional fuzzing ought to provide all sorts of neighborly results.


Another fun one was found by a Chrome OS developer, and it involves a format string vulnerability in X11's logs. Any devices with a few %n's in its device or manufacturer string will crash X11. You can find example code for doing this on AVR at Kees Cook's Blog. While this probably isn't exploitable on a modern machine due to hardening, there are plenty of embedded ARM devices that could suffer code execution from it.

Finally, be sure to look for consumer apps that crash from USB devices. I've no idea why the hell Skype is watching USB devices, but I do know that it falls over when HID descriptors are fuzzed.

Facedancer in Action

Scapy Integration

Ryan Speers, one of the neighbors with whom I invented the Packet-in-Packet attack, has already begun to write Scapy models for USB. Not only that, but he managed to document it before I got around to publishing this, so you can find his description on his blog. As I write this, it's in the contrib section of the GoodFET repository, but I expect him to integrate it into scapy-com as soon as stability allows.

Host Mode

While the Facedancer10 does not contain hardware for USB Host mode, software support is included for it in GoodFETMAXUSB.py. The hardware, shown below, consists of a MAX3421 development kit wired into a GoodFET41. Generally, pyusb in a real workstation can do everything that you'd need in attacking or proxying a USB device, but there are a few select cases in which you would want host mode from a GoodFET. In particular, it's handy when actions crash the victim device repeatedly, as the GoodFET has no operating system to make re-enumeration slow.

GoodFET as a USB Host


The Facedancer hardware extends the GoodFET framework to allow for fast prototyping and fuzzing of USB device drivers. Software connect/disconnect allows the enumeration process to be repeated, and Ryan's fork allows for clean coding of the various data structures with Scapy.

You can order Facedancer and GoodFET boards by following the instructions on the GoodFET Ordering Page. We're happy to send them out for free to the funemployed, but please properly format your shipping address.

Soon enough, I'll be publishing scripts for "portscanning" a host to see which devices are supported, a USB Mass Storage emulator for attacking filesystem drivers, and a whole host of other nifty tools. Feel free to implement them first, and send a neighborly email to the goodfet-devel mailing list when you do.


manoj singh said...

There are a variety of USB Microcontrollers available in the MSP430 portfolio, which are ideal for applications including analog and digital sensor systems, data loggers, and other solutions that require connectivity to various USB hosts.usb microcontroller tutorial

Unknown said...

I didn't see the periodic transmit of the 0x0160 packet every 40 ms on EP1 in your code. Can this be skipped?

tahir sumar said...

Most Popular and Famous Vehicles, Latest Speed Cars, Sports Cars Info and Pictures.

John Lee said...

We are glad to see this informative blog post.
The removal of information generally directs a user to a a feeling of discouragement.
A range of data recovery software programs are already designed a by the professionals, making sure that an end user might quickly recover his deleted info.
User have to be well aware of possible files recovery methods with the intention that the guy can deal the info damage situation in a much correct way.
recover deleted outlook contacts

Mark Bintuu said...

I am typically to running a blog and I actually appreciate your information. The content has actually peaks my curiosity.

Automotive Patent

Mike said...

I must say that it is great information on SPI, I2C, and the other bus protocols that are commonly found in embedded systems. Indeed, You have great knowledge and described everything in detail. I am sure that students will be surprised & impressed by your lecture.

BlueMatt said...

Hi Travis, its not nearly as fun as doing some real USB hacking, but the idea of a hello-kitteh edition of an antiforensics drive piqued my interest, and since Im lazy I went ahead and bought the overpriced (but very tiny, and comes with a USB Mass Storage-style case) USB Rubber Ducky. Its a standard Atmel UC32 so its fairly hackable. Anyway, I went ahead and implemented firmware-level encryption of the SD card (you can lock the firmware so theoretically you have some reasonable, though probably not, assumption that the keys stored in firmware are safe) and antiforensics stuff on it. That plus a custom modification of TRESOR (linux aes in processor registers to beat coldboot attacks) to use a keydevice and you have a drive encryption setup for the truly paranoid :)

I have a pseudo-writeup at http://forums.hak5.org/index.php?/topic/28816-howto-anti-forensics-mass-storage-device-as-a-key-device-for-fde/ (with other links to the associated projects on github)

rva said...

About Skype and USB. Maybe about USB Phones and webcams

Steve S said...

sale vaigra

T Barnaby said...

genetic cavities

Asim Shaikh said...

Glorious Live design philosophy is based on versatility and glamour with a clear focus on creating outfits to make each woman feel beautiful in whatever she wears. We also provide custom made design as per your requirement.

Asim Shaikh said...

Online learning place TafseereUsmani.Com

Regional College Of Pharmacy said...

Your blog is very informative and gracefully
your guideline is very good.Thank you
Engineering college
Best engineering college in india
Private engineering college
pharmacy college
pharmacy college in india
top pharmacy college
Polytechnic college
Top polytechnic college
Top private polytechnic college
Top polytechnic colleges in India
Techanical colleges
Polytechnic college in india
Leading call center
Outbound call center india
Cheap Seo services india

SuperSuperGenius said...

Neighbor Travis,
I bought the facedancer21 from int3.cc

Easy and fast service. Problem is, I can't seem to download the source using: svn co https://goodfet.svn.sourceforge.net/svnroot/goodfet. The error I get is:
The certificate is not issued by a trusted authority. Use the
fingerprint to validate the certificate manually!
Certificate information:
- Hostname: *.svn.sourceforge.net
- Valid: from Mon, 11 Mar 2013 10:24:41 GMT until Tue, 13 May 2014 16:12:16 GMT
- Issuer: GeoTrust, Inc., US
- Fingerprint: 7c:89:9c:5a:bf:ad:ec:70:8b:17:a4:6b:4d:80:fa:6c:d5:81:b8:f3
(R)eject, accept (t)emporarily or accept (p)ermanently? p
svn: E175011: Repository moved permanently to 'https://svn.code.sf.net/p/goodfet/code/!svn/vcc/default'; please relocate. I then tried svn co with that address...no luck. Any thoughts beyond me being an idiot?

liena rose said...

Hey, thanks for the post.Really thank you! Will read on...

Yaron Shani said...

Great post, thanks! But you can actually emulate usb device in python without additional hardware as I did it in my post:

Shiya Priya said...

Nice Website...
Hey JOIN now fblikesbot.com and Increase Facebook Likes your profile and websites.
Increase Facebook Likes and check your website worth worth my websites
FB Likes and check your website worth Website Value Calculator
Hot Wallpapers
its may be very beneficial for you also really

Seo Newtool said...

nice information.It is one of those nifty tool, that checks whether the same tool range is hosting two or more domains or not.class c ip checker

Lucas said...


telas mosquiteira
telas mosquiteiro

As telas mosquiteira sp , telas mosquiteiro sp garantem ar puro por toda casa livrando-a completamente dos mosquitos e insetos indesejáveis. As telas mosquiteira garantem um sono tranquilo a toda família, livrando e protegendo-nas dos mais diversos insetos. Muitos destes insetos são transmissores de doenças e a tela mosquiteira é indispensável no combate a mosquitos transmissores de doenças.

A dengue, por exemplo, já matou centenas de pessoas só na capital de São Paulo e um pequeno investimento em nossas telas mosquiteiras podem salvar vidas. As telas mosquiteiras também impedem a entrada de insetos peçonhentos como as aranhas e os escorpiões, estes insetos também oferecem risco, pois seu veneno em poucos minutos podem levar uma criança a morte.
telas mosquiteira jundiai
telas mosquiteiro jundiai
telas mosquiteira aplhaville
telas mosquiteiro alphaville
telas mosquiteira granja viana
telas mosquiteiro granja vinana
telas mosquiteira cotia
telas mosquiteiro cotia
telas mosquiteira tambore
telas mosquiteiro tambore

A chegada da temporada Primavera/Verão traz consigo a elevação da temperatura e a maior ocorrência de chuvas. Mas não é só isso. As estações mais quentes do ano causam muita dor de cabeça e muitos zumbidos indesejáveis em função das pragas urbanas – pernilongos, baratas, cupins e outros insetos -, que afetam todas as regiões brasileiras.

Nossa missão é oferecer telas mosquiteiras de qualidade a um preço acessível, fazendo com que as telas mosquiteiras sejam uma opção viável para muitas pessoas.

telas mosquiteiras Jundiaí
telas mosquiteiro Jundiai
telas mosquiteiras jundiai
telas mosquiteiro industria
telas mosquiteira restaurante
telas mosquiteiro restaurante
telas mosquiteira empresa
telas mosquiteiro empresa

Blogger said...

TeethNightGuard is offering precise fitting and high quality customized teeth guards.

Blogger said...

If you want your ex-girlfriend or ex-boyfriend to come crawling back to you on their knees (even if they're dating somebody else now) you must watch this video
right away...

(VIDEO) Why your ex will NEVER come back...

minnie said...

I also find this very intriguing, all along i thought that this was a magic bus only to find out that its a network. Its a very interesting post, a page that i would revisit to get more information about the said network. Do you know that you can use a Resin Tabletop Cat to decorate your house. This is a very effective way of giving your sitting room a change,and a look of beauty.

SFCable said...

Nice blog provides many informative and helpful articles. Thanks for sharing the information. Looking for more updates in future. USB Devices

Dylan Eales said...

Online assignment help services by Sample Assignment has been trusted by many students worldwide for over a decade. SA providing assignment help to students struggling with their assignment tasks given by Universities. Whether it is an essay, dissertation, case study, accounting assignment help or any other form of assessment, you can trust us for 100% original and plagiarism free content by which get HD Grades. An assignmenthelp provider such as Sample Assignment, is well-known for its 24-hour online assistance on the WhatsApp platform. Students can reach out to us with their queries at any point of the day or night and get the most effective solutions for them. Our best online assignment help experts talk about how to select and evaluate the right academic sources, which will help you clear all your assignment-related doubts at best and affordable price. Whenever need to search for macroeconomics assignment help, our experts will be assist you.

The Travelius said...

Best travel holiday packages
Hong Kong Holiday Packages
Hong Kong Tour Package
Hong Kong City Tour
Hong Kong Disneyland Package
Hong Kong Package from India
Hong Kong Trip Package
Hong Kong Package Deals
Hong Kong Tour Package from Delhi

The Travelius, Best Holiday Packages.

Nicole said...

It is very easy to lose your focus, when you are under pressure and your deadline is approaching. But you should know that you are not alone. I'm a real procrastinator and if I have such situations, I ask for help this website. They are professionals and always are ready to help.

المتألقون للصيانة والتشطيب وكشف تسريبات المياه said...

شركة تنظيف بالاحساء
شركة تنظيف براس تنوره
شركة تسليك مجارى بالخبر
شركة تسليك مجاري بالقطيف
شركة مكافحة حشرات بالخبر

writersworldessay said...

Nice one. I am happy by reading this blog. really mind catching and informative post.Thank you for posting.. Here are some ways you can create your research papers with best research paper writing service

Unknown said...

Hi, the post which you have provided is fantastic, I really enjoyed reading your post, and hope to read more. Thank you so much for sharing this post, I appreciate your work. best essay writing service

edubirdie said...

This is extremely helpful info!! Very good work. Everything is very interesting to learn and easy to understand. Thank you for giving information. coursework writing service

Service Center Panasonic said...

Pelatihan Kursus Teknisi Service HP Bandar Lampung
Kursus Teknisi Service HP Bandar Lampung
Kursus Teknisi Service HP Bandar LampungServis HP Metro
Kursus Teknisi Service HP Bandar Lampung
Kursus Teknisi Service HP Bandar Lampung

Ciana Langham said...

Hi! If you need help with writing papers like compare and contrast a sound of thunder and nethergrave you'd better apply to the essay writing service for professional help. There you can find the best writers with big experience of writing a different kind of papers. I think it's the best option for people who have got writing problems.

Stefan Carl said...

If you have fear of failure and your ideas are not coming in your dissertation writing then you can remove out your stress of dissertation writing with the students assignment help that has no. dissertation helpers USA in the USA for the students who are facing problem in dissertation writing.

Service Center Panasonic said...

https://makalahbiz.blogspot.com/ http://lampungservice.com

spot said...

Thanks for your interesting ideas.the information's in this blog is very much useful for me to improve my knowledge.
Transcription in USA
Transcription in USA
Transcriptions in US
Medical Transcription in USA
Medical Transcription Companies in USA
best Medical Transcription Companies in USA
Medical Transcription Services USA
Transcription companies in USA
Transcription services in USA
transcription companies in us
Transcription USA
General Transcription companies in US
Medical Transcriptionist in us

lampungservice.com said...

iphoneiphone vivoaxiooiphonebimbelbateraiServiceyoutubeService

Buy Meds Online said...

viagra online
buy cialis online
buy cenforce online
order cialis online
order viagra online
buy soma online
buy viagra online
buy kamagra online in usa
buy tadalafil online
buy levitra pills online

Sharon Wood said...

HP Printer Customer Care Number
Brother Printer Support Phone Number
Lifelock Customer Service Phone Number
Canon Printer Customer Service Phone Number

Malaivel Siddha Hospital said...

Wow, what an awesome spot to spend hours and hours! It's beautiful and I'm also surprised that you had it all to yourselves!
Kindly visit us @
Donate blood - Malaivel Trust
HIV/AIDS Complete cure for siddha in Tamilnadu
HIV/AIDS Complete cure test result in Tamilnadu
AIDS cure 100% for siddha in Tamilnadu
Cure best blood cancer treatment in Tamilnadu
Best HIV Treatment in India
Top HIV Hospital in India
HIV AIDS Treatment in Mumbai

ethanivys00@gmail.com said...

Wonderful blog! I found it while browsing on Yahoo News

Regards= office.com/setup

Kaylee Smith said...

To get started Office 2019, 2016 and office 365 download or installation you must need valid 25 character product key & visit-

office.com/setup |
www.office.com/setup |

Rob Martin said...

Get the Case Study Help in Australia and writing services from AssignmentTask.com in Australia, UK and USA. Gets a Professional Custom Assignment writing from the best specialists of this subject in Australia?

Unknown said...

I have read your article, it is very informative and helpful for me. I admire the valuable information in your articles. Thanks for posting it. In case you searching for the best SEO service in Dubai.click on my profile

Unknown said...

The nice blog provides many informative and helpful articles. Thanks for sharing the information. If you are looking for the best kitchen cleaning services Dubai. they can connect with us

Aixonne said...

Do you want to visit girly iphone xr cases? Go to Aixonne online store to see And not just for XR but iphone xs max protective case and girly iPhone X cases are available too.
There you can see a list of girly iphone 8 plus case , girly iphone 7 plus cases and iphone 6s plus case for girl .
In clothing category of their products you will be offered a collection of silver necklace for women .
iPhone Tempered Glass

brotherprintersupport said...



Brother Printer Support or Call : +44-121-286-4615

How to Solve Installation Problem with my Brother printer using a USB/local connection


How to Setup Brother Wireless Printer Call +44-121-286-4615
Brother Wireless Support or Call : +44-121-286-4615

Brother Printer Support or Call : +44-121-286-4615

Brother Printer Drivers Call: +44-121-286-4615


Brother Printer Support Drivers or Call : +44-121-286-4615

brother printer helpline
brother printer support number
brother printer technical support

Unknown said...

Very well Blog...

If a person's computer data is lost, then contact us Hard drive data recovery services

smith warner said...

norton.com/setup to Secure your All Windows, Mac & Android devices. Get norton setup and Run to Install Norton Anti Virus. for more information about norton antivirus, just visit www.norton.com/setup.

mcafee.com/activate - Get the comprehensive internet security on your device with mcafee activate Antivirus. Get your McAfee installed and activated with easy steps. for more information just visit www.mcafee.com/activate.

office.com/setup - To get started with Microsoft Office download & install office setup. Find the product key for activation at www.office.com/setup.

Patricia Onorato said...

norton product key
mcafee com activate
avg activation key
webroot activation

jacklinemelda said...

Every student has the chance of enjoying our affordable research papers. The writers hired at the company are professionals with significant experience. You can also buy pre written essays today!

Lukesharcr said...

I am really happy to read this blog post,you have many information put it on this article,
am really suggest to my all dear friend to visit this blog post and collect this useful and valuable information.


Nino Nurmadi said...


Deam jones said...

Especially if you work on online Microsoft Office, you can only gain access to your account and other benefits if you have a registered account subscription. norton.com/setup | office.com/setup

Deam jones said...

norton.com/setup provides world class security solution. office.com/setup Every Norton antivirus system is designed with the latest technology and updated regularly to bring in new virus definitions that help in detecting the viruses. Norton.com/setup antivirus system is one such program that has numerous all-round protection antivirus. norton.com/setup This antivirus works on every device including PCs, Macs, tablets, and smart phones and every operating system such as android and IOS.

Shaimaa Elsadek said...

شركة مكافحة النحل بالرياض
شركة طارد الحمام بالرياض
شركة تركيب طارد الحمام بالرياض
شركة مكافحة الحشرات شرق الرياض
شركة مكافحة الحشرات غرب الرياض
شركة مكافحة الحشرات شمال الرياض
شركة مكافحة الجرذان بالرياض
شركة مكافحة الافاعي بالرياض

Shaimaa Elsadek said...

شركة مكافحة الوزغ بالرياض
شركة رش دفان بالرياض
شركة مكافحة فئران بالرياض
شركة مكافحة صراصير بالرياض

شركة مكافحة الفئران بالرياض
شركة رش مبيدات بالرياض
شركة مكافحة حشرات بالرياض
شركة مكافحة النمل الابيض بالرياض
شركة رش مبيدات حشرية بالرياض

Shaimaa Elsadek said...

شركة رش مبيدات بالرياض
شركة غسيل خزانات بالرياض
شركة مكافحة بق الفراش بالرياض
شركة مكافحة صراصير بالرياض
شركة مكافحة العقارب بالرياض
شركة صيد قطط بالرياض
شركات مكافحة الحشرات بالرياض
شركة مكافحة الحمام بالرياض
شركة مكافحة قوارض بالرياض
شركة رش مبيدات حشرية بالرياض

Kaylee Smith said...

office 365 setup will help the users in activating, downloading and installing Microsoft Office on their PC . It will provide you the Step-by-Step guide for Microsoft office. If the subscription has expired, learn how to renew it. Get the complete guide to download, install and activate MS office setup.
office.com/setup |
Office.com/myaccount |
Office 365 Setup

jos butler said...

mcafee.com/activate – Facing problems with mcafee products? Get the best instant solution for downloading, installing and activating McAfee Antivirus via mcafee activate and www.mcafee.com/activate.

norton.com/setup - Learn how to manage, download, install, and activate norton. Visit www.norton.com/setup, Enter norton product key and Install norton setup.

meldaresearch said...

Our Company prides itself as the best providers of Buy Non-Plagiarized Research Papers in the industry due to the numerous years we have provided our clients with reliable and quality services.We ensure that the experts offering the client with writing services have the skills and qualifications in the specific subject area requested by the client thus ensuring they get the best Write My Research Paper services.

SkyNaijaMusic said...

Excellent blog & I love your
latest foreign Music you have a good work here... It's hard to find good quality writing like yours nowadays..
Naija Entertainment
Excellent blog & I love your
latest naija Music

Pankaj Singh said...

Nice blog, thank you so much for sharing such amazing content with us. Get the latest Website Designing and Development services in Delhi at Ogen Infosystem.
Ecommerce Website Designing Company in Delhi

Kaylee Smith said...

Office com myaccount will help the users in activating, downloading and installing Microsoft Office 365, Office 2016, Office 2013, Office 2010 and Office 2007 on their PC . It will provide you the Step-by-Step guide for Microsoft office 365. If the subscription has expired, learn how to renew it. Get the complete guide to download, install and activate MS office setup.
office.com/setup |
Office.com/myaccount |
Office 365 Setup

Puremelda said...

Our hire Custom Research Paper Service writers understand the characteristics of proper writing needed in Research Paper Writer Services.

meldaresearch said...

We are the best writing company providing Research Paper Writing Service and our Write My Research Paper are 100% authentic as we do not offer pre-written articles regardless of the likeness of topic or research project.

mathewanderson202 said...

What a superb post! I have no words to describe this post because everthing is clear with your wonderfull words. I really feel out for world reading your post, it is full of fresh and usefull. I really appreciate, keep the work continue.

norton.com/setup ! www.norton.com/setup ! office.com/setup ! office.com/setup ! mcafee.com/activate ! mcafee.com/activate

Mobile app development company in Mumbai said...

Mobile app development company in mumbai

king said...

Excellent blog & I love your
Download nigerian songs
you have a good work here... It's hard to find good quality writing like yours nowadays..

Neha Sharma said...

Rice Bags Manufacturers
Pouch Manufacturers
wall putty bag manufacturers
fertilizer bag manufacturers
Lyrics with music

Neha Sharma said...

we have provide the best ppc service.
ppc company in gurgaon
website designing company in Gurgaon
PPC company in Noida
seo company in gurgaon
PPC company in Mumbai
PPC company in Chandigarh

Neha Sharma said...

we have provide the best fridge repair service.
fridge repair in faridabad
Videocon Fridge Repair in Faridabad
Whirlpool Fridge Repair in Faridabad
Hitachi Fridge Repair In Faridabad
Washing Machine Repair in Noida
godrej washing machine repair in noida
whirlpool Washing Machine Repair in Noida
IFB washing Machine Repair in Noida
LG Washing Machine Repair in Noida

Neha Sharma said...

iso certification in noida
iso certification in delhi
ce certification in delhi
iso 14001 certification in delhi
iso 22000 certification in delhi
ISO Consultant in Delhi
iso certification services in delhi
iso certification in faridabad
ISO 9001 Certification in Noida
website designing services
SEO Service Consultant

Digital marketing Company in Dubai said...

Damaged, formatted files can recover by the best Data Recovery Dubai. Providing you the best solution recovery. In our Team, we have experienced and Well-talented professionals if these teachers are not able to recover your data then you are not charged. Our main focus is to secure your data and files https://uaedatarecovery.com//

Unknown said...

Download Latest Naija Music & Video

boss said...

helpful Article

Get Latest Business News

Football news

Get Latest Entertainment update

boss said...
This comment has been removed by the author.
Dale Morris said...

Norton customer service australia
McAfee Phone Number
Microsoft Edge Contact Number
Malwarebytes tech support
Avast customer service
Comcast email support phone number
Microsoft outlook support
Mozilla firefox toll free number

Schooldiary said...

you have a good work here...

Download Hip-hop Music 2019

Scholarships 2019

Download Movie Mp4

Download Mp3

Mark Steven said...

hp technical support help number
HP Printer Technical Support Number
HP Technical Support Number
hp tech support help number
Google Account Recovery
HP Printer Technical Support Phone Number
HP Printer Customer Service Number

technation said...

If you still have issue while depositing or withdrawing cryptocurrency from Bittrex, even if you fail to create or login to your Bittrex account, just feel free to get in touch with Bittrex Customer Support services for technical assistance with issues related to Bittrex wallet.

bittrex support number
bittrex support phone number
bittrex support

You can contact Bittrex tech support representatives via phone call or live chat. They are available 24*7 for the convenience of users.

bittrex exchange
bittrex customer service
bittrex phone number

boss said...

Get Latest Entertainment update

Get Latest celebrity gist

Get Latest ghanaian music Download



coffeeroastermart said...

Thank you for the post. Why brew coffee from pre-ground when you can grind your fresh coffee beans right in the comfort of your house with the Best Coffee Makers With Grinder

coffeeroastermart said...

Great post there. Nesco Coffee Roaster is perhaps one of the most stylish and powerful The Best Coffee Roasters you can get on the market today that operates just as smooth and elegantly as it appears. Only choose Nesco Coffee Roaster

coffeeroastermart said...

Thank you for the post. You can unlock your world of fantastic flavors and striking aromas by roasting your own coffee beans at the comfort of your kitchen in minutes with Ikawa Home Coffee Roaster. Just select your preferred roast recipe from your Smartphone, measure your coffee beans into the roasting chamber and watch as they roast. A home coffee roaster cannot get any better than Ikawa Home Coffee Roaster

coffeeroastermart said...

Are you planning to kick start your coffee roasting adventure or are you planning to get rid of your old coffee roaster? You don’t have to look further than the BeanPlus Coffee Roaster. Pick BeanPlus Coffee Roaster and kick out poor roast frustrations!

Reagan said...

we at Best Editing Services are the best you can get that will assist you in all you need. the best editors.

Reagan said...

we at Best Editing Services are the best you can get that will assist you in all you need. the best editors.

Reagan said...

we at Best Editing Services are the best you can get that will assist you in all you need. the best editors.

Reagan said...

we at Best Editing Services are the best you can get that will assist you in all you need. the best editors.

Reagan said...

we at Best Editing Services are the best you can get that will assist you in all you need. the best editors.

DeepRaj said...

Your style is really different and understandable. I will just bookmark this site. look at this site; itunes error code 0xe8000015
if you need those services.

Schooldiary said...

Download Latest Nigerian comedy video's on Ghanabaze

Nigeria comedy videos
Download Mark Angel comedy
Broda Shaggi Comedy Videos
Xploit Comedy
Kenny Blaq Comedy

meldaresearch said...

Our Research Paper Writing Help are incomparable since our writers are well trained, competent and professional willing to work under stringent conditions to get your Affordable Custom Term Papers done in the shortest time possible.

AltPartsInc said...

This is one of the nice article i had read it usefull article,thanks for giving such a great article.Mitsubishi laser parts
keep it go.

Lisa Sequeira said...

Find the best corporate finance planning assignment help and computer science assignment help help with experts instantly.

technation said...

Step-by-step instructions how to download, install, activate. In case of error uninstall and reinstall your software then contact our Experts.
office setup

technation said...

Email customer support number has become an essential contact for every user these days. As a part of our daily lives, whether professional or personal, emailing plays a major role. Even a slight problem can affect the email account. Any loophole in email privacy may risk your data and exchanged email. To understand the importance.Read more about Email customer support number
email customer service
sbcglobal customer support
sbcglobal email support
email support
aol email support
Official ATT Email Help Center where you can find tips and tutorials on using Email and other answers to frequently asked questions.
att customer services numbers
att email support
att email customer service

Mitchell Santner said...

Sindika Dokolo was born in 16th March 1972. He is a Congolese by nationality and is the supreme authority of the Sindika Dokolo Foundation. He is also an important member of Nova Cimangola which is a cement company. He is a cardinal member of Amorim Energia which is a petroleum company and is third highest stake holder of Galp, a Portuguese petroleum firm a holding company named as Esperanza Holding BV. His business spawned across diamonds, telecommunications and real estate as well in countries like Angola, Switzerland, Mozambique and United Kingdom.

Visit: sindika dokolo

Domenic Tylor said...

Get BUSINESS TRANSLATION SERVICES SINGAPORE to help from our top-notch translator experts of Singapore at a very affordable price. Singaporetranslators.com hires the best language translator from Singapore to provide full guidance support and assured by 100%.


Thanks you sharing information.
You can also visit on

How to think positive

Cure For Cowardice



Schooldiary said...

Thanks for this very important information, your website is cool too🤝🤝🤝

Nigeria Music Download

Download Mp3

Olamide Songs download

Westlife songs

Post Malone Album

Download Henry Danger

Comedy Movies

App Review

Blogger said...

Go to solution
Go to solution
Go to solution
Go to solution
Go to solution
Go to solution
Go to solution
Go to solution
Go to solution
Go to solution

Tom Parker said...

Thanks for Sharing this Article.

Unknown said...

this blog is very informative & knowledgeable

ava clark said...

Nice Blog, I have get enough information from your blog and I appreciate your way of writing.
geek squad webroot |
geek squad webroot

Mark William said...

Norton is bundled with the auto-upgrade feature which updates the firewall against the latest cyber threats. If you find that your device is vulnerable to cyber attacks, then you can easily subscribe to a Norton security product on
Norton Install with Product Key

Mark William said...

Webroot safe (Ultimate security) Download at www.webroot.com/safe
,a superb lightweight and super fast internet security is just one click away.Webroot is the next generation security provider to safeguard businesses and consumers in the IT world.Webroot services are global across North America, Europe and the Asia Pacific.Webroot security package is simple to setup & install at webroot.com/safe
. Simply find 20-character alpha-numeric code that is written on the backside of the retail card.

officewwwoffice said...

How to Office Setup. Go to office setupand enter your product key. If you have a previous report of Office or existing Microsoft account, enter your email habitat and password, and click Sign in. Select the Country/Region and Language, and click Continue. On the office.com/setup page, pick Install

officewwwoffice said...

office.com/setup- Foroffice setup, office 365 setup, Find simple steps to download & install Office 2019 and activate on office.com/setup

officewwwoffice said...

office setup is the software setup file with this setup file you can install on your PC and some of the supported device to make use of office.com/setup . Not only the
www.office.com/setup but all the software for all time has the setup file, and it is very significant, without the setup file the software turn ineffective.

officewwwoffice said...

To start using mcafee antivirus, visit mcafee.com/activate and enter 25 digit mcafee activation code and activate your mcafee subscription.Mcafee activate code is a 25-
character alpha-numeric code written on the back of a retail card. It's used to verify mcafee security

mhesh said...

Have you measured your life with a mug of coffee??, Do you turn coffee into theorem or do you take it to be awake? We as nesco coffee roaster supplies quality and still at minimal price coffee roasters. Grab yours today.

Gabbyann said...

Thanks for your informative post.

Here is how you take your Amazon affiliate marketing career to the next level.

You win clients by:
1. Conducting a keyword research
2. Picking high volume keywords that have a low competition
3. Researching the keywords
4. Creating high-quality Amazon product descriptions

Hire an Amazon Product Description Writer to get that and more.

Ramesh ji said...

Nice Post thanks for the information, good information & very helpful for others,Thanks for Fantasctic blog and its to much informatic which i never think ..Keep writing and grwoing your self

duplicate rc online
duplicate rc in delhi
duplicate rc in greater noida
duplicate rc in bangalore
duplicate rc in faridabad
duplicate rc in gurgaon
duplicate rc in noida
duplicate rc in ghaziabad
death certificate online
gst registration in sri ganganagar

Davison Pro said...

Free Plagiarism Checker, Citation Generator/Bibliography Generator, Thesis Generator, GPA Calculator, Words To Pages Converter and Words To Minutes Converter for students

James Boond said...

I am very happy after reading this fantastic Article, I appereciate your work.

norton.com/setup | www.norton.com/setup | norton.com/setup

Ali said...

Your articles are really great. I'm curiously waiting for new ones. I wish you could write more.
web design hubli
seo company in hubli
web design company in hubli
web design company hubli
web development company in hubli
web development in hubli
web development hubli
digital marketing course in hubli
digital marketing courses in hubli
digital marketing in hubli
digital marketing hubli
web design company
website developers in belgaum

رضا جمال said...

شركة مكافحة حشرات بجازان
شركة مكافحة حشرات بابو عريش
شركة مكافحة حشرات بصامطة
شركة مكافحة حشرات بصبيا
شركة مكافحة حشرات بمحايل عسير
شركة مكافحة حشرات بنجران

رضا جمال said...

شركة مكافحة حشرات بجازان
شركة مكافحة حشرات ببيشة

شركةى مكافحة حشرات بابها
شركة مكافحة حشرات بخميس مشيط
ارخص شركة رش مبيدات بجازان

바카라사이트 said...






하이게이밍 하이게이밍



Lilian said...

Thank you for the Information was so useful also Data analysis is a form of analysis which is used to understand data and analyze it according to the requirement. Data Analysis Help Needed

Association said...

Having such information is gud to the assistance of students and researchers.. Look also upon on CIPD Assignment Help get all the information that you require to know and be assisted on any help required.

Unknown said...

geek squad tech support is one of the leading company for each office and enterprise shoppers. We offer you services from the expertise and experienced professionals. Best Buy Geek Squad Our specialists promise you to deliver fast, economical and efficient facilities for all of your digital and technology-based issues.

mhesh said...

Great article thanks. SPSS Data Analysis Help offers a best deal to students looking to hire someone to work on their assignment specifically data analysis. Grab your offer today.

Association said...

Having such information is good to the assistance of students and researchers.. Look also upon on CIPD Assignment Help get all the information that you require to know and be assisted on any help required.

Washington said...

Thank you for shairing the information on this blog. Also look on our page on Nursing Essay Writers and get all the assistance you require.

jann said...

پزشکان همیشه نیازمند تعامل با یکدیگر بوده اند و ترجمه تخصصی پزشکی یک نیاز غیر قابل انکار بوده است همیشه. مترجمان سایت ترجمه آنلاین ترجمه تخصصی مقاله را از فارسی به انگلیسی و انگلیسی به فارسی انجام می دهند در سریع ترین زمان ممکن. اگر شما نیاز به یک مترجم دارید که ترجمه تخصصی کامپیوتر را انجام دهد حتما با سایت ترجمه آنلاین در تماس باشید. سایت ترجمه ترجمه تخصصی را در کوتاه ترین زمان ممکن و با کیفیت و مطابق میل شما انجام می دهد. اگر نیاز به ترجمه فوری دارید مترجمان ترجمه آنلاین این کار را برای شما انجام خواهند داد

SkyNaijaMusic said...

naija entertainment

Download latest naija music

Phone Reviews


I love this content..

Reagan Pessah said...

Thank you for shairing the information on this blog. Also look on our page on Nursing Essay Writers and get all the assistance you require.

shalley30 said...

For both PC and mobile users. Highly popular among the PC users, the Norton antivirus software has been eliminating malware, viruses and other kinds of online.Get started Norton Setup with Product Key at norton.com/setup or call us toll-free number for instant support.if you have any query related to norton antivirus then contact us.


Petertech said...

This Is To Inform You About This Blog "Africans Music Website"That They Have Many Feature Such As Latest Naigeria Music/Video So If You're Interested In Any Of This Please Do Check The Site Out Click here

Petertech said...

This Is To Inform You About This Blog "Africans Music Website"That They Have Many Feature Such As Latest Naigeria Music/Video So If You're Interested In Any Of This Please Do Check The Site Out Click here

Sam Finnie said...

The students need not to worry about their assignments, term papers and dissertations because assignment help australia is there to help you out and get you out of distress.

sarkari-result.me said... repair

바카라사이트 said...


바카라사이트 said...

really nice required information & the things i never imagined and i would request
our Site is very nice
Therefore busy in gambling sites will be quite crowded because Agen SBOBET it can create a large profit in it. Except this busyness will actually be able to bring you to create significant and drastic profits if you have great promise and motivation in carrying out transactions in it
하이게이밍 하이게이밍



Unknown said...

sarkariresult |
sarkri result |
serkari result |
sarkari risult |
sarakri result |
sarkari resul |
sarkari resut |
sarakariresult |
sarkari reasult |
sharkari result |
sarkai result |
sarkari reslt |
sarkariresult. |
sarkari reslut |
sarkari result. |
sarkari result notification |
sarkari resuilt |
sarkariresul |
srakari result |
sarkari resutl |
sarkari rijalt |
sarari result |

Mobile app development company in Mumbai said...

Thanks you so much for your efforts blog, If your are looking for a creative mobile app development in mumbai, Appslure provides one of the best and professional app development company in mumbai.
Mobile app development company in mumbai

Tech Support said...

Geek Squad Tech Support provides the best technical help and guidance. Get in touch with extensively trained tech support team for all sort of queries and issues regarding your devices. You can contact Geek Squad round the clock according to your convenience.

Tech Support said...

Fix all electronic appliances and devices round the clock at Geek Squad Tech Support. Connect with experts at Geek Squad Tech Support for added assistance and support.

g-sol said...

The G-Sol Coaching institute is one of the best IELTS coaching institutes in Zirakpur .We have a confident resume of our highly experienced trainers on our name. Through a well approached study agenda we thrive to guide our students closer towards their goals.
Our simple yet methodical training system is suitable to meet the needs of students who aspire to excel in every aspect of their careers.
We offer a unique range of services dedicated to students to ace in development, CELPIP and many more.
We have been inspiring Indian students and successfully turning their dreams into realities to study overseas in the reputed institutes of their choice.

Courses we offer:
IELTS , PTE, TOEFL, CELPIP, PD, IT, Spoken English courses.

SCO -14 Kalgidhar Enclave, Zirakpur. 140604

Kiya rony said...

are you looking for help with canon printer? find the steps here to fix canon printer not responding or fix printer not printing issue.

Premium Article Writers said...

Have you prepared your customers for Black Friday? If you haven't, you must act today. Hire a newsletter writer today to start curating and posting highly effective newsletters. Here is a newsletter writer that you can rely on.

Premium Article Writers said...

Is your Affiliate marketing site ready for black Friday? If not, you need to act right now and hire a top Amazon Product Description Writer

Premium Article Writers said...

Every successful online campaign requires a plan, a budget, and a lot of work. when you hire professional SEO writing services, however, all you will need is a budget to achieve similar or better results.

Premium Article Writers said...

Thank you for sharing the post with us. I hope you will keep up with the good work.
If you would like to optimize your HVAC web content, hire a professional HVAC writer today.

Premium Article Writers said...

Now that is a post worth sharing. Thanks for posting.
If you are tired of doing all that is needed to rank well on major search engines, just hire professional travel content writer and realize your sites potential in 3 months.

Premium Article Writers said...

What an informative post. I am stoked to have found it when I did, especially because I was working on a related project.
Here is a link to reliable SEO content writing services for anyone looking to start winning online.

Premium Article Writers said...

That was truly insightful. I will be back to check out more of your entries. Now that am here, allow me to excite your readers in a deal that could help them win in real estate. Hire a real estate content writer today to curate campaigns that will keep you on top.

Premium Article Writers said...

I'm glad I finally found your post. Thank you for making it easy to understand and quote. ION, if you are looking to boost your sales this Xmas, you better start right away. Hire a newsletter writer today and enhance your communication with clients.

Premium Article Writers said...

That was an exciting read. Am certainly coming back to check out your new entries.

If you are looking to boost your marketing campaign for the holidays, here is a travel website content writer and an
Amazon Product Description Writer that you can trust to provide you with content that resonates with your target audience.

Premium Article Writers said...

That was an exciting read. Am certainly coming back to check out your new entries.

If you are looking to boost your email marketing campaign for the holidays, here is a newsletter writer and
SEO content writing services that you can trust.

That was an exciting read. Am certainly coming back to check out your new entries.

Premium Article Writers said...

Every post could be this good; all you got to do is hire an automotive service writer today

David said...
This comment has been removed by the author.
David said...

hello there and thank you in your info...I’ve definitely picked up something new from right here. check out this informative platform Nigerian Portal

David said...

Nigerian Entertainment Portal

Mark William said...

www.macafee.com activate With the help of this site you can easily download, install, and activate the Macafee antivirus. Macafee offers antivirus products for both consumer and enterprise.

pesh said...

Thank you for sharing such an informative information. I like it and recommend to others. In case you are searching for capstone project writers search no more for Capstone Writing Help delivers quality and 100% plagiarism free work make your order now.

David said...

thank you in your info – I’ve definitely picked up something new from right here. 

Nigerian Entertainment News

Health and Business Tips

Nigerian Latest Music

Nigerian Latest Celebrity News

Sam Finnie said...

In the modern era, there have been many advancements in technology that has made the life of human beings much easier and social media is also one of them.


Thanks you sharing information.
You can also visit on


How to think positive

Cure For Cowardice





바카라사이트 said...



Unknown said...

What a nice blog! I have enjoyed reading through the article although I landed on this site while I was looking for data analysis assignment help . I will be visiting this site occasionally to read more interesting and intriguing articles. I hope the writer will continually keep us updated with new information.

SkyNaijaMusic said...

Amazing contents here.. Check this out..

download latest naija music

download Latest naija music video


latest Nigeria News


mhesh said...

Thank you for sharing such a golden information. Will be your occasional visitor. In case you are searching for capstone project writers search no more for Capstone Writing Service delivers quality and 100% plagiarism free work. make your order now.

Unknown said...

Naija Music & Videos Downloading

Unknown said...

What a nice blog! I have enjoyed reading through the article although I landed on this site while I was looking for Research paper Writing. I will be visiting this site occasionally to read more interesting and intriguing articles. I hope the writer will continually keep us updated with new information.

josee said...

What a wonderful content will be occasional visitor. Our team has professional writers who handles nursing assignment with almost 100% perfection and delivers quality work free from plagiarism. Place your order today at best nursing essay writers and get work done

Beecoded said...

Wow, nice blog , I love this blog seriously, and you can follow us @ Fulloaded

And also Download Latest Naija Music

Even you can visit our Naija Freebeat

Sophia Thomas said...

Nice article Post, thanks for sharing the important information, very informative and presented.

My Assignment Help
Assignment Help Sydney

Sam Finnie said...

The education provided by Australian institutes is highly valued and recognized globally. There are more than 200, 000 international students who have preferred to Study in Australia

Fitdiettrends said...

Ultra CBD Extract


pesh said...

Hi, great content here thank you for sharing such an informative information will be visiting regularly for more. Incase you are stuck with your Linux assignment worry not for Linux Homework Help solves all your worries. Make an order now for professional work, delivered on time and pure.

customer service said...

Hello I am so delighted I located your Page, I really located you by mistake, while I was watching on google for something else, Anyways I am here now and if you any trouble norton com setup you can cantact us. could just like to say thank for a tremendous post and a all round entertaining website. Please do keep up the great work.

Jerry Smith said...

I read your blog and I found it very useful and informative. I also write blog and in that I provide information related to Aol mail and not only Knowledge sharing we also provide service for any type of incovinience or any help related to Aol Mail you can use gmail account recovery phone number or you can contact to the experts.

Astrum Infotech said...

This Blog appears to receive many visitors or customer who looking for this kind of stuff writer did nice job. Now we shared own agenda here we shared about best kitchen worktops provider Astrum Granite where customer can buy granite worktops, quartz worktops and marble Worktops to customers at cheap price. Call now for order (+44)203-290-8427.

Our Reading Stuff for You!

Granite Worktops
Quartz Worktops
Granite Worktops Prices
Granite Worktops For Kitchen
Granite Worktops For Kitchens

mhesh said...

What a wonderful content will be occasional visitor. Our team has professional writers who handles business plans with almost 100% perfection and delivers quality work free from plagiarism. Place your order today at cheap business plan writers and get work done

geeksquadsupportnumber said...

Geek Squad Services For You! Dial Geek Squad Service Number (+1) 855-554-9777

Get the instant solution for all technical issues which face by you Yeah! Because Now Geek Squad Services 24x7 customers care always available for you. Only Dial Geek Squad Service Number (+1) 855-554-9777. And Our Geek Squad Team helps you As soon as possible.

Squad Geek
Best Buy Customer Service
Geek Squad Best Buy
Best Buy Geek Squad
Best Buy Customer Service Number
Webroot Geek Squad