当前位置: 首页 > news >正文

女生自己做网站小程序制作工具

女生自己做网站,小程序制作工具,哪个网站可以接工程做,雅昌网站做古董交易目录 摘要引言贡献 背景SMMXen Credit Scheduler与资源核算SGX 威胁模型Scheduler attacksResource interference attacksVM Escape attacks 架构Resource Accounting WorkflowCost of Accounting 具体的部署和评估见论文相关工作Resource Accounting基于SMM的方法基于SGX的系统… 目录 摘要引言贡献 背景SMMXen Credit Scheduler与资源核算SGX 威胁模型Scheduler attacksResource interference attacksVM Escape attacks 架构Resource Accounting WorkflowCost of Accounting 具体的部署和评估见论文相关工作Resource Accounting基于SMM的方法基于SGX的系统其他VM多租户研究 未来工作结语 作者Kevin Leach, Fengwei Zhang, and Westley Weimer 发布RAID 时间2017 1、系统管理存在调度上的逻辑漏洞导致资源分配失衡 2、SMM保证SGX在底层的信任以及透明跟踪即不留痕迹 3、Scotch把资源分配变得更加准确和透明并不区分恶意和良性 摘要 对基于云的服务的日益依赖导致人们越来越关注云安全。云提供商必须处理客户对其云基础设施整体安全性的担忧。特别是越来越多的云攻击以云环境中的资源分配为目标。例如攻击者可以利用系统管理程序调度程序中的漏洞有效地从同一系统管理程序上的其他良性guests窃取CPU时间。 在本文中我们介绍了Scotch一个在系统管理程序中透明、准确地核算资源消耗的系统。通过将基于x86的系统管理模式与Intel Software Guard Extensions相结合我们可以确保会计信息的完整性即使系统管理程序已被逃逸的恶意访客破坏。我们展示了我们可以计算每个任务切换和I/O中断的资源为在系统管理程序上运行的每个guest提供了丰富详细的资源消耗信息。我们表明使用我们的系统会产生较小但可管理的开销——每个任务切换或I/O中断大约1μs。我们进一步讨论了通过以随机间隔执行会计可以为我们提出的系统带来的性能改进。最后我们讨论了这种方法对多种基于云的资源攻击的可行性。 引言 软件和基础设施即服务的日益普及导致了云计算市场的增长。2016年云计算基础设施的支出预计将达到380亿美元[14]。同时国家漏洞数据库显示Xen中有226个安全漏洞VMWare ESX有99个漏洞KVM管理程序有98个漏洞[29]。因此人们对云环境中的安全漏洞更加担忧[2026]。 此类漏洞已经导致与云资源分配不当有关的漏洞利用。例如资源释放攻击[35]允许恶意VM访客从受害VM获取一个资源例如更多的CPU时间。类似地系统管理程序调度器中的漏洞也有记录[3249]。虚拟机监控程序漏洞可能允许恶意客户免费或以受害者为代价获取云资源。因此云提供商需要保证使用其基础设施向客户提供服务水平和计费责任[24]。 云提供商利用虚拟化平台如Xen系统管理程序[18]。资源分配由系统管理程序根据与客户的服务级别相对应的提供商的配置来执行。例如云提供商可能会为支付更多资金的客户提供更多的CPU时间——这一策略将由系统管理程序的调度器强制执行。然而利用虚拟机监控程序中漏洞的恶意客户可能能够规避此策略从而获得比其服务级别所要求的更多的资源。 在本文中我们介绍了Scotch安全通信目标透明云健康这是一种利用两个x86功能来准确计算虚拟机消耗的资源的技术系统管理模式SMM和软件保护扩展SGX。SMM允许对底层操作系统、系统管理程序和guest中的CPU寄存器和内存进行透明访问。SGX允许创建被称为飞地的加密区域将关键执行与可能受损的系统管理程序或操作系统隔离开来。我们可以使用SMM来跟踪每个访客消耗的资源以便1潜在的恶意访客不知道2我们可以检测以前未检测到的资源计费攻击。当SMM异步测量资源使用情况时可以使用SGX将这些信息安全地传递到单个用户空间飞地。SMM和SGX的这种新颖组合实现了一种在虚拟化环境中准确测量和安全通信资源使用信息的新方法。 我们评估了一个基于Xen系统管理程序的技术原型。我们展示了我们的技术大约需要1μs来检查每个上下文切换和中断期间的资源使用情况。我们还展示了如何通过随机选择检查资源消耗的间隔在多个上下文切换和中断中分摊这种固定的1μs成本。接下来我们将讨论恶意访客可能窃取的资源数量与我们的技术所产生的开销之间的权衡。最后我们讨论了Scotch能够提供准确资源会计信息的攻击类型而其他方法则无法提供。我们注意到Scotch不会自动决定是否发生恶意活动对这些技术进行直接的比较研究仍然是未来的工作。 贡献 一种准确透明地测量在系统管理程序下运行的guest虚拟机消耗的系统资源的技术 一种采用Xen所提出技术的原型实现 以及一种对所提出技术原型测量精度和开销的实验评估。 背景 在本节中我们将讨论与我们提出的技术相关的三个主题。首先我们介绍了系统管理模式这是一种内置于基于x86的CPU中的特殊执行模式允许透明、隔离的执行。其次我们讨论了Xen虚拟机监控程序以及恶意客户可能利用其获取或滥用云资源的漏洞类型。第三我们介绍了Intel Software Guard eXtensionsSGX这是实现我们方法的另一组指令。 SMM 系统管理模式SMM是所有x86体系结构中可用的CPU模式。它类似于真实模式和保护模式。最初设计用于促进功率控制最近的工作利用SMM进行系统自检[2843]、调试[45]和其他安全任务[4446]。简而言之CPU在系统管理中断SMI时进入SMM。在SMM中CPU执行系统管理处理器SMI处理器这是一段特殊的代码从基本输入/输出系统BIOS固件加载到系统管理RAMSMRAM中系统管理RAM是系统内存的一个隔离区域[6]。在完成SMI处理程序的执行后CPU将在保护模式下恢复执行。 我们使用SMM作为一个可信赖的执行环境来实现我们的资源会计功能。自386以来SMM已在所有x86平台上可用因此它可广泛用于商品系统。此外当SMI处理程序执行时底层操作系统基本上是暂停的。这种孤立的执行为操作系统提供了透明度。我们信任SMM主要有两个原因1SMRAM可以被视为安全存储因为它无法通过保护模式和真实模式访问2SMI处理程序只需要一个小的可信代码库因为它存储在BIOS中并且在正确配置后无法在引导后进行修改。 SMI处理程序作为BIOS的一部分存储。通常供应商提供特定于其平台的SMI处理程序代码。系统通电后BIOS在加载操作系统之前将SMI处理程序代码加载到SMRAM中。加载SMI处理程序后BIOS通过锁定SMRAM来防止对SMI处理软件的进一步修改。在英特尔和AMD平台上这是使用一次写入特定型号寄存器MSR实现的在设置特定比特时不能对SMRAM或相关联的MSR进行其他改变。因此即使系统管理程序完全受损执行资源核算任务的底层SMI处理程序也将保持不变。默认情况下SMI处理程序加载到一个4KB的内存区域称为ASEG段。或者我们可以将SMI处理程序加载到另一个名为TSEG的内存段中以分配更多的空间通常高达8MB。 最后由于SMRAM在硬件中是隔离的即除非CPU处于SMM中否则MMU无法对其进行映射因此假设的DMA攻击将无法破坏存储在SMRAM中的资源计费信息。 Xen Credit Scheduler与资源核算 Xen[18]是一个广泛部署的开源系统管理程序。Xen负责多路复用多个独立的客户虚拟机。在云环境中客户可以根据支付的费用访问具有不同配置的客户虚拟机。例如客户可能会为配置有更多内存、磁盘空间或标称CPU时间的VM向云提供商支付更多费用。 默认情况下Xen使用Xen Credit Scheduler[1]来管理CPU时间。信用调度程序为每个需要CPU时间的虚拟CPUVCPU分配虚拟信用。根据支付的服务水平每个VCPU可以获得更多或更少的积分。也就是说调度器可以根据CPU时间的计费量将更多的信用分配给一个客户的VCPU而不是另一个客户。每次上下文切换调度器都会部分基于VCPU当前拥有的信用数量来决定下一个运行哪个VCPU。虽然Xen还可以使用其他调度器运行Cherkasova等人[13]提供了一个比较但Credit调度器是最常用的调度器。 至关重要的是Xen以一定的时间间隔运行一个助手函数在sched-credit.cfile中burn_credits从当前执行的VCPU中扣除信用。简而言之此函数通过轮询当前执行的上下文来估计一段时间内CPU的使用情况。第7节中讨论的先前研究[243249]已经探讨了与该近似值相关的漏洞。如果恶意访客知道执行burn_credits的间隔那么访客可以精确地测量时间并在计入信用之前产生CPU。这样一来恶意攻击者可能会在不收取费用的情况下使用CPU时间。 此外Xen在内存中维护每个客户的信用信息和其他元数据。逃离虚拟机[15]的访客可能会更改此类数据从而产生不正确的记账以及后来的计费信息。例如通过更快地从善意的受害者客人身上扣除积分受害者的CPU消耗量可以超过其实际消耗量。 SGX Intel SGX是另一组允许在用户空间中创建包围区的新指令集[23]。这些包围区是无法从包围区上下文外部访问的加密内存区域代码和数据。SGX允许安全地进行计算即使操作系统或系统管理程序是恶意的。 SGX旨在确保本地计算的安全I/O指令在飞地内是非法的。相反基于SGX的应用程序必须调用通过OCALL切换到不受信任的操作系统代码以代表飞地执行I/O。因此SGX应用程序无法安全地监控系统上发生的其他活动例如通过共享内存或设备I/O。在本文中我们使用SMM来测量系统范围内的使用情况然后通过SGX飞地应用程序将这些信息报告给最终用户。 威胁模型 在本节中我们将讨论Scotch能够可靠应对的三种类型的攻击1调度程序攻击2资源干扰攻击以及3虚拟机逃逸攻击。这些攻击在表达能力和对系统管理程序的损害方面都有所增加。 Scheduler attacks 我们认为攻击者能够利用虚拟机监控程序调度程序中的漏洞以牺牲受害虚拟机为代价为恶意虚拟机获取系统资源。这种方法允许攻击者阻止受害者访问合法的资源还允许攻击者免费执行昂贵的计算。 图1a显示了非攻击场景即两个良性的CPU绑定虚拟机在一个物理CPU上竞争CPU时间的潜在时间表。guest 1和2都有相同的时间当VMM评估要向哪个VM计费时每个guest 都会被计费其CPU时间的公平份额。然而如图1b中的攻击场景所示当VMM试图评估哪个guest 正在运行时恶意guest 可能会在精确的时间屈服以避免发生这种情况。因此恶意虚拟机可能看起来永远不会占用CPU时间。周等人[49]表明在适当的条件下这种攻击可以消耗绝大多数CPU时间。 Resource interference attacks 资源干扰攻击是通过利用虚拟机多租户进行的。也就是说单个虚拟机管理程序上的所有虚拟机guest 都必须共享底层物理资源例如只有一条系统总线。聪明的攻击者虚拟机可以执行精确计算的工作负载这些工作负载可能会影响其他受害者虚拟机的性能或者只是提高其自身的性能。例如资源释放攻击[35]通过强制受害者虚拟机释放资源供攻击者使用来工作。例如受害者可能正在运行Web服务器在这种情况下攻击者可以向受害者发送大量请求导致其阻塞I/O并为攻击者释放CPU时间。在本文中我们认为攻击者能够以这种方式降低受害者-访客的性能。 VM Escape attacks 虚拟化技术如Xen名义上将客户虚拟机彼此隔离。事实上通过全硬件虚拟化每个客户都相信自己可以控制整个系统。然而漏洞不可避免地会进入管理程序使恶意访客能够逃离虚拟化环境并在管理程序上下文中执行任意代码[1527]。自然此类攻击可能会对云提供商产生毁灭性影响可能会将私人或有价值的数据暴露给攻击者。在本文中我们考虑了一个能够逃离来宾上下文并接管VMM的攻击者【我们假设攻击者在逃离来宾虚拟机环境后可以获得ring 0即内核权限】。 在本文中我们不认为VM会逃脱完全禁用系统的攻击。例如虚拟机转义攻击很可能会危及系统管理程序并停止执行所有guest或者攻击者可能试图禁用SMI处理程序中与远程系统的网络通信。这类拒绝服务DoS攻击通常会在超时时被检测到超出了这项工作的范围。相反我们考虑的是escape攻击即攻击者能够破坏与资源使用相关的数据结构。 架构 Scotch架构的目标是为云计算系统提供准确透明的资源核算。这是通过资源核算代码来完成的该代码测量驻留在系统管理程序上的每个访客在每次任务切换和中断期间消耗的资源。我们利用硬件支持提供不可篡改的会计代码和数据存储以及基于篡改事件的调用。 图2展示了我们的系统架构。我们的方法中有两个或多个系统。首先一个或多个受保护系统运行虚拟机监视器VMM软件该软件能够托管多个善意或恶意的VM访客。每个受保护系统都可靠地收集关于每个访客的资源消耗信息并定期将这些信息报告给SGX飞地。SGX飞地存储受保护系统上虚拟机的所有资源消耗信息以便以恶意访客、操作系统或系统管理程序无法读取或篡改的方式进行进一步处理或分析。在我们实现的Scotch原型中我们考虑了一台带有一个SGX飞地的受保护机器。 Resource Accounting Workflow 图2中描述的受保护机器负责收集关于每个VM客户机的可靠且防篡改的资源消耗信息无论是恶意的还是良性的。为了实现这一目标我们将讨论受保护系统为确保资源会计信息的完整性而采取的五个步骤图2中标记为1-5。 在步骤1中VMM由VM guest通过抢占或超级调用来为I/O请求提供服务。使用硬件支持见第5节我们捕获所有此类事件并执行我们的自定义资源会计代码表示为步骤2。请注意虚拟机客户可能是恶意的也可能是善意的——我们的方法没有区别因为我们只是计算准确和防篡改的资源核算以便善意的客户最终被告知实际消耗的资源。 在上下文切换期间步骤2调用SMI导致我们的记帐代码在SMI处理程序中运行。使用进一步的硬件支持我们可以将某些类型的I/O和事件中断转换为SMI。例如当虚拟机的时间段过去时计时器会引发一个中断告诉VMM更换guest。在Scotch中我们将这种中断改为调用SMI。调用SMI对于我们的系统提供的会计信息的持续可靠性至关重要。 在步骤3中我们的记帐代码记录下一个VM guest将运行的VM以及自上次执行代码即上次上下文切换事件以来经过的时间。这些信息记录在系统内存的一个隔离区域中系统管理程序或来宾上下文无法访问该区域。对于I/O事件我们记录有关正在执行的I/O类型的信息。为了记录CPU时间之外的资源消耗捕获这些I/O事件可以让我们推断guest是在消耗磁盘还是网络。 在步骤4中我们的会计代码完成执行并将控制权转回guest。我们不会将控制权交还给系统管理程序因为受损的系统管理程序可能会更改任务切换事件的结果参见检查时间到使用时间攻击。例如在上下文切换期间系统管理程序调度程序将选择要运行的新guest 。如果在系统管理程序最终确定调度决策之前执行资源记帐那么受损的系统管理程序可能会欺骗下一个将运行的guest执行记帐然后运行不同的guest。相反在Scotch中我们在控制权转移到guest之前调用资源会计代码。在我们的会计代码完成后控制权直接流向正确的guest。 最后步骤5表示偶尔完成的任务。逃到系统管理程序的恶意guest可能会损坏数据。特别是如果这样的攻击者试图隐藏他们消耗的资源他们可能会破坏我们用来测量每个guest消耗资源的时间的系统管理程序上的计时器。在这种情况下我们可以使用SMI处理程序代码步骤2偶尔从受信任的远程服务器请求时间信息参见Spectre[43]。 Cost of Accounting 回想一下我们的方法调用SMI来可靠地执行我们的资源会计代码。SMI的调用和资源核算代码本身都会在系统管理程序上产生开销。这反过来又会影响系统上guest的性能即使没有恶意guest在运行。例如假设一个CPU绑定的工作负载其中所有guest都消耗了他们分配的所有时间量添加我们的资源核算代码本质上增加了完成上下文切换所需的时间。因此部署Scotch意味着接受相关的性能损失以便获得高精度、防篡改的资源会计信息。 正如我们在第6节中所讨论的我们还考虑了一种替代方案通过在不同的时间间隔调用我们的代码来减轻性能影响。理想情况下我们会在每个可能的任务切换和I/O中断事件上调用我们的记帐代码。然而我们可以选择每x个这样的事件调用我们的代码其中x是从1到某个最大间隔的某个随机间隔。从本质上讲每次发生中断或任务切换时我们都会掷硬币决定是否调用我们的资源会计代码。这需要将这样的决策代码添加到系统管理程序中恶意的、转义的guest可能会注意到或更改这些代码。然而我们提出这种方法是为了显著提高不同工作负载的性能。此选项允许云提供商权衡资源核算粒度和开销。 具体的部署和评估见论文 相关工作 在本节中我们讨论了四个主要的相关工作领域1提出帮助云提供商为其客户保证特定服务级别的资源会计技术2基于SMM的系统保护技术3基于SGX的系统保护技巧以及4其他多租户虚拟化研究。 Resource Accounting Chen等人[12]提出了Alibi一种可验证的资源会计系统。它在服务提供商的软件平台下放置了一个参考监视器即嵌套虚拟化。Jin等人[24]提出了另一种可验证的资源核算机制用于CPU和内存分配即使在系统管理程序受损的情况下也是如此。与我们的系统类似他们的方法也使用SMM作为可信的执行环境来计算资源使用情况。然而我们的系统在以下方面与以前的工作不同 1、 通过在每次上下文切换和中断时调用我们的资源核算代码我们可以为每个guest导出一个细粒度的资源使用情况报告。这使得能够快速识别资源使用方面的差异。相比之下Jin等人采用了一种轮询技术该技术需要在得出结论之前运行很长一段时间的分析——如果攻击者试图通过窃取更少的资源来隐身我们的方法可以用于更快地识别此类行为可能在几次上下文切换内具体取决于工作负载。 2、此外调用资源记帐代码的方式保证了我们不会错过瞬态事件——其他使用轮询进行资源审计的技术可能会错过了解其轮询行为的恶意访客。例如Wang等人[38]对基于轮询的SMM系统的逃避攻击即瞬态攻击进行了系统分析。在这种攻击中对手可以通过研究其轮询行为来规避防御机制。使用Scotch如果恶意客户想要CPU时间控制权必须在某个时刻转移到它此时我们的SMI处理程序将被调用。 然而这种保证是以性能为代价的。如第6节所述我们的资源核算代码在每个任务切换和I/O事件中会产生额外的1μs。我们可以根据最终用户的需求进行调整而不是以随机间隔调用我们的代码来分摊1μs的成本。最终1μs的成本对应于最坏情况下0.033%的额外开销这对于大多数应用来说可能足够低。 3、Scotch不需要嵌套的虚拟化并在SMM中保留了一个小型的可信代码库TCB。相比之下Alibi[12]带来了更高的开销大约6%的CPU和700%的I/O其中大部分是由于嵌套虚拟化。此外Alibi集成了KVM代码库显著提高了TCB。 4、最后Scotch能够在存在能够逃离虚拟化环境的恶意guest的情况下报告准确的会计信息。逃脱的访客可能能够更改系统管理程序记录的资源使用信息例如Xen调度器中消耗的信用以隐藏消耗的CPU时间中的异常情况。但是当我们将这些信息存储在SMRAM中时我们可以在不依赖于存储在系统管理程序中的数据结构的情况下导出资源使用情况的准确报告。 除了学术界的工作外还引入了几个用于资源核算的工业系统[43136]。例如亚马逊AWS提供了一种名为CloudWatch[4]的工具这是一种针对AWS云资源的监控服务为云应用程序消耗的资源提供全系统的可见性。 基于SMM的方法 据我们所知只有Jin等人[24]提出了一种基于SMM的云资源会计技术。他们的方法被称为硬件辅助资源会计HRA。这种技术受到其对随机轮询的依赖性的限制。通过对当前正在执行的VCPU以及哪个VM来宾进行采样HRA依赖于大样本量来近似VM运行时间的甘特图。此外HRA依赖于系统管理程序中的数据结构来粗略估计内存消耗。相反通过测量每个上下文切换和中断的资源消耗Scotch可以快速确定准确的资源消耗信息。 此外还有其他几个基于SMM的系统没有直接用于安全报告系统管理程序资源消耗。相反这些系统专注于检测恶意活动[43]向操作系统隐藏击键[44]并保护外围设备[46]。此外HyperCheck[47]和HyperSentry[8]等系统已用于验证正在运行的系统管理程序的完整性。最后MalT[45]提出了一个透明的远程调试框架用于分析能够逃离虚拟机或扎根系统的隐形恶意软件或攻击。除了使用SMM进行防御外攻击者还将其用于恶意目的如实现隐秘的rootkit[1933]。例如美国国家安全局NSA使用SMM构建高级rootkit如用于Dell的Deitybounce和用于HP Proliant服务器的Ironchef[2]。 基于SGX的系统 以前基于SGX的系统如Haven[10]将系统库和库操作系统移植到SGX飞地中从而形成一个大型TCB。Arnatov等人[7]提出了SCONE这是Docker的一种安全容器机制使用SGX保护容器进程免受外部攻击。Hunt等人[21]开发了Ryoan这是一种基于SGX的分布式沙盒使用户能够在数据处理服务中对其数据保密。这两篇论文没有提出减少飞地内计算的攻击面或减少SGX寻呼带来的性能开销的技术。Schuster等人[34]开发了VC3这是一个基于SGX的可信执行环境用于在云中执行MapReduce计算。 其他VM多租户研究 张等人[48]提出了一类多租户云服务器中的内存拒绝服务攻击表明恶意虚拟机可能会在基于存储和基于调度的资源中引起争用从而导致受害虚拟机的性能显著下降。Bates等人[9]讨论了使用侧信道攻击来恢复关于共同驻留的VM guest的私人信息。类似地Inci等人[22]利用侧信道信息从受害者客户那里获取RSA密钥。本文并没有解决这类攻击。相反我们关注的是攻击者以牺牲受害者guest为代价主动尝试为自己消耗更多资源的场景。 未来工作 在第3节中我们讨论了三类攻击其中Scotch可以提供准确的资源会计信息。然而我们也讨论了移植攻击在这种攻击中逃逸的VM guest将恶意代码移动到受害者guest中以便受害者代表恶意guest计算和访问资源。Scotch和类似的会计系统目前无法帮助检测此类攻击也无法自动判断是否存在恶意攻击活动发生。即使有完全准确的资源消耗信息在这种情况下受害者虚拟机也会像正常情况一样消耗资源因此受害者最终会因攻击者发起的工作而被收取费用。我们认为此类攻击需要检测逃逸本身即检测导致guest逃离虚拟化环境的漏洞或利用漏洞或者检测良性guest执行的正常工作负载的差异。未来我们希望将这种检测方法纳入Scotch中。 此外我们将Scotch视为开发一种保护中断和外围I/O的通用方法的种子。目前SGX不支持飞地范围之外的任何形式的安全通信。现有的工作如SGXIO[40]已经调查了与外围设备的可信I/O路径。Scotch可以针对类似的应用程序——通过在SMM中与外围设备交互我们有机会在潜在的恶意设备上验证固件而SGXIO需要信任包含驱动程序的系统管理程序。我们打算探索使用Scotch的SMM和SGX组合来保护I/O。 结语 基于云的虚拟化服务越来越受欢迎再加上管理程序中越来越多的安全漏洞迫切需要准确透明的虚拟机资源核算。我们介绍了Scotch它是一种在基于x86的系统上使用系统管理模式的体系结构以一种不能被受损的guest或系统管理程序篡改的隔离方式执行资源核算和存储信息。通过计算每个任务切换和I/O中断处的资源我们的系统在存在某些类型的攻击时是准确的例如调度程序攻击和资源干扰攻击。Scotch产生的结果与实际情况不到2%同时在指示性工作负载上产生了0.0016%的开销。由于SMRAM是孤立的Scotch甚至可以在虚拟机逃避攻击时提供准确的信息。总体而言Scotch为虚拟机来宾提供了透明、准确的资源核算。
http://www.hkea.cn/news/14427515/

