Propagating trust/distrust from a set of seed (good/bad) pages to the entire Web has been widely used to combat Web spam. It has been mentioned that a combined use of good and bad seeds can lead to better results. However, little work has been known to realize this insight successfully. A serious issue of existing algorithms is that trust/distrust is propagated in non-differential ways. However, it seems to be impossible to implement differential propagation if only trust or distrust is propagated. In this paper, we view that each Web page has both a trustworthy side and an untrustworthy side, and assign two scores to each Web page: T-Rank, scoring the trustworthiness, and D-Rank, scoring the untrustworthiness. We then propose an integrated framework which propagates both trust and distrust. In the framework, the propagation of T-Rank/D-Rank is penalized by the target's current D-Rank/T-Rank. In this way, propagating both trust and distrust with target differentiation is implemented. The proposed Trust-Distrust Rank (TDR) algorithm not only makes full use of both good seeds and bad seeds, but also overcomes the disadvantages of both existing trust propagation and distrust propagation algorithms. Experimental results show that TDR outperforms other typical anti-spam algorithms under various criteria.