UPK files are the native file packages for any UE3 game. When creating a mod with UE3 or a full-fledged game with UDK, everything you import into the engine goes into these upk files. From within Unreal editor, they are easily opened and you can see everything within them, even export the files.
But heres the catch. When a game is released, the files are "cooked". Everything useless is stripped out, even some code is removed from material shaders and some other things. This is all done for optimization purposes. If you edit these packages, the editor, and possibly the game, will crash when it tries to load up these files and sees that they were modified.
Depending on how they were cooked, it may be possible to extract textures and stuff, but don't expect to be able to modify the packages to your hearts content. The workaround is to make your changes to the textures, and reimport, and try to recreate everything in the package that you see (models, textures, material setups, and whatever else other files happen to be in there), and resave the package under the same name, making a backup of the original (unedited).
Hope that helps.