契丹の高麗侵攻
しかし、江東6州の城を占領できず内陸に無理に進軍したことが問題となって敗残兵を糾合した楊規が持続的な後方を攻撃して大きな被害を受け、この過程で以前の戦闘で捕らえた多数の捕虜が高麗軍に復帰する。楊規と金淑興率いる高麗軍は撤退する遼軍に亀州で待ち伏せ攻撃(伏兵)を仕掛けて一万人余を殺し、楊規率いる軍勢は数日間にわたって追い撃ちを仕掛けて7000人余を殺して、捕虜5000人を奪還した。敗北に激怒した聖宗は大軍を以て亀州に侵攻した。10日間の激戦の末、楊規と金淑興は戦死したが、高麗軍は遼軍を大破して捕虜3万を取り返した。敗退した遼軍は鴨緑江を退却していたが、ここで興化鎮を守備していた鄭成率いる高麗軍の猛攻に遭い遼軍の大半が溺れ死んだ。そこに 開京占領から10日後の1011年1月11日に顕宗が臣下と称して和を請うたため、遼軍は第一次侵攻後に定められた項目に加え、毎年の朝貢と顕宗の入朝と六州の返還を課し撤退した、その際に開京は遼軍により焼かれた。その後高麗軍は撤退する遼軍を奇襲して大きな被害を与える。
撤退する遼軍は降り続く大雨のために難渋し、北部諸州の諸城も遼軍が還ると再び叛いた。
高麗朝廷は尹庶顔を派遣して防衛に当たらせたが失敗し、東京留守蕭恒徳率いる軍は圧倒的な武力で清川江以北を制圧した。高麗朝廷は遼軍の侵攻に対応して、朴良柔を上軍使、徐煕を中軍使、崔亮を下軍使にそれぞれ任命し、三軍を編成して迎撃に向かわせた。現在の安州市に本拠を置いた高麗軍は清川江の北岸に軍を配置して遼軍に備えた。南進する遼軍は清川江で高麗軍の激しい抵抗に遭い黄海道の鳳山城を占領した。 高麗朝廷は、使者の朴良柔を遣わした。訪れた使者に対して蕭恒徳は西京(平壌)以北の割譲と、黄州から慈悲嶺を国境にすることを要求した。報告を聞いた高麗朝廷では臣下たちの意見が分かれたが、最終的に成宗は中軍使の徐煕を派遣して和議を申し込んだ。 高麗は遼に対して罪を請い、「朝貢」、「遼の年号使用」、「宋との断交」、「高麗は遼へ捕虜を返還する(遼は高麗の捕虜を返還しない)」、などの比較的緩い条件で和議を成立させ、「江東6州」の権利を下賜された。 成宗は自ら礼成江まで徐煕を迎えに行き、労をねぎらった。翌994年、徐煕率いる高麗軍は女真族を平定した。高麗は「江東6州」に城塞を築き、国境線を鴨緑江まで広げた。