相关文章:

  • 建设项目验收 网站用网站ip做代理服务器
  • 网站做板块地图的办法网站推广的四个阶段包括
  • 网站建设与百度推广怎么在百度发帖
  • 网站推广公司哪家好刚做的网站为什么搜索不到
  • 临沂门户网站制作石家庄网页开发建设
  • 湖南星大建设集团有限公司网站开发公司财务管理制度
  • 有做全棉坯布的网站吗怎样修改wordpress模板
  • 做网站用哪个版本的eclipse软件商城app下载
  • 如何在eclipse上做网站途牛企业网站建设方案
  • 建旅游网站费用明细潮流资讯类网站建设策划
  • 网站什么做南昌网站建设哪家好
  • 网站建设用哪的图片不侵权杨浦企业网站建设
  • 微网站免wordpress 积分下载
  • 网站建设需要集齐哪5份资料织梦网站在服务器上传图片
  • 镇江网站关键字优化上海企业建设网站
  • 网上建设银行网站首页微信商城收费吗
  • 绥芬河建设工程网站哪家网站设计好
  • 电商网站开发设计方案应用软件开发工程师
  • 网站建设方案概述浙江大洋建设集团有限公司网站
  • 阿里云服务器怎么部署网站wordpress 手机 自建站
  • 2018做网站百度推广竞价排名技巧
  • 做app模板下载网站杭州自助建站网站
  • 个人主页界面网站wordpress应用教程 pdf
  • 在线做ppt模板下载网站河北制作网站模板建站公司
  • 网站域名怎么购买大学生求职简历模板免费下载
  • 免费行情网站下载大全网络推广方案的内容
  • 金融网站策划自己怎么创建免费网站吗
  • 企业做网站好处美食网站开发现状
  • phpmysql网站开发入门与提高磁力蜘蛛搜索引擎
  • 淘宝客网站建站教程装修技术培训去哪里学