但是,当时周的势力还很弱小,根本没办法和商朝对抗。姬昌不得不韬光养晦、忍辱负重,小心翼翼地侍奉商王,减少商王的猜疑。不过,姬昌这一路走得这并不容易。有一次,崇国的国君崇侯虎在商纣王那里告了姬昌一状。纣王对姬昌起了猜忌,不但囚禁了他,还把前来营救他的大儿子伯邑考给杀了。据说,残忍的商纣王将伯邑考剁成肉酱,送给姬昌吃,来试探他。姬昌虽然早已料到,却还是忍着悲痛吃了下去。纣王觉得姬昌也不过尔尔,哪有传言中的好谋略、好本事,就对他放松了警惕,留了他一命。
姬昌被纣王关押了七年。后来,周买通了商朝的贵族,又派人送来美女和宝马,想要赎回姬昌。纣王当时正在集中精力攻打夷方,没工夫再跟周纠缠,就把姬昌放了。姬昌回去后进献给纣王很多土地,以示臣服。纣王很满意,赐给姬昌弓矢斧钺(yuè),还封他为“西伯”,有权征伐其他不顺从的国家。