正当曹操全力征讨陶谦之时,后方却突生变故。张邈与陈宫背叛曹操,迎接吕布进入兖州,一时间,兖州的众多郡县纷纷响应。这突如其来的背叛让曹操陷入了腹背受敌的困境,荀彧和程昱临危受命,坚守鄄城,范县和东阿县的百姓也齐心协力,顽强抵抗。曹操得知消息后,不得不放弃对陶谦的进攻,紧急率领军队回援。
吕布进入兖州后,直奔鄄城而来,试图一举攻克这座重镇。然而,荀彧和程昱凭借着出色的指挥和坚定的意志,带领城中军民顽强抵抗,吕布久攻不下,无奈之下,只能向西退往濮阳屯驻。曹操得知吕布的动向,心中暗自分析道:“吕布刚得到兖州,却不占据东平,切断亢父、泰山的通道,凭借险要地势来拦截我,反而屯兵濮阳,由此可见,他没什么大的能耐。”于是,曹操果断进军,向濮阳发起进攻。
双方在濮阳展开了激烈的战斗。吕布派出精锐骑兵,率先向曹操的青州兵发起冲击。青州兵面对吕布骑兵的凶猛攻势,阵脚大乱,纷纷奔逃。青州兵的溃败引发连锁反应,导致曹操的整个军阵陷入混乱。一时间,战场上局势危急,吕布的军队趁势猛攻,曹操的军队陷入苦战。曹操在混乱中奋力突围,却不幸坠马,左手掌也被火烧伤。关键时刻,司马楼异眼疾手快,迅速扶起曹操,让他重新上马,曹操这才在混乱中突出重围,脱离险境。
据《袁暐献帝春秋》记载,曹操围困濮阳时,濮阳的大姓田氏充当内应,曹操得以率军入城。进城后,曹操为了表示破釜沉舟的决心,下令烧毁东门。但在接下来的战斗中,曹操的军队遭遇惨败。吕布的骑兵在战场上四处搜寻曹操,抓住了曹操本人却浑然不知。他们向曹操问道:“曹操在哪里?”曹操急中生智,回答说:“骑着黄马逃跑的那个人就是。”吕布的骑兵信以为真,放过曹操,转而追击骑黄马的人。此时东门火势正猛,曹操拼尽全力,从火海中突围而出。
曹操一路奔逃,还未回到军营,众将还未见到曹操的身影,都心急如焚,惶恐不安。曹操回到军营后,尽管身负伤痛,却强撑着身体,亲自慰劳将士,鼓舞士气。他命令军中士卒迅速制造攻城器械,准备再次向吕布发起进攻。此后,曹操与吕布在濮阳对峙了一百多天。然而,祸不单行,这期间,蝗虫肆虐,大片农田遭到破坏,百姓陷入严重的饥荒之中。吕布的军队也面临着粮食短缺的困境,双方都难以支撑,最终各自引兵退去。