So, it's been a while since I did this type of analysis, but there are two levels of modeling:
1) Modeling substitution rates between two samples (to try and take the probability of multiple substitutions at the same site into consideration). This wikipedia page talks about the models for doing this:
http://en.wikipedia.org/wiki/Models_of_DNA_evolution
2) Using an outgroup (sample 3 in your case) to try and estimate the ancestral state (or, perhaps more precisely, the rate of divergence from an ancestral state). In this particular paper (looking at substitutions at intergenic and synonymous sites), this was done with a relative rate test. See links below for paper and description of strategy:
http://www.plosgenetics.org/article/info%3Adoi%2F10.1371%2Fjournal.pgen.0020163
http://en.wikipedia.org/wiki/Relative_rate_test
From a practical standpoint, I don't remember what specific program outputs look like. However, I know MEGA is typically one of the most popular packages for evolutionary genomics analysis, and I think it has fairly comprehensive documentation:
http://www.megasoftware.net/
If you can get a hold of this textbook, it might also be helpful to you:
http://www.amazon.com/Fundamentals-Molecular-Evolution-Dan-Graur/dp/0878932666