ソウル大学卒業後、地方法院判事等を経て、1988年に国会議員初当選。1993年に金泳三政権下で初入閣（労相）を果たし、1995年の全国同時地方選挙で京畿道知事に当選。1997年大統領選挙では、当時の金泳三政権与党である新韓国党から立候補すべく、候補者予備選に出馬したが李会昌に敗北した。結局、同党を離党して結成した国民新党の候補として大統領選挙に出馬したが、金大中と李会昌に次ぐ、492万票余りを獲得する3位に留まった。この大統領選挙ではハンナラ党（新韓国党と民主党が合併して発足）候補の李会昌が新政治国民会議（以下、国民会議）の金大中に僅差で破れたこともあって、予備選挙の結果に従わなかったことに批判がある。大統領選の翌1998年に金大中政権が発足すると与党である国民会議に合流。2002年には新千年民主党（国民会議の後身）の大統領候補予備選挙に出馬するものの、現大統領の盧武鉉の勢いに屈して辞退し、新千年民主党を離党する。その後、自由民主連合（自民連）、国民中心党と移るが、2007年5月に民主党（2005年に新千年民主党から党名変更）に復党。2007年に行われた大統領選挙では民主党の候補として選挙戦を戦ったが、得票率は1％にも満たず惨敗した。翌年4月の総選挙では統合民主党の公認が得られず無所属で忠清南道の地域区から立候補し、当選した。3年余り後の2011年10月、忠清圏に強い基盤を持つ自由先進党（以下、先進党）に合流した。2012年4月の総選挙で六選を果たしたが、先進党自身は地盤である忠清道を与党セヌリ党に奪われ選挙前議席を大きく割り込んで惨敗した。敗北の責任をとるため沈大平代表を初めてとする党指導部と中央党職者が一括辞任、新指導部を選出するまでの運営機関である非常対策委員会の委員長に選任された。5月29日に行われた全党大会で、先進党から党名改称して発足した統一党の初代代表に選出された。10月25日、大統領選挙を前にセヌリ党と統一党が合併を宣言したことにより、97年以来15年ぶりに元の政党へ戻ることになった。2014年7月14日のセヌリ党全党大会で行われた党指導部選挙の結果、党最高委員に選出された。2016年4月13日に行われた第20代総選挙で忠清南道論山市･鶏龍市･錦山郡選挙区から立候補したが、共に民主党の金鍾民（朝鮮語: 김종민_(1964년)）に敗れて落選した。2018年6月13日の第7回全国同時地方選挙の忠清南道知事選挙に立候補したが、得票率35.1%にとどまり、共に民主党の梁承晁（朝鮮語: 양승조）（得票率62.5%）に大差をつけられて惨敗した。
史寧の子として生まれた。若くして文武に才幹があった。北周に仕えて太子車右中士となり、父の功績により武遂県公に封じられた。隋の文帝が即位すると、儀同に任じられ、領交州事をつとめ、陽城郡公に爵位を進めた。史祥は交州において善政で知られた。数年後、驃騎将軍の号を受けた。589年（開皇9年）、隋軍が南朝陳に大挙して南征すると、史祥は宜陽公王世積の下で従軍した。水軍を率いて九江道に進出し、先鋒として陳軍と合戦して撃破し、進軍して江州を攻め落とした。文帝の賞賛を受けて、位を上開府に進めた。ほどなく蘄州総管に任じられ、まもなく左領左右将軍の号を受けた。後に行軍総管として晋王楊広の下で突厥討伐に従軍し、霊武で突厥軍を破った。右衛将軍の号を受けた。仁寿年間、史祥は兵を率いて弘化に駐屯し、突厥の侵攻に備えた。楊広が皇太子となると、史祥は楊広と書簡をやりとりして、親しく待遇された。604年（仁寿4年）、煬帝（楊広）が即位し、漢王楊諒が挙兵して叛くと、楊諒の部将の綦良が滏口から黎陽におもむいて白馬津を要塞化し、余公理が太行から河内に南下した。史祥は行軍総管となり、河陰に軍を駐屯させたが、長らく軍を渡河させることができなかった。史祥は余公理が軽はずみで謀略に弱いと見て取り、攻城具を準備するよう軍中に命じた。余公理は諜者によってこれを知り、河陽の内城に兵を駐屯させて史祥の攻城に備えた。史祥が黄河南岸に船を艤装させると、余公理は武装兵を集めてこれに対応させた。史祥が精鋭を選抜して下流から黄河を渡らせようとすると、余公理は兵を率いてこれをはばんだ。史祥が須水に達し、両軍が対峙すると、余公理の戦列が整っていないのをみて、ようやく攻撃を仕掛け、これを撃破した。さらに史祥は東方の黎陽に赴いて綦良らと対峙したが、綦良が戦う前に逃走したため、これを追撃して1万人あまりを殺した。史祥は上大将軍に位を進め、太僕卿に転じた。ほどなく鴻臚卿に転じた。607年（大業3年）、突厥の啓民可汗が入朝を求めると、煬帝は史祥を派遣して応接させた。608年（大業4年）、史祥は吐谷渾に対する遠征に従軍し、兵を率いて間道から吐谷渾を攻撃して破った。位を左光禄大夫に進めた。610年（大業6年）、左驍衛大将軍となった。612年（大業8年）、高句麗遠征において、史祥は蹋頓道に進出し、高句麗軍に敗れて撤退した。このため官爵を剥奪されて民とされた。まもなく燕郡太守に任じられ、高開道の反乱軍に包囲された。史祥は病と称して事務を見なかった。城が陥落すると、高開道は史祥を礼遇した。高開道と羅芸が講和したため、史祥は涿郡に送られ、塗で死去した。子に史義隆があり、永年県令をつとめた。