Other mistake: At the end of the first movie Rybak is a Chief (E7), and he is a retired Lieutenant (O3) during this movie. Assuming he got commissioned to Ensign (O1) immediately after the events of Under Siege, it would take a minimum of 42 months to be promoted to Lieutenant. This movie takes place within 4 years of the first movie, because Admiral Bates is still the Chairman of the Joint Chiefs of Staff. The picture of Rybak in his Lieutenant uniform is at least 5 years old according to his niece. None of these timelines make sense for the rank he is in the movie.
Other mistake: In the scenes that show the satellite in space, there are collision lights visible. It's not like there is anyone up there that is going to fly into the satellite if they didn't see the collision lights.
Other mistake: Captain Garza is listed as Colonel Darza in the credits.
Other mistake: When Ryback enters the locomotive to search for a working radio (which he finds cut), he grabs one of the terrorists who wanders in, presses the gun to his neck, and shoots. As the guy falls away, you can see that he has no bullet hole in his neck. At such close range, all of the damage that it caused would be unmissable.