Title basically explains it. Would check to see if users are flying, and if so, kick them. Could possibly have a permissions node antifly.fly which would allow certain groups to fly. Just an idea
Check out that thread (especially the video at the end): http://forums.bukkit.org/threads/fly-hack-detection.2103/#post-24307 It's actually a lot harder than it sounds. You have to do many checks to prevent false positives and i guess many of these checks are very complex to do. Best thing would be contacting guy that made that video, if he can make one for bukkit and release it to the public.