You can find all you need in:
h**p://www.lvr.com
There is a section dedicated to usb storage devices.
You must use a USB ready microcontroller.
h**p://www.signal.com
h**p://www.atmel.com
h**p://www.ti.com
You may need a compiler.
h**p://www.keil.com
You will need some specific help:
h**p://www.usb.org
There is a forum, very much like this, and you will search for the answers available and get all you need.
USB storage devices are very difficult and there is a multitude of choices of types of controllers, memories, arrangements. Actually, USB is a difficult protocol and the learning curve is long and steep.
Before you start, think about what you want to accomplish: Small driver? Big? How fast? One time project? Should you buy the projet?