To expand on raja.genupula's answer, this could mean you need to do a filesystem check on the drive.
Try this, open up Terminal, type dmesg, then insert your pen drive and wait for it to become read-only. dmesg shows you system log messages, and if you see any like this after it becomes read-only:
[17183798.908000] FAT: Filesystem panic (dev sda1)
[17183798.908000] fat_get_cluster: invalid cluster chain (i_pos 0)
[17183798.908000] File system has been set read-only
Then it likely indicates that you need to do a filesystem check. To check the filesystem, use "Disk Utility" (under System, Administration), find your device, unmount it, check the file system, then mount it again.
Source: https://help.ubuntu.com/community/Mount/USB#Device_become_suddenly_read_only