1937年8月初,随着日军侵华战争的展开,规模空前的淞沪会战即将在远东第一大都市上海展开,中国最高统帅部决定“先发制敌”,一举歼灭长江上的所有日舰,消灭日本海军陆战队,赢得战争的先机。长江的一艘游轮上,爱国学生不失时机地宣传抗日,焚烧日货,蓝胭脂(赵丽颖 饰)扮成盲人的样子来到甲板上,一路用着盲杖小心翼翼地兜了一圈回到内仓,之前一直在仓外画画的她的闺蜜冯曼娜(陶昕然 饰)早就在那里恭候了。她向闺蜜汇报第一个撞她的是个老头,还是个瘸子,因为他走路的时候一脚轻一脚重,至于判定他是个老头则因为听到对方喉咙里有痰;第二个撞她的则是个时髦的女人,喷的香水是法国的夜巴黎,擦的胭脂则是双妹牌的,听口音感觉不是上海人。闭着眼的她甚至用耳朵判断出外面集会烧日货的学生一共有三十九人。曼娜恭喜胭脂全部答对,并表示她的听力、判断力、洞察力都是一流的。胭脂又对曼娜说她回来的时候遇到了两个奇怪的人,一个扶了一把差点摔倒的自己,这么热的天居然穿着一身毛料西服,热得身上手上都大汗淋漓的;另一个是个酒鬼,大白天喝得醉醺醺的,撞到她的时候不知道腰里别着什么东西,硌得她生疼,说到这里两人都反应了过来那不会是枪吧。蓝胭脂打算出门打探一番,在船舱转角处撞上了之前遇到过的时髦女人,两人手里的化妆包都打翻了,那时髦女人和蓝胭脂都想拿起地上的双妹胭脂,时髦女人说那是她的,蓝胭脂于是连忙道歉并从包中拿出一模一样的另一盒说自己也有一盒。当蓝胭脂继续到处查探时被那个醉酒男子用枪胁迫到机舱内禁锢了起来,此人的真实身份是救国会特勤处的特工宋勉(袁文康 饰)。时髦女子和一陌生男子在甲板上秘密递交情报,这一幕落入宋勉的眼中,他的大脑数据库立刻跳出日本间谍井上纯子和龙二(赵雷奇 饰)的名字。井上纯子刚在房间里把情报塞入胭脂盒走出房门就被一男子用枪支胁迫带走。曼娜久等胭脂不回于是出房间一路小心翼翼地找着胭脂的行踪,胭脂此时正被手铐铐在柱子上动弹不得,突然她摸到柱子上有机油,于是灵机一动把双手涂满机油,用尽全力将手从手铐中褪了出来。重获自由的胭脂与曼娜会合,她告诉曼娜特务共有三个,她们必须尽快告诉船长。路上却不幸落入龙二之手,幸亏宋勉等人一直关注着龙二的行踪及时出手击毙了龙二救下蓝胭脂,带走了井上纯子,纯子在紧急关头将装有情报的胭脂盒塞入了蓝胭脂的包里。游轮靠岸,日本特高科侦查股股长渡边一郎(秦浩 饰)坐在车内迎接井上纯子的到来,没想到井上纯子竟是被押送着出来的,井上纯子用摩斯密码将自己的处境告诉渡边一郎,渡边一郎收到消息即驱车离开,在宋勉的车和渡边的车交汇之时井上纯子故意偏过头去露出空门,渡边一枪将其毙命。救国会上海站,站长万志超(李梦男 饰)正在听取工作报告,宋勉回来了,他告诉站长此行一无所获,只是从龙二嘴里挖出了含有巨毒的不完整的作战图,纯子身上的情报应该已经转移,不排除船上还有日本人的接应者。万站长称此事事关淞沪会战的关键,二十四小时后宋勉务必要将他需要的东西拿到。渡边把纯子最后留下的情报翻译给课长,纯子把情报转移到了一个叫蓝胭脂的女子身上,课长下令务必尽快查到蓝胭脂的下落。日本人很快查到了蓝胭脂的底细,她是南京中央大学数学系的学生,父亲蓝长明(舒耀瑄 饰)是上海金信银行的老板,有一定的势力和影响力,其政治态度反日亲英美。还有一个重要发现就是和蓝胭脂一起回来的女孩冯曼娜是日军间谍冯子雄(石兆琪 饰)的女儿。冯子雄接到任务后借着女儿曼娜生日,难得大方地要帮女儿开个生日派对,让她把最好的朋友都叫来,自然是少不了胭脂了。席间冯子龙的妻子趁着胭脂不备将她包中的胭脂盒偷偷取出塞入自己包中。