BMZCTF:2020sdnisc-CTF的起源

http://bmzclub.cn/challenges#2020sdnisc-CTF%E7%9A%84%E8%B5%B7%E6%BA%90

在这里插入图片描述
flag.txt

Q1RGIChDYXB0dXJlIFRoZSBGbGFnKSBpcyBvcmlnaW5hdGVkIG==
aW4gdGhlIDE5OTYgREVGQ09OIEdsb2JhbCBIYWNraW5nIENvbmZlcmVuY2UsIG==
YSBjb21wZXRpdGl2ZSBnYW1lIGFtb25nIGN5YmVyc2VjdXJpdHkgZW50aHVzaWFzdHMu
VGhlIENURiBjb21wZXRpdGlvbiBjb3ZlcnMgYSB3aWRl
cmFuZ2Ugb2YgZmllbGRzIGFuZCBoYXMgYSB=
Y29tcGxleCBjb250ZW50LiBBdCB0aGUgc2FtZSB0aW1lLCC=
dGhlIGRldmVsb3BtZW50IG9mIHNlY3VyaXR5IHRlY2hub2xvZ3kg
aXMgZ2V0dGluZyBmYXN0ZXIgYW5kIGZhc3Rlciwg
YW5kIHRoZSBkaWZmaWN1bHR5IG9mIENURiBpcyBnZXR0aW5nIGhpZ2hlciBhbmQgaGlnaGVyLCD=
dGhlIHRocmVzaG9sZCBmb3IgYmVnaW5uZXJzIGlzIGdldHRpbmcg
aGlnaGVyIGFuZCBoaWdoZXIuIB==
TW9zdCBvZiB0aGUgb25saW5lIGluZm9ybWF0aW9uIGlzIHNjYXR0ZXJlZCBhbmQgdHJpdmlhbC4g
QmVnaW5uZXJzIG9mdGVuIGRvbid0IGtub3cgaG93IHRvIHN5c3RlbWF0aWNhbGx5II==
bGVhcm4gdGhlIGtub3dsZWRnZSBvZiBDVEYgcmVsYXRlZCBmaWVsZHMsIF==
b2Z0ZW6gdGFraW5nIGEgbG90IG9mIHRpbWUgYW5kIHN1ZmZlcmluZy6=
SW4gb3JkZXIgdG8gbWFrZSB0aGUgQ1RGIHBsYXllcnMg
bGlmZSBvZiBlbnRlcmluZyB0aGlzIGZpZWxkIGVhc2llciwg
aW4gT2N0b2JlciHyMDE2LCBDVEYgV2lraSBoYWQgdGhlIGZpcnN0IGNvbW1pdCBvbiBHaXRodWIuIH==
QXMgY29udGVudCBjb250aW51ZXMgdG8gaW1wcm92ZSwg
dGhlIENURiBXaWtpIGhhcyBiZWVuIGxvdmVkIGJ5IG1vcmUgYW5kIG1vcmUgc2VjdXJpdHkgZW50aHVzaWFzdHMsIH==
YW5kIHRoZXJlIGFyZSBhbHNvIGErbG90IG9mIGZyaWVuZHMrd2hvIGhhdmUrbmV2ZXIrbWV0IHBhcnRpY2lwYXRpbmcraW4rdGhpcyBwcm9qZWN0Lr==
QXMgYSBmcmVlIHNpdGUsID==
d2l0aCB0aGUgcmVjZW50IHllYXJzJyBDVEYgY2hhbGxlbmdlcywg
Q1RGIFdpa2kgaW50cm9kdWNlcyB0aGUga25vd2xlZGdlIGFuZCB0ZWNobmlxdWVzIGluIGFsbCBkaXJlY3Rpb25zIJ==
b2YgQ1RGIHRvIG1ha2UgaXQgZWFzaWVyIGZvciBiZWdpbm5lcnMgdG8gbGVhcm4gaG93IHRvIGdldHRpbmcgc3RhcnRlZCBhdCBwbGF5aW5nIENURi4=
QXQgcHJlc2VudCwg
Q1RGIFdpa2kgbWFpbmx5IGNvbnRhaW5zIHRoZSBiYXNpYyBrbm93bGVkZ2Ugb2YgQ1RGIGluIGFsbCBtYWpvciBkaXJlY3Rpb25zLCD=
YW5kIGlzIHdvcmtpbmcgaGFyZCB0byBpbXByb3ZlIHRoZSBmb2xsb3dpbmcgY29udGVudHMu
QWR2YW5jZWQga25vd2xlZGdlIGluIHRoZSBDVEYgY29tcGV0aXRpb25=
UXVhbGl0eSB0b3BpY3MgaW4gdGhlIENURiBjb21wZXRpdGlvbg==
Rm9yIG1vcmUgaW5mb3JtYXRpb24gb24gdGhlIGFib3ZlLCBzZWUgdGhlIFtQcm9qZWN0c10g
KGh0dHBzOi8vZ2l0aHViLmNvbS9jdGYtd2lraS9jdGYtd2lraS9wcm9qZWN0cykg
b2YtdGhlIENURiBXaWtpIGZvciBhIGRldGFpbGVkIGxpc3Qtb2Ytd2hhdCBpcyBiZWluZyBkb25lIGFuZCB3aGF0IHRvIGRvLt==
T2YgY291cnNlLCB0aGUgQ1RGIFdpa2kgaXMgYmFzZWQgb24gQ1RGLCA=
YnV0IGl0IGlzIG5vdCBsaW1pdGVkIHRvIENURi4gSW4gdGhlIGZ1dHVyZSwg
Q1RGIFdpa2kgd2lsbD==
SW50cm9kdWNpbmcgdG9vbHMgaW4gc2VjdXJpdHkgcmVzZWFyY2ggYXJlYX==
TW9yZSBpbnRlZ3JhdGlvbiB3aXRoIHNlY3VyaXR5IGFyZWE=
SW4gYWRkaXRpb24sIGdpdmVuIHRoZSBmb2xsb3dpbmcgdHdvIHBvaW50c9==
VGVjaG5vbG9neSBzaG91bGQsYmUsc2hhcmVkIGluIGFuIG9wZW4sbWFubmVyLs==
U2VjdXJpdHkgb2ZmZW5zaXZlIGFuZCBkZWZlbnNpdmUg
dGVjaG5vbG9naWVzIGFyZSBhbHdheXMgdXAgdG8gZGF0ZSwg
YW5kIG9sZCB0ZWNobm9sb2dpZXMgbWF5IGZhaWwgYXQgYW55IHRpbWUg
aW7gdGhlIGZhY2Ugb2YgbmV3IHRlY2hub2xvZ2llcy7=
Q1RGIFdpa2kmd2lsbCBuZXZlciBwdWJsaXNoIGJvb2tzLm==
RmluYWxseSwgdGhlIENURiBXaWtpIG9yaWdpbmF0ZXMgZnJvbSB0aGUgY29tbXVuaXR5LCB=
YXMgYW4gaW5kZXBlbmRlbnQgb3JnYW5pemF0aW9uLCBhZHZvY2F0ZXMgZnJlZWRvbSBvZiBrbm93bGVkZ2Us
IHdpbGwgbmV2ZXIgYmUgY29tbWVyY2lhbGl6ZWQgaW4gdGhlIGZ1dHVyZSwg
YW5kIHdpbGwoYWx3YXlzIHJlbWFpbiBpbmRlcGVuZGVudCBhbmQoZnJlZWRvbSoqLo==
Q1RGIG9yaWdpbmF0ZWQgZnJvbSB0aGUgY29tcGV0aXRpb24gZ2FtZSBiZXR3ZWVuII==
aGFja2VycyBpbiB0aGUsZm91cnRoIERFRkNPTiBpbiAxOTk2Ls==
RWFybHkgeWVhcnMgb2YgQ1RGICgxOTk2LTIwMDEpLCC=
dGhlcmUgYXJlIG5vIGNsZWFyIHJ1bGVzLCBubyBwcm9mZXNzaW9uYWwg
Y29tcGV0aXRpb24gcGxhdGZvcm0gYW5kIGVudmlyb25tZW50LiB=
VGhlIG9yZ2FuaXplciBwcmVwYXJlcyB0aGUgcnVsZXMgb2YgdGhlII==
Y29tcGV0aXRpb24gKHByZXBhcmF0aW9uIG9mIHNlY3VyaW5nIHRoZSBuZXR3b3JrLCD=
YXMgd2VsbCBhcyBleHBsb2l0aW5nIGl0cyB2dWxuZXJhYmlsaXRpZXMpLiA=
TW9zdCBvZiB0aGUgb3JnYW5pemVycyBhcmUganVzdCD=
ZW50aHVzaWFzdGljIG5vbi1wcm9mZXNzaW9uYWwgdm9sdW50ZWVycyC=
d2hvIGFzc2lzdHMgaW4gbWFudWFsIHNjb3Jpbmcu
RHVlIHRvIGxhY2sgb2YgYXV0b21hdGVkIHNjb3JpbmcgYW5kIHRlY2huaWNhbCByZWZlcmVlcywg
YWxvbmcgd2l0aCBzY29yaW5nIGRlbGF5cyBhbmQgZXJyb3JzLCB=
dW5yZWxpYWJsZSBuZXR3b3JrIGFuZCBpbXByb3BlciBjb25maWd1cmF0aW9uLCA=
Z3JlYXQtY29udHJvdmVyc3ktYW5kIGRpc3NhdGlzZmFjdGlvbiBpcyB3aWRlc3ByZWFkLt==
QSBwcm9mZXNzaW9uYWwgdGVhbSB3aWxsIGhhbmRsZSB0aGUgY29tcGV0aXRpb24gcGxhdGZvcm0sIHByb2JsZW1zLCBvcmdhbml6YXRpb24gb2YgdGhlIGV2ZW50IGFuZCBhdXRvbWF0ZWQgc2NvcmluZyBzeXN0ZW0uIFRoZSBwYXJ0aWNpcGF0aW5nIHRlYW1zIGFyZSByZXF1aXJlZCB0byBzdWJtaXQgYW4gYXBwbGljYXRpb24gZm9yIHBhcnRpY2lwYXRpb24gYW5kIHdpbGwgYmUgc2VsZWN0ZWQgYnkgdGhlIG9yZ2FuaXplcnMgb2YgdGhlIERFRkNPTiBpbiBhIG1lZXRpbmcu
RHVyaW5nIHRoZSB0aHJlZSB5ZWFycyB3aXRoIF==
TGVnaXRCUyBvcmdhbmlzaW5nIHRoZSBERUZDT04gQ1RGIGNvbXBldGl0aW9uLCC=
YSBmZXcgbW9kaWZpY2F0aW9ucyBoYXZlIGJlZW4gbWFkZTo=
VGhlIGNvbXBldGl0aW9uIGZvY3VzZXMgb24gdGhlIGlubmVyIHdvcmtpbmdzIG9mIE==
dGhlIGNvbXB1dGVyLCBpdHMgc2VjdXJpdHkgZmVhdHVyZXMgYW5kIGNhcGFiaWxpdGllcywg
d2ViIGV4cGxvaXRhdGlvbiBoYXMgYmVlbiBjb21wbGV0ZWx5IGlnbm9yZWQu
VmFyaW91cyBvZiBDUFUgYXJjaGl0ZWN0dXJlcywg
b3BlcmF0aW5nIHN5c3RlbXMgYW5kIGxhbmd1YWdlcy7=
Ilplcm8gU3VtIiBzY29yaW5nIHJ1bGUu
QSB3aWRlciBza2lsbHNldCBkZW1hbmRlZDog
UmV2ZXJzZSBlbmdpbmVlcmluZywgZXhwbG9pdGluZyBsb29waG9sZXMsID==
cHduaW5nLCBwYXRjaGluZywgbmV0d29yayB0cmFmZmljIGFuYWx5c2lzLCA=
c3lzdGVtIHNlY3VyaXR5LCBhbmQgc2VjdXJpdHktb3JpZW50ZWQg
c3lzdGVtIGZvciBwcm9ncmFtbWluZyBhbmQtZGVidWdnaW5nLt==
VGhlIHByb2JsZW0gc29sdmluZyBtb2RlIChKZW9wYXJkeSkg
aXMkY29tbW9uIGluIG9ubGluZSBzZWxlY3Rpb24kY29tcGV0aXRpb25zLk==
SW4gdGhlIENURiBzeXN0ZW0gb2YgcHJvYmxlbS1zb2x2aW5nIG1vZGUsIM==
dGhlIHBhcnRpY2lwYXRpbmcgdGVhbXMgY2FuIHBhcnRpY2lwYXRlIHRocm91Z2ggdGhlIEludGVybmV0IG9yIHRoZSBvbi1zaXRlIG5ldHdvcmsuIB==
VGhlIHBhcmFtZXRlciB0ZWFtIGNhbiBzb2x2ZSB0aGUgbmV0d29yayBzZWN1cml0eSC=
dGVjaG5vbG9neSBjaGFsbGVuZ2UgYW5kIG9idGFpbiB0aGUgY29ycmVzcG9uZGluZyBzY29yZSBieSA=
aW50ZXJhY3Rpbmcgd2l0aCB0aGUgb25saW5lIGVudmlyb25tZW50IG9yIG9mZmxpbmUgYW5hbHlzaXMgb2YgdGhlIGZpbGUsIJ==
YW5kIEFDTS4gVGhlIHByb2dyYW1taW5nIGNvbXBldGl0aW9uIGFuZCB0aGUgaW5mb3JtYXRpY3Mg
T2x5bXBpYyBjb21wZXRpdGlvbiBhcmUgc2ltaWxhciwg
cmFua2luZyBhY2NvcmRpbmcodG8odGhlIHRvdGFsIHNjb3JlIGFuZCB0aW1lLo==
VGhlIGRpZmZlcmVuY2UgaXMgdGhhdCB0aGUgcHJvYmxlbSBzb2x2aW5nII==
bW9kZSB3aWxsIGdlbmVyYWxseSBzZXQgYSBibG9vZCMsIHR3byBibG9vZCMsIM==
dGhyZWUgYmxvb2QgLCB0aGF0IGlzLCB0aGUgZmlyc3QgdGhyZWUgdGVhbXMgdG8gY29tcGxldGUgdGhlIGZpcnN0II==
c2NvcmUgd2lsbCBnZXQgZXh0cmEgcG9pbnRzLCBzbyB0aGlzIGlzIG5vdCD=
b25seSBJdCBpcyBhbiBpbmNlbnRpdmUgdG8gc2NvcmUgdGhlIHRlYW0gdGhhdCBzb2x2ZXMgdGhlIHByb2JsZW0gZmlyc3QsIH==
YW5kIGl0IGlzIGFsc28gYW4gaW5kaXJlY3QgbWFuaWZlc3RhdGlvbiBvZiB0ZWFtIGFiaWxpdHku
T2YgY291cnNlLCB0aGVyZSBpcyBhbHNvIGEgcG9wdWxhciBzY29yaW5nIHJ1bGUgaXMgdG8gc2V0IHRoZSBpbml0aWFsIHNjb3JlIG9mIG==
ZWFjaCBxdWVzdGlvbiwgYW5kIGdyYWR1YWxseSByZWR1Y2UgdGhlIHNjb3JlIG9mIHRoZSBxdWVzdGlvbiBhY2NvcmRpbmcgdG8g
dGhlIG51bWJlciBvZiBzdWNjZXNzZnVsIGFuc3dlcmluZyB0aGUgbnVtYmVyIG9mIHRoZSBxdWVzdGlvbiwg
dGhhdCBpcywgaWYgdGhlIG51bWJlciBvZiBwZW9wbGUgYW5zd2VyaW5nIHRoZSBxdWVzdGlvbiBpcyBtb3JlLCBUaGVuIHRoZSBzY29yZSB=
b2YgdGhpcyBxdWVzdGlvbiBpcyBsb3dlci4g
RmluYWxseSwgaXQgd2lsbCBkcm9wIHRvIGEgZ3VhcmFudGVlZCBib3R0b20gdmFsdWUgYW5kIHdpbGwgbm90IGZhbGwu
VGhlIHRvcGljIHR5cGVzIG1haW5seSBpbmNsdWRlIFdlYiBOZXR3b3JrIEF0dGFjayBhbmQgRGVmZW5zZSwg
UkUgUmV2ZXJzZSBFbmdpbmVlcmluZywgUHduIEJpbmFyeSBFeHBsb2l0YXRpb24sIA==
Q3J5cHRvIFBhc3N3b3JkIEF0dGFjaywgTW9iaWxlIE1vYmlsZSBTZWN1cml0eSBhbmQg
TWlzYyBTZWN1cml0eSBNaXNjZWxsYW5lb3VzIFRoZXNlIHNpeCBjYXRlZ29yaWVzLt==
SW4gdGhlIDIwMTYgV29ybGQgSGFja2luZyBNYXN0ZXJzIENoYWxsZW5nZSMoV0NURiksIM==
dGhlIEJFTExVTUlOQVIgQ1RGIChXYXIgYW5kIFNoYXJlKSBzeXN0ZW0gaW5pdGlhdGVk
YnkgdGhlIEtvcmVhbiBQT0MgU0VDVVJJVFkgdGVhbSB3YXMgaW50cm9kdWNlZCD=
Zm9yIHRoZSBmaXJzdCB0aW1lLiBTaW5jZSB0aGVuLCB0aGUgQkVMTFVNSU5BUiBtb2RlIA==
aGFzIGJlZW4gc3RhcnRlZCBpbiB0aGUgY291bnRyeSwgYW5kIHRoZSBjdXJyZW50IHN5c3RlbSBpcyA=
MjDxNi4gVGhlIFhNYW4gU3VtbWVyIENhbXDgU2hhcmluZyBDb21wZXRpdGlvbiBvZiBaaHVnZSD=
SmlhbndlaSBhbmQgdGhlICJCYWlkdSBDdXDiID==
Q1RGIENvbXBldGl0aW9uIGluIFNlcHRlbWJlciBvZiB0aGUjc2FtZSB5ZWFyLj==
QXQgdGhlIHNhbWUgdGltZSwgdGhlcmUgaXMgYWxzbyBhbiBvZmZpY2lhbCC=
d2Vic2l0ZSBvZiB0aGUgQkVMTFVNSU5BUiBzeXN0ZW06IGh0dHA6Ly9iZWxsdW1pbmFyLm9yZy8=
SW51cm9kdWN1aW9uIHRvIHRoZSBjb21wZXRpdGlvbiBzeXN1ZW1=
QmVsbHVtaW5hciwgaGFja2luZyBjb250ZXN0IG9mIFBPQywg
c3RhcnRlZCBhdCBQT0MyMDE1IGluIEtPUkVBIGZvciB0aGUgZmlyc3QgdGltZS4g
QmVsbHVtaW5hciBpcyBmcm9tICdCZWxsdW0nKHdhciBpbiBMYXRpbikgYW5kICdzZW1pbmFyJy4g
SXQpaXMpbm90IGEpanVzdCBoYWNraW5nIGNvbnRlc3QpYnV0IGEpa2luZCBvZp==
ZmVzdGl2YWwgY29uc2lzdGVkIG9mIENURiAmIHNlbWluYXIgZm9yIHRoZSBzb2x1dGlvbiBhYm91dCBjaGFsbGVuZ2VzLiA=
T25seSBpbnZpdGVkIHRlYW1zIGNhbiBqb2luIEJlbGx1bWluYXIuID==
RWFjaCB0ZWFtIGNhbiBzaG93IGl0cyBhYmlsaXR5IHRvIGF0dGFjayB3aGF0IG90aGVyIHRlYW1zIHdhbnQgdG8gcHJvdGVjdCBhbmQgY2Fu
ZGVmZW5kIHdoYXQkb3RoZXJzIHdhbnQkdG8kYXR0YWNrLk==
QXMgdGhlIG9mZmljaWFsIHdlYnNpdGUgaW50cm9kdWNlcywg
dGhlIEJFTExVTUlOQVIgQ1RGIHN5c3RlbSBpcyBjaGFsbGVuZ2VkIGJ5IHRoZSBpbnZpdGVkIHRlYW1zLCA=
YW5kIGFmdGVyIHRoZSBnYW1lIGlzIGZpbmlzaGVkLCB0aGUgaWRlYXMsIM==
bGVhcm5pbmcgcHJvY2VzcyBhbmQgcHJvYmxlbS1zb2x2aW5nIGlkZWFzIG9mIHRoZSBjb21wZXRpdGlvbiBhcmUgc2hhcmVkLiC=
VGhlIHRlYW0gc2NvcmUgaXMgYmFzZWQgb24gdGhlIHNjb3JlLCB=
dGhlIHByb2JsZW0oc2NvcmUoYW5kIHRoZSBzaGFyZSBzY29yZSBmb3IoYSBjb21wcmVoZW5zaXZlIGV2YWx1YXRpb24oYW5kIHRoZSBmaW5hbCByYW5raW5nLo==
QWZ0ZXIgdGhlIGdhbWUgaXMgb3ZlciwgdGhlIHRlYW0gcmVzdHMgYW5kIGlzII==
cmVhZHkgdG8gbWFrZSBhIHNoYXJlZCBQUFQgKGFsc28gcmVhZHkgZm9yIHRoZSBwcm9ibGVtIHN0YWdlKS4g
V2hlbiBzaGFyaW5nIHRoZSBtZWV0aW5nLCBlYWNoIHRlYW0gc2VuZHMgMiBUaGUgdGVhbSBtZW1iZXJzIM==
dG9vayB0aGUgc3RhZ2UgdG8gY2Fycnkgb3V0IHRoZSBwcm9ibGVtLXNvbHZpbmcgaWRlYXMsII==
dGhlIGxlYXJuaW5nIHByb2Nlc3MgYW5kIHRoZSBzaGFyaW5nIG9mIGtub3dsZWRnZSBwb2ludHMuIN==
QWZ0ZXIgdGhlIHByZXNlbnRhdGlvbiwgZW50ZXIgdGhlIGludGVyYWN0aXZlIGRpc2N1c3Npb24gc2Vzc2lvbiwg
YW5kIHRoZSBleHBsYW5hdGlvbiByZXByZXNlbnRhdGl2ZSBuZWVkcyB0byBhbnN3ZXIgdGhlIHF1ZXN0aW9ucyD=
cmFpc2VkIGJ5IHRoZSBqdWRnZXMgYW5kIG90aGVyIHBsYXllcnMuID==
VGhlcmUgaXMgbm90IG11Y2ggdGltZSBsaW1pdCBmb3IgY29tbWVudGFyeSwg
YnV0IHRpbWUgdXNhZ2UgaXMgYSBjcml0ZXJpb24gZm9yIHNjb3Jpbmcu
NTDlIG9mIHRoZSBwb2ludHMgKDMwJSBvZiB0aGUgdG90YWwgc2NvcmUpID==
YXJlIHNjb3JlZCBieSB0aGUganVkZ2VzIGFjY29yZGluZyB0byB0aGUgbG==
ZXZlbCBvZiBkZXRhaWwgc3VibWl0dGVkIGJ5IHRoZSBqdWRnZXMsIHRoZSBjb21wbGV0ZSBxdWFsaXR5LCA=
dGhlIHN1Ym1pc3Npb24gdGltZSwgYW5kIHRoZSBvdGhlciA1MCUgYXJlIHNjb3JlZCBhY2NvcmRpbmcgdG8g
dGhlIGZpbmFsIHByb2JsZW0gYWZ0ZXIgdGhlIGdhbWUuIEV4YW1wbGUgb2Ygc2NvcmluZyBmb3JtdWxhOiB=
U2NvcmUgPSBNYXhTY29yZSAtLSB8IE4gLS0gRXhwZWN0X04gfC4g

base64隐写

def get_base64_diff_value(s1, s2):
    base64chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'
    res = 0
    for i in xrange(len(s2)):
        if s1[i] != s2[i]:
            return abs(base64chars.index(s1[i]) - base64chars.index(s2[i]))
    return res


def solve_stego():
    with open('./flag.txt', 'rb') as f:
        file_lines = f.readlines()
        bin_str = ''
        for line in file_lines:
            steg_line = line.replace('\n', '')
            norm_line = line.replace('\n', '').decode('base64').encode('base64').replace('\n', '')
            diff = get_base64_diff_value(steg_line, norm_line)
            print diff
            pads_num = steg_line.count('=')
            if diff:
                bin_str += bin(diff)[2:].zfill(pads_num * 2)
            else:
                bin_str += '0' * pads_num * 2
            print goflag(bin_str)


def goflag(bin_str):
    res_str = ''
    for i in xrange(0, len(bin_str), 8):
        res_str += chr(int(bin_str[i:i + 8], 2))
    return res_str


if __name__ == '__main__':
    solve_stego()

在这里插入图片描述

flag{944776b2c95a350bb27d7038d42b273a}
  • 1
    点赞
  • 0
    收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

末初mochu7

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